ARPスプーフィングしてNintendo Switchの通信を覗いてみた

Nintendo Switchある対戦ゲームで、ふと、どのような通信が行われているか気になったので、Wiresharkで通信を覗いてみました。

まだ、Wiresharkは使いこなせていないので、今回はパケットが来ていることを確認するところまでやります。

パケットキャプチャするための機材は持ち合わせていなかったので、ARPスプーフィングでノートPCから通信の内容を覗くことにしました。

事前準備

参考

こちらの記事を参考にさせていただきました https://www.kdryblog.com/arp-spoofing/#toc12

設定・インストール(PC)

ufwでポートを制限していたので、一時的に止めます。

sudo systemctl stop ufw

カーネルパラメータ net.ipv4.ip_forward を有効にします。

sudo sysctl -w net.ipv4.ip_forward=1

arpspoofコマンドをインストールします。(dsniffパッケージに含まれています)

sudo apt install dsniff

設定・インストール(Nintendo Switch)

IPアドレスが変わらないように固定にします。

ARPスプーフィングを行う

Nintendo SwitchIPアドレス192.168.100.200 とし、ルータのIPアドレス192.168.100.254 をします。

Nintendo Switchに向けて

sudo arpspoof -i eth0 -t 192.168.100.200 192.168.100.254

ルータに向けて

sudo arpspoof -i eth0 -t 192.168.100.254 192.168.100.200

実行すると、こんな感じで、継続的にターゲットへ偽の情報を送り続けます。

XX:XX:XX:XX:XX:XX XX:XX:XX:XX:XX:XX 0806 42: arp reply 192.168.100.254 is-at YY:YY:YY:YY:YY:YY
XX:XX:XX:XX:XX:XX XX:XX:XX:XX:XX:XX 0806 42: arp reply 192.168.100.254 is-at YY:YY:YY:YY:YY:YY
XX:XX:XX:XX:XX:XX XX:XX:XX:XX:XX:XX 0806 42: arp reply 192.168.100.254 is-at YY:YY:YY:YY:YY:YY
XX:XX:XX:XX:XX:XX XX:XX:XX:XX:XX:XX 0806 42: arp reply 192.168.100.254 is-at YY:YY:YY:YY:YY:YY
XX:XX:XX:XX:XX:XX XX:XX:XX:XX:XX:XX 0806 42: arp reply 192.168.100.254 is-at YY:YY:YY:YY:YY:YY

Wiresharkで確認する

Nintendo Switchで実際にゲームをしてみて、パケットが送信されていることを確認します。

f:id:takapi86:20210508184954p:plain

確認したゲームでは、対戦時P2Pでそれぞれ対戦相手のSwitchとUDPで直接やりとりしているようですね。(ルーターのNAT超えをしている模様)

まとめ

このような形で、簡単に通信Nintendo Switch通信を覗くことができました。 実際にやってみて、改めて暗号化された通信の重要性を感じました・・・ではでは。