iPhone/touchでMACアドレスを偽装できる「Stealth MAC」
iPhone/touchは、「脱獄」を行えばMACアドレスの手動設定、つまり「偽装」が可能になる。「Stealth MAC」というツールでMACアドレスを指定するのだ。少し操作にクセがあるが、WinSCPを使ったファイル転送を行ったことがある人なら大丈夫。
MACアドレスとは何なのか……という話は割愛するが、ネットワーク管理人は、LANに接続してきた端末のMACアドレスを記録することができる。そして、MACアドレスは接続機器のベンダー(この場合Apple)ごとにレンジが決まっている。つまり、出先の、適当な無線LANからiPhone/touchで何か「小魚食べる」的な書き込みを行うと、まずIPアドレスベースでその店なりの管理者に連絡がいき、店ルーターのログから「MACアドレスを見る限り、書き込んだのはAppleの接続機器だ」→「その時間にtouchを弄ってた人を監視カメラから探そう」、という流れで個人が特定されるのだ。PC/PSPからの接続なら、専用ツールなどを使うことでMACアドレスを偽装することができる……というのはネトラン今月号に載っている話だが、iPhone/iPod touchでも、脱獄を行っていれば同様の偽装は可能だ。
まず、WinSCPでiPhone/touchにアクセスできる環境を整えておく。2.0.1ユーザーは「iPhone/touch2.0.1を脱獄できる「WinPwn2.0.0.4」」を参考に脱獄を行い、CydiaからOpenSSHをインストール。ここらへんの流れはネトラン過去号などを参考に。
さらにCydiaから「Stealth MAC」をインストール(公式サイト)。ホーム画面などに一切変化が起こらないが問題ない。
WinSCPでiPhone/touchに接続し、「/etc/」内の「stealthmac」ファイルをPC上に転送。メモ帳で開き、名乗りたいMACアドレスを書き込む。保存しiPhone/touch内へ上書き転送。分かる人は、このファイルをiPhone/touch内で編集しても良い。
そもそもどんなMACアドレスを名乗れば良いのか分からない、という人は「IEEE Registration Authority - IEEE OUI and Company_id Assignments」を使おう。例えば「Nintendo」で検索した結果は、Nintendoが押さえているMACアドレスレンジ。レンジ内のアドレスを名乗れば、ネットラーク管理人には「DSからのアクセスだ」というように見える。
続いて「/usr/bin/」の「smac.sh」を実行する。このファイルが実行されることによりMACアドレスの書き換え(&再接続)が行われるのだ。実行はどんな方法でも良いので、知識がある人ならiPhone/touch内から実行したりすると良い。iPhone/touchの起動時にもこのファイルが自動実行されるので、よく分からない人は一度電源を落として再起動。
ルーターのログ機能(ほとんどのルーターに、自分のLANにアクセスしてきた機器のMACアドレスを記録する機能が搭載されており、管理画面で確認できるはず)などを使ってMACアドレスの確認を行おう。自分が設定したMACアドレスへの詐称に成功しているはずだ。
また、iPhone/touchの「設定」「一般」「情報」内の記載は変わらない模様だ。……「偽装」ということを考えると、むしろその方が都合がよい気はするが詳細不明。
執筆:tokix (tokix.net)