投稿日:2004年02月10日 作成鷹の巣

No.14602 IPアドレス偽造とは?



IPアドレス偽造とは?

No.14602 投稿時間:2004年02月10日(Tue) 01:14 投稿者名:bind8 URL:

宜しくお願い致します。RH9を使用しています。

「warning: /etc/hosts.allow, line 11: can't verify hostname: getaddrinfo(ddd-ccc-bb-aa.hoge.com, AF_INET) failed」
というログ(11行目は"in.telnetd: 192.168.0. 192.168.1."と記述)は
「IP偽造によるもの。通常、接続してきたときクライアントの逆引きと正引きを行なった後、/etc/hosts.allowの評価を行うが、逆引きと正引きを行った時点で、正引き情報と一致しないので拒否されている。このようなアクセスがあると、つまり逆引きに失敗するのでこの様な warning が出る。」
の為に発生するらしいですが、IP偽造とは例えば
クラッカーがサーバの/etc/hosts.allowにhoge.foo.co.jpが記載されて許可されているという情報を得た場合にはhoge.foo.co.jpのIPアドレスはxxx.xxx.xxx.xxxなのだがクラッカーのマシンは
yyy.yyy.yyy.yyyなのでアクセス開始パケットのパケット送信元のIPアドレスを
xxx.xxx.xxx.xxxと書換えててサーバにアクセスするという事なのでしょうか?

その場合、tcpwrapperはそのパケットの送信元であるxxx.xxx.xxx.xxxを逆引きしてhoge.foo.co.jp
となるし、勿論、hoge.foo.co.jpの正引き結果もxxx.xxx.xxx.xxxとなるので上記の警告は出ないのでは?

うーん、IP偽造とは何なのでしょうか?
(調べてみても具体的にどういう事かわかりませんで)


IP Spoofingの参考URL。

No.14604 投稿時間:2004年02月10日(Tue) 05:31 投稿者名:たつみ URL:

> 「warning: /etc/hosts.allow, line 11: can't verify hostname: getaddrinfo(ddd-ccc-bb-aa.hoge.com, AF_INET) failed」
> というログ(11行目は"in.telnetd: 192.168.0. 192.168.1."と記述)は
> 「IP偽造でによるもの。通常、接続してきたときクライアントの逆引きと正引きを行なった後、/etc/hosts.allowの評価を行うが、逆引きと正引きを行った時点で、正引き情報と一致しないので拒否されている。このようなアクセスがあると、つまり逆引きに失敗するのでこの様な warning が出る。」
> の為に発生するらしいですが、

IP Spoofingについては
http://www.ipa.go.jp/security/fy12/contents/crack/soho/soho/chap1/ipspoof.html
が分かり易いとおもいます。

> クラッカーがサーバの/etc/hosts.allowにhoge.foo.co.jpが記載されて許可されているという情報を得た場合には
そこまで手をかけず、逆引きについて考慮しないで試行するのでボロがでます。


外部からあたかもプライベートアドレスで接続してきたかのようにみせる行為です。

No.14606 投稿時間:2004年02月10日(Tue) 09:12 投稿者名:stranger URL:

> 宜しくお願い致します。RH9を使用しています。
> > 「warning: /etc/hosts.allow, line 11: can't verify hostname: getaddrinfo(ddd-ccc-bb-aa.hoge.com, AF_INET) failed」
> というログ(11行目は"in.telnetd: 192.168.0. 192.168.1."と記述)は
> 「IP偽造でによるもの。通常、接続してきたときクライアントの逆引きと正引きを行なった後、/etc/hosts.allowの評価を行うが、逆引きと正引きを行った時点で、正引き情報と一致しないので拒否されている。このようなアクセスがあると、つまり逆引きに失敗するのでこの様な warning が出る。」
> の為に発生するらしいですが、IP偽造とは例えば

サーバにたいしてローカル接続はほとんど許可されていると思われるので
外部からあたかもプライベートアドレスで接続してきたかのようにみせる行為です
ローカルだけに接続を限定しているのならば iptablesまたはipchainsでipスプーフィングをREJECTできるので
そういう設定をすることです


クラッカーは送信元をプライベートアドレスとしてアクセスしてきているのですね。

No.14692 投稿時間:2004年02月18日(Wed) 02:27 投稿者名:bind8 URL:

ご回答ありがとうございます。

> IP Spoofingについては
>
http://www.ipa.go.jp/security/fy12/contents/crack/soho/soho/chap1/ipspoof.ht
ml
> が分かり易いとおもいます。
ありがとうございます。

以下『』抜粋です。
『攻撃側は、まず攻撃する対象となるホストに対してダミーの接続を行います。これによって初期シーケンス番号を対象となるホストが返すため、 攻撃側は初期シーケンス番号を知ることができます。』
即ち、最初のパケットなので0番なのですよね(これは容易に分かりますね)。

グローバルシーケンス番号が使用される場合には容易に知りえることが出来ないのですね。

『「次に、偽装に使用されるホストが稼動しているかを調べます。 ただし、必ずしも攻撃側からは確認できるとは限りません。 もし稼動していた場合、これを止める必要があります。 なぜなら、攻撃する側が偽装しようとしているIPアドレスの本物のパケットが実際に流れると攻撃は成立しません。』
これは被偽装ホストに感づかれてしまうからですかね?
(クラッカーは攻撃用パケットの送信元として非偽造ホストのIPアドレスを使用したいのですよね)

『しかし、このパケットに対する応答は攻撃側には届きません。 なぜなら、対象となるホストのIPアドレスが設定され、 シーケンス番号も正しく設定されているからです。 よって、応答のパケットは偽装に使用されたホストの方に行きます。』
やはり、被偽装ホストは停止させないと感づかれてしまうんですね。

『応答のパケットが届かなくとも、攻撃側は次に送信すべきパケットは判っています。 これで偽装が完了しました。対象となるホストに侵入し、攻撃側のホストに対して信頼するよう設定する等を行い、 実際の攻撃を始めるわけです。』
「信頼するよう設定」という作業も応答無しで行なえるんですね(す、凄い)。
これらの作業は具体的にはクラッカーのホストのIPアドレスも許可するようにアクセス制御ファイルを操作するんですかね?
(それができれば今後の応答パケットもクラッカーのホストに届き、いたずら(ログの改竄等)し易くなる(?)。)

>> クラッカーがサーバの/etc/hosts.allowにhoge.foo.co.jpが記載されて許可されて
> いるという情報を得た場合には
> そこまで手をかけず、逆引きについて考慮しないで試行するのでボロがでます。
ここの理解が自信有りません。
クラッカーは送信元をプライベートアドレスとしてアクセスしてきているのですね。
クラッカーはそのプラアドの逆引き結果は知り得ないのですよね。
という事は攻撃用パケットには送信元アドレス(この場合はプラアド)の他に"ddd-ccc-bb-aa.hoge.com"という文字列も
(何処かのデータ層(?))格納されて被攻撃ホストのtcpwrapperはこの"ddd-ccc-bb-aa.hoge.com"を正引きしてみて送信元にプラアドと一致するか照合してみて一致しなかったので
「warning: /etc/hosts.allow, line 11: can't verify hostname: getaddrinfo(ddd-ccc-bb-aa.hoge.com, AF_INET) failed」
というログを吐いたのですかね。

> サーバにたいしてローカル接続はほとんど許可されていると思われるので
> 外部からあたかもプライベートアドレスで接続してきたかのようにみせる行為です
> ローカルだけに接続を限定しているのならば iptablesまたはipchainsでipスプー
> フィングをREJECTできるので
> そういう設定をすることです
/sbin/iptables -A INPUT -s 10.0.0.0/8 -i ppp0 -j DROP
/sbin/iptables -A INPUT -s 172.16.0.0/12 -i ppp0 -j DROP
/sbin/iptables -A INPUT -s 192.168.0.0/16 -i ppp0 -j DROP
/sbin/iptables -A OUTPUT -d 10.0.0.0/8 -o ppp0 -j DROP
/sbin/iptables -A OUTPUT -d 172.16.0.0/12 -o ppp0 -j DROP
/sbin/iptables -A OUTPUT -d 192.168.0.0/16 -o ppp0 -j DROP
とは以前から設定していたのですが
tcpwrapper迄パケットが届いてしまったという事はこの設定では不十分だったんですかね。


ipスプーフィングに限定しない方が良いと思う。

No.14699 投稿時間:2004年02月18日(Wed) 11:09 投稿者名:stranger URL:

> ご回答ありがとうございます。
> > > IP Spoofingについては
> >
> http://www.ipa.go.jp/security/fy12/contents/crack/soho/soho/chap1/ipspoof.ht
> ml
> > が分かり易いとおもいます。
> ありがとうございます。

> /sbin/iptables -A INPUT -s 10.0.0.0/8 -i ppp0 -j DROP
> /sbin/iptables -A INPUT -s 172.16.0.0/12 -i ppp0 -j DROP
> /sbin/iptables -A INPUT -s 192.168.0.0/16 -i ppp0 -j DROP
> /sbin/iptables -A OUTPUT -d 10.0.0.0/8 -o ppp0 -j DROP
> /sbin/iptables -A OUTPUT -d 172.16.0.0/12 -o ppp0 -j DROP
> /sbin/iptables -A OUTPUT -d 192.168.0.0/16 -o ppp0 -j DROP
> とは以前から設定していたのですが
> tcpwrapper迄パケットが届いてしまったという事はこの設定では不十分だったんですかね。

/sbin/iptables -N ip-spoofing
/sbin/iptables -A ip-spoofing -j LOG --log-level info --log-prefix "iptables ip-spoofing:"
/sbin/iptables -A ip-spoofing -j DROP

/sbin/iptables -A INPUT -s 10.0.0.0/8 -i ppp0 -j ip-spoofing
/sbin/iptables -A INPUT -s 127.0.0.0/8 -i ppp0 -j ip-spoofing
/sbin/iptables -A INPUT -s 172.16.0.0/12 -i ppp0 -j ip-spoofing
/sbin/iptables -A INPUT -s 169.254.0.0/16 -i ppp0 -j ip-spoofing
/sbin/iptables -A INPUT -s 192.168.0.0/16 -i ppp0 -j ip-spoofing

のようにすればmessagesにログとして残ります
何かとは断定できませんが、ipスプーフィングに限定しない方が良いと思う


|目次|掲示板|過去ログ目次|▲頁先頭|