web-dev-qa-db-ja.com

dnsspoofはスプーフィングを行いません(実際のDNSパケットを要求して転送します)

dnsspoofを使用しようとしましたが、期待どおりに機能しませんでした。これらは私が従ったステップです:

  1. カーネルのIP転送を1に設定します
  2. arpspoof -i eth0 -t 192.168.1.39 -r 192.168.1.1およびarpspoof -i eth0 -t 192.168.1.1 -r 192.168.1.39arp -aで確認し、機能する
  3. 137.222.0.38 *.hello.comでfile.txtを作成します
  4. dnsspoof -i eth0 -f file.txt

被害者のコンピュータ192.168.1.39からwww.hello.comにアクセスすると、実際のサイトにリダイレクトされます。 dnsspoofからの出力は次のとおりです。

dnsspoof: listening on eth0 [udp dst port 53 and not src 192.168.1.35]
192.168.1.39.1113 > 8.8.8.8.53:  3864+ A? www.hello.com
192.168.1.39.1113 > 8.8.8.8.53:  3864+ A? www.hello.com

私はWiresharkを確認しましたが、被害者が同じIPからルーターMAC(1番目)と攻撃者MAC(2番目)で応答を受信して​​いるようです。これは理論的には必要ないはずですが、DNSをフラッシュして、新しいリクエストを試しました。私の質問は:

1)なぜこれが機能しないのですか? Someone は、ルーターからのパケットをブロックするためにiptablesを使用することを提案しましたが、dnsspoofがそれ自体ではブロックしないこと、そして私がチェックしたチュートリアルはどれも奇妙なようです( 12 、、 4 )はこのステップを必要とします。また、これを正しく機能させるための正しいiptablesルールを取得できません。

2)多くのチュートリアルでは、dnsspoofなしでarpspoofを使用しているようです。後者は本当に必要ですか? DNSスプーフィングが「偽装」されていない別のコンピューターで(偶然に)機能したように見えたためです。

3)dnsspoofはどのように機能しますか? LAN全体でDNS要求をリッスンし、解決策を送り返すだけですか?


[〜#〜]編集[〜#〜]

iptablesコマンドiptables -D FORWARD --match string --algo kmp --hex-string '|68 65 6c 6c 6f|' --jump DROPを使用すると、ルーターは照会されず、スプーフィングされたDNSのみが送信されます。ただし、被害者のブラウザは永久にロードされたままで、最終的にはサイトにアクセスできない(?)と表示されます。 iptablesコマンドを使用しないと、リクエストが次のようになるのがわかります。

victim --> attacker --> routerと回答:router --> attacker --> victim

そしてこの直後に、攻撃者は偽装されたDNSを被害者に2回送信します。繰り返しますが、私はまだこの動作について混乱しており、3つの質問のいずれにもまだ答えていません。 (2)の答えはdnsspoofがネットワーク全体を偽装したことだと思いますが、偽造されたパケットが正当な前に被害者に到達することを保証できる前にarpspoofを実行した場合のみ1。しかし、私の場合、請願書が転送されるため、これは機能しません。


[〜#〜]編集[〜#〜]

これは、別のネットワーク(10.10.10.0)を介した同じ例のネットワークキャプチャです。正当なDNSが最初に転送され、その後、なりすましのDNSが転送されます。この例では、両方の応答の真ん中に他の請願書がありましたが、かなり頻繁に次々にパケットを受け取ります。

network capture

10
user1156544

インストールしてみてくださいlibpcap0.8およびlibpcap-dev。バグがあり、これで修正されたはずですが、私にはうまくいきませんでした。 Linuxを導入したタブレットでkaliを使用していますが、多くの問題があります。

1
Tom Atix

私は親密ではありませんが:

arpspoofは、ルーター(DNSリゾルバーであるか、DNSリゾルバーへのルーティングに使用される)への被害者のトラフィックを攻撃者のPC経由にします。

dnsspoofは、そのトラフィックと医師の応答を必要に応じて傍受します。

犠牲者が依然としてルータからの応答を受信して​​いる場合は、arpspoofが完全に機能していないことを示しています。

0
CGretski