野良apだと思って接続したら罠だった! 疑似apを …61...
TRANSCRIPT
58
無線LANの攻撃ツールは、積極的にAPをアタックするだけではない。偽のAPを構築し、そこにターゲットが接続するのを待つという受け身の攻撃もある。
●凶悪な無線 LANツール まず、最初に紹介するのは Kmsapng だ。APだと思って飛びついてきたアホな端末の脆弱性を勝手にがっつり検査してあげる、過剰に親切なAP を作成するツールだ。リモートシェルを送り込んで接続してあげたりするのはちょっとやりすぎのような気がしなくはないが、そこは優しさだと思うことにしたい。 ツールの動作としては、AP で待ち受けて、そこに接続したユーザーに IP アドレスを発行、そのIP アドレスを使って接続した端末の IP アドレスに向けて、Metasploit を使って脆弱性検査を行うという、単純な流れになっている。悲しいことに
ユーザーはインターネット接続もできず攻撃されるがままという、何 1 ついいことのない AP だ。
●利用できるデバイスと使い方 Kmsapng で AP が 作成で きるアダプターは、基本的に Airbase-ng が使用できる無線 LAN アダプターだ。Aircrack-ng が動作するなら動作するような気がするが、ZyDAS 1211 の USB アダプターでは動作しなかった。 なお、ここでは NEC の Aterm WL54AG(Atheros AR5001X)で動作を確認している。 ま ず、メニ ュー か ら「Backtrack」→「Radio Net-work Analysis」→「80211」→「Misc(All でも可)」→「Kmsapng」を選ぶと Konsole が開く。
文●山本洋介山
■■■■■接続したユーザーを解析する「Kmsapng」■■■■■
疑似APを作って接続者を攻撃
野良 APだと思って接続したら罠だった!
最近ではどこでもネットにつながることが当たり前になって、たとえ外出中であっても、ホットスポットを使ったり、どこでも Wi-Fi や携帯電話の3G 回線を使ってのローミングなど、何とかしてネットに接続している人も多くなっている。 そこまでのヘビーユーザーでなくても、ちょっとカフェなどで休憩したとき、Yahoo! が提供している無料 AP を使って、メールチェックや Twitterなどにアクセスする人も多い。悪人であれば WEPや WPA のパスワードを解析してまでネットに接続している人もいる(犯罪なのでもちろんやっちゃダメだ)。 このようにいつでもどこでもインターネットにつながっている、古臭い言葉だが、「ユビキタス」
社会がやってきているのかもしれない。 そんなネット依存症の人たちのために、無料でインターネット接続できる無線 LAN AP を用意してあげる人たちもいる。もちろん優しさからだけじゃなく、中にはいわゆる偽 AP とか無線ハニーポットとかいわれるものがある。甘い蜜には裏があるのだ。 ここからは BackTrack に収録された、そんな危険な AP を作成するツールを紹介する。 もちろん、悪用は厳禁だが、これについては接続する方も悪いような気がするので、法的にはどうなんだかわからないが、とりあえず実験用として自分だけで楽しんでくれたまえ。
59
# ./kmsapng.sh
とすると、ヘルプがずらずらっと表示される。オプションがいくつかあるが、設定する必要のあるオプションは -m と -i だ。 -m はモード で、km、kmf、kma、kmaf から選 べるが、km にしておけばいいだろう。やりたい攻撃を制限する場合は kmf を選ぶ。kma、kmaf については Digininja のドライバーを使うというオプションで、BTでは使用できない。 -i は AP として使 用するデバイスを設 定する。普通は wlan0 を設定する。 その他のオプションとしては
-f 接続可能な MAC アドレスを指定する-s AP の SSID を 設 定 する( デ フォルトは Free
Wifi)-r Metasploit のリソーススクリプトを指定-d DHCP サーバーのコンフィグファイル(dhcpd.
conf)を指定(ない場合は /tmp/dhcpd.confが作成され、それが使用される)
-l ログファイルのフォルダを指定する(デフォルトは /root/)
がある。 ここでは最低限のオプションで起動してみることにする。SSID 名くらいは変えてもいいかもしれない。なお、-i で指定するデバイス名を wlan1 な
ど wlan0 以外にした場合、AP の作成に失敗するケースがあったので、できれば wlan0 にしておいた方がいいだろう。
# ./kmsapng.sh -m km -i wlan0
とコンソールに入力すると、MAC アドレスが変更され、AP と DHCP サーバーが起動する。AP 名は
Kmsapng の攻撃の流れ
図 1 メニューの 80211 の項目から「Kmsapng」を選んでコンソール画面を立ち上げる
Kmsapngが動いている偽AP ターゲット
①待ち受け ②無線LANでAPに接続
③Metasploitを使った 脆弱性検査
起 動 の 確 認 が で き た 無 線 LAN アダ プター「NEC Aterm WL54AG」。チップセットは Atheros AR5001X となっている。6000 円前後で販売されている
60
「Free Wifi」だ。 そして、Metasploit が起 動し、DNSサーバーと Web サーバーをはじめ、たくさん の脆 弱 性 検 査 に使 わ れるサーバーやツールがロードされる。これで、ターゲットを待つことになる(図 2)。 これで偽 AP ができあがったわけだが、さすがに犯罪者のようにターゲットに接続してもらうのを待つわけにはいかない。そこで、自分でやられ役クライアントマシンとしてインストールしたてのWindowsXP(無印)マシンを用意して、接続してみることにしてみた。 脆弱性検査によって何かしらの影響があるかもしれないので、手元で使っているマシンでは接続しない方がいいだろう。筆者は Windows マシンで接続してみたが、他の OS や、iPhone などのスマートフォンからでも接続することはもちろん可能だ。
●クライアントから 接続してみよう クライアント側は、まず AP を検索し、
「Free Wifi」というSSID を見つけて、そこに接続する(図 3)。パスワードも設定されていないので、簡単に接続できるだろう。すると、10.0.0.100 〜255 のいずれかの IP アドレスが配布されて、無線LANネットワークに参加することになる。 まずは Web ブラウザーから試してみることにする。種別は何でもいいがブラウザーを立ち上げる。するといつものようにスタートページに接続に行くが(空白に設定している人はどこかに接続する必要がある)、いつもと違いブラウザーには「Loading」という文字が表示される。「Hotel Guest Wireless Service」というタイトルになっているので、ホットスポットやホテルからインターネット接続した際に表示されるようなイメージなのだろう(図 4)。 クライアントとして、やることはこれで終了だ。特に画面も変わることなく、
図 2 Kmsapng を起動したところ。Metasploit の大量のサーバーが立ち上がり、接続を待っている
図 3 Kmsapng が起動したら、Free Wifi という AP に接続する
61
他にできることはない。ここからはインターネットに接続することもできないので、もし実際に一般ユーザーが接続してしまった場合は、間違えたと気づき、接続を止めて他の AP を探したりすることになるだろう。 だがしかし、これだけでしっかりと攻撃が行われている。仕組みは以下のとおりだ。
● Kmsapng の恐ろしさ DHCP サーバーが配布する DNS サーバー(kmsapng が実行されているマシン)はすべてのドメイン名の検索に対し、kmsapng のアドレス(10.0.0.1)を返す。そして、クライアントが 接 続する Webサーバー(10.0.0.1)は、すべてのページへのアクセスに対し、/ads という、攻撃用ページに誘導するように、HTTP リダイレクトを行う。 この ads という ペー ジ で は IFRAME に よって ブ ラ ウ ザ ー は 自 動 的 に Yahoo! や Google、Facebook や Twitter といったサイトにアクセスする。フォームに入力するパスワードを記憶させていたり、毎回のログインの手間を省くように永続的 Cookie を持っていたりすると、それが奪われてしまうのだ。そして、盗まれた Cookie やパスワードを使われることで、ユーザーのアカウントが盗まれるということになる。 それだけではない。同時にブラウザーの脆弱性攻撃も行われる。セキュリティホールを持つブラウザーを使用していた場合はシェルスクリプトが送り込まれたりもするようだが、手元の環境では対応する脆弱性がなかったようで再現できなかった。 このようにブラウザーでアクセスするだけで危険きわまりない環境だが、新しいブラウザーだとアクセス中に証明書がおかしいなど指摘されるので、実際にはセキュリティに注意深い人には途中で気づかれるかもしれない。ただ、そんな注意深い奴が偽 AP を使ってインターネットにアクセスしようとは思わないだろうが。 また、Web 以 外 にも FTP、POP3、IMAP4 については認証するだけの偽サーバーが立ち上がっている。Windows 共有ファイルへのアクセスに
対し、SMBRelay が行えるマシンに対しては攻撃が行われる。もちろん NTLM ハッシュもキャプチャーされる。 当然すべてのサーバーに対する認証はすべてエラーになるので、メールの送受信やファイルのやり取りができるわけもなく、そのうえにパスワードのやり取りはすべてキャプチャーされているため、ユーザー名とパスワードはすべて奪われてしまうだけでなく、運が悪ければ権限まで奪われてしまうのだ。 公衆 AP を使って職場のメールの送受信や共有ファイルへのアクセスをするような人は少ないだろうが、うっかりアクセスしてしまうと、このやり取りがキャプチャーされるということになっている。
●データの閲覧とコマンドの実行 次に取得したデータを表示してみたり、Meta-sploit のコマンドを使用してみたい。 Kmsapng を起 動したコンソールには、現在の偽 AP の状態が逐次表示されているが、受け取ったデータを見るためにはこのコンソール上でEnter キーを叩く。すると Metasploit のコマンドラインが表示される。 まずは、受け取った Cookie データを見てみることにしよう。
msf auxiliary(http) > db _ notes
図 4 ブラウザーから接続すると「Loading」と画面が表示され、さまざまなサイトに自動的にアクセスすることになる
62
とコマンドを打ち込むと、ゲットした Cookie データが表示される
(図 5)。セッションキーやパスワードが含まれていると、セッションハイジャックが可能だ。 ファイルについてはデフォルトで は /root/ フ ォ ル ダ に karma-Jul-24-10-115303.db の よ う なsqlite3 のデータベースとして保存されている。 FTP や POP3 のパスワードなどのキャプチャーデータについては/root/kms-Jul-24-10-115303.cap のように、pcap 形式で保存されているので、Wireshark などで見るといいだろう。
●脆弱性攻撃で やられマシンに接続する 次に脆弱性があるマシンに対し、リモートシェル接続を行う様子を実験してみることにする。ここで使ったのは古いWindowsXP マシンに対しての SMBRelay 攻撃によるリモートシェルだ。 まず、やられマシンは偽 AP に接 続し、エクスプ ロ ー ラを 開 き、¥¥192.168.1.10¥ の ようなWindows 共有ファイルへのアクセスを行う(図 6)。
すると、エクスプローラにはユーザー名とパスワードを入力するダイアログが表示されるが、その間に偽 AP が自動的にやられマシンにリモートシェルを埋め込み、AP からやられマシンに対しリモートシェル接続を行う。 Kmsapng を実行しているマシンのコンソール
図 6 SMBRelay の脆弱性を持つ Windows クライアントから Windows 共有ファイルにアクセスする
図 7 Metasploit によって接続したクライアントマシンにリモートシェルが埋め込まれる
図 5 db_notes に取得した Cookie が書き込まれている
63
図 8 10.0.0.1 から 10.0.0.100 へ接続されている
図 9 Windows のコマンドラインが開く
図 10 Kmsapng で埋め込んだリモートシェルからユーザーを追加したり、リモートデスクトップ接続を行うことだって可能だ
にもこの様子が表示されている(図 7)。 無事にセッションが確立されたことを確かめるには、metasploit のコマンドラインから
msf auxiliary(http) > sessions
とすると、10.0.0.1(偽 AP マシン)から10.0.0.100 にコネクションが張られていることがわかる(図 8)。 次に、
msf auxiliary(http) > sessions -i 1
とすれば、Windows のコマンドラインが開く。hostname コマンドで確認すると、接続したマシンだということがわかるだろう(図 9)。シェルコードが送り込まれて接続したマシンをコマンドラインで操作できる。運がよければユーザーを追加したりファイルをダウンロードすることも可能だ
(図 10)。 このように、脆弱性を持った PC で偽AP に接続してしまうと、自動的にマシンが乗っ取られてしまうのだ。また、db_nmap や db_autopwn といったコマンドを使って、アクティブに脆弱性検査を行うことも可能だ。
msf auxiliary(http) > db _ autopwn -t
また、ターゲットの IP アドレスがわかっているので、Metasploit の GUI など BT4のツールを使った攻撃ももちろんできるが、それは本稿の趣旨とは少し外れてしまうので、各自で試してみていただきたい。 このように Kmsapng は思ったよりも派手に攻撃を仕掛けるので、軽い気持ちでAPを公開するのはとても危険だ。見つかったらいろいろな意味で大変な思いをすると思われるので、本当に自身で実験するだけにしていただきたい。AP を使っているユーザーは基本的にはご近所さんなのだ。
64
■■■■■通信データを盗聴する「Mitmap」■■■■■
●偽APと通信させて、データを 全部いただく 次にもう 1 つの偽 AP として、Mitmap を使ってみることにする。 Mitmap は、Man in the Middle AP を 省 略したと思われる名前のとおり、クライアントにこのAP を経由してインターネットに接続してもらい、その間に入ってやり取りされているパケットを全部キャプチャーしてしまおうというツールだ。 やり取りの流れについては下の図を参照していただければと思うが、Mitmap を経由してインターネットに接続するのだから、すべてのデータは(暗号化されていなければ)Mitmap の手の中にあるというわけだ。 Kmsapng と違い、AP に接続したユーザーは、それなりに普通にインターネットに接続し、通信ができる。もし隣の家の AP がこれだったら、プロバイダーの契約を打ち切って、ずっと使わせていただこうかという気になるかもしれない便利さだ。こんなに便利なら、この AP を長時間使ってしまおうということになる。これが大きな罠なのだ。 使っているユーザーは、知らず知らずのうちに、メールのパスワードや、Web でのやり取りで使うセッション ID など、大切なデータをこの偽 AP に渡してしまっている危険性が高い。プロバイダーの料金を節約しようと思ったのに、それ以上の対
価を払うことになるかもしれない。 このように、実はインターネット接続できないうえに、攻撃の痕跡が残りやすい Kmsapng よりも、Mitmap の方がタチが悪いツールなのかもしれない。家の近所にあるからといって、これを自分の AP として使ったユーザーには目も当てられない結果が待ち受けているだろう。もちろん、よい子のみんなは実験目的で使うだけで、でっかいアンテナとか挿して外に向けて公開したりなんかしちゃいけないぞ。
●使用したデバイス 設置する前から夢がふくらむ Mitmap だが、まずは使用する環境を整えよう。 PC は BackTrack が動いていると思うのでこのままでよい。あとは無線 LAN アダプターと、インターネットに接続している環境が必要となる。 無線 LAN アダプターは基本的に Aircrack-ngが使用できる無線 LAN アダプターなら動作すると思われるが、例外的に ZyDAS 1211 の USB アダプターでは動作しなかった。なお、ここではNEC の Aterm WL54AG(Atheros AR5001X) で動作を確認している。 また、インターネット接続している側は、接続できていれば基本的に何でも問題ないと思われるが、ここでは LAN 内のクライアントとしてローカル IP アドレスを DHCP サーバーから取得してい
Mitmap のデータ盗聴の流れ
Mitmapが動いている偽AP
ターゲット
①待ち受け②無線LANでAPに接続
④ターゲットの データを盗聴
③AP経由で インターネット接続
インターネット
65
る。 また当たり前だが、Mitmapに接続するためのクライアントマシンとして、もう 1 台、無線LAN 接 続できるデバイスが必要だ。なければ携帯でも PSPでも Wi-Fi 接 続できれば無問題だろう。それもなければ友達に泣きついて一緒に実験してみよう。
● Mitmap を使ってみる では、早速 Mitmap を使って偽 AP を構築してみることにする。メニューから「Backtrack」→「Radio Network Analysis」→「Misc(All で も 可 )」 →
「Mitmap」 を 選 ぶ と Konsoleが開くので、ここからコマンドを実行する(図 1)。 スクリプトを 読 んで み るとわ か る の だ が、Kmsapng とは共通の部分も多く、基本的な使い方は Kmsapng とあまり変わらない。だが、設定する必要のあるオプションが -m(モード)と -i(APに使用するデバイス)の他にもう1つ増える。-o(インターネット接続する側のデバイス)だ。 接続したマシンがインターネットに接続できるようにするには、もちろんこのデバイスが正常にインターネット接続できている必要がある。とりあえず、ブラウザーから HackerJapan の Web サイトが見られるようになっていれば大丈夫だ。もし設定できていないのであれば、
# /etc/init.d/networking start
コマンドなどで設定しよう。その他のオプションとしては、
-s SSID を設定する-f 接続可能な MAC アドレスを指定する-d DHCP サーバーのコンフィグファイル(dhcpd.
conf)を指定(ない場合は /tmp/dhcpd.confが作成され、それが使用される)
がある。
ここでは、モードは ap(Airbase-ngを使ってAPを構築する)、AP にするデバイス(-i)は wlan0、インターネットに接続するデバイス(-o)が eth0である前提で進めていく。 なお Kmsapng 同様、-i で指定するデバイス名を wlan1 など wlan0 以 外にした場 合、AP の作成に失敗するケースがあったので、できればwlan0 にしておいた方がいいだろう。 また、-s オプションで SSID を変 更できるが
「FON_FREE_INTERNET」のようなまぎらわしいものにすると、他人に間違って接続される可能性があるので、よい子は設定してはいけないぞ(笑)。
# ./mitmap.sh -m ap -i wlan0 -o eth0
とコマンドを叩くと、デバイスに問題がなければDHCP サーバーが起動し、AP が起動し、IP マスカレードとルーティングの設定が行われる。無線LAN アダプターが AP になれないなど問題があった場合はエラーメッセージが現れて終了する。うまく AP が起動している場合は、
Listeng on at0...(Ethernet)
at0 -> 00:0D:02:CD:51:29 10.0.0.1 255.255.255.0
図 1 メニューから「Mitmap」を選ぶが、コンソールが起動するだけなので、起動はコマンドラインから行う
66
のような、AP の MAC アドレスと設定が表示されるだろう。ちなみに、AP の IP アドレスは 10.0.0.1 で固定されている。 AP の起動に成功したなら、Ettercap が 起 動 する。 このEttercap によってパケットはすべてキャプチャーされることになる。フィンガープリントがロードされたなどの表示が出てくるものの、特にこれらは使用されず、純粋にパケットキャプチャーするだけだ。 Mitmap 側でやることはこれで 終了だ。Kmsapng のように他のサーバーが起動することもない。あとは誰か好奇心旺盛な人が接続してくれるのを待つことになる。 なお、起動中に何かしたい場合はキーボードの「h」を押すと Ettercap のコマンドリストが表示されるので、そこから Ettercap の使いたいコマンドがあれば使ってみればいいと思うが、誰も接続していないかぎり特に役には立たない。ちなみに「q」で Ettercapは終了するが、同時に Mitmap も終了することになる。
●接続してみる 待つといっても、マックの近くに住んでるわけでもないかぎり、自宅にカモが舞い込んで来る機会はほとんどない。もちろん本稿は実験目的で、待ち伏せ攻撃をしようというわけでもないので、ここでもクライアントマシンを用意して、自分で接続してみることにする。Kmsapng のように脆弱性を突かれるわけでもないので、怖がらなくても平気。普通のマシンでかまわない。 クライアントマシンを起動し「Free Wifi」というSSID を見つけて、これに接続する。SSID 名を変更しているならば、その SSID に接続しよう。 接続するとホストには DHCP サーバーによって10.0.0.100 〜 254 からいずれかの IP アドレスが配布され、DNS サーバーは偽 AP マシンで使わ
れているものを引き継ぐようになっている(-d オプションで任意の dhcpd.conf を指定することによってこのあたりは修正可能)。デフォルトゲートウェイはもちろん AP のアドレス(10.0.0.1)だ。そして、IP マスカレードによって、普通にインターネット接続が可能となっているはずだ。一応 Pingとか撃ってみると、ちゃんと目的のサーバーから返答があるだろう。 ただしこのAP、立てたマシンの性能に左右されるのかもしれないが、性能があまりよろしくない。メールを読むくらいならいいのだが、重たい Webを閲覧したり、動画を見るのにはちょっと遅くて使えない。混雑時のマックの無料 Wi-Fi サービスくらいのギリギリな印象で、実験目的でないと個人的にはちょっと普段使いにしたくない(図 3)。
●取得したデータを閲覧する 遅いのにイライラしたかもしれないが、一応キャプチャーはできているはずなので、取得したデータを見てみることにしよう。データは /root/に mitmap- 日付 .cap という形式で保存されてい
図 2 # ./mitmap.sh -m ap -i wlan0 -o eth0 で Mitmap を起動し、偽 AP を立ち上げる
67
る。pcap 形式なので、Wireshark で閲覧可能だ。特に問題なく閲覧した Web サイトの内容や、メールのパスワードなどが通過しているのがわかるだろう(図 4)。ただし、遅いので量的には不満の残る結果となった。これがもっと速ければ… という思いを持った人も多いはずだ。
● Mitmap は遅い! Mitmap によって確かに AP はできあがり、その AP を使ったインターネットの接続とパケットのキャプチャーはできた。でも、どうにも遅い。望 んでいたものはこれではないのだが、まあ… という不満を抱きながら使うのもいいのだが、このままでは自分用 APとして使用しながら、ついでにデータもいただくというカジュアルな使い方には適さない(そんなことをする人はごく少数だと思うが)。 それにこの AP を使ってパケットをくださるボ
ランティア精神旺盛な方だって、この速度ではイライラして、他のスピード感あふれる AP を見つければ、すぐに浮気されて別れを告げられることになってしまうではないですか。こいつは困った。
●遅いのは Ettercap なのか? ということで、スクリプトのソースコードを紐解いて、個々の要素を調べてみると、どうもパケットキャプチャーに使 わ れ る Ettercap がボトルネックになっているようだ。単純に考えると、Ettercap を使わずに他のパケットキャプチャーを使えばいいのだろうが、この Mitmap のスクリプト、Ettercap のプロセスを監視しており、Ettercap がkill されるとスクリプト自体終了するようなので、これだけ終了するというわけ
にもいかない。 スクリプトを書き換えて Ettercap の代わりにtcpdump を起動させればいいのかもしれないが、それよりも手動で偽 AP を立ち上げて、パケットをキャプチャーすることにする。コマンドをいくつか叩く必要があり、手間は増えるが確実だろう。
● Airbase-ng を使った AP 作成 とはいえ偽 AP を立ち上げる手順をどうやって
図 3 Mitmap を起動するとデフォルトでは「Free Wifi」という名前の AP が待ち受ける。クライアントからこのように「Free Wifi」が見えるので、これに接続する
図 4 Wireshark でキャプチャーしたデータを眺める
68
知ればいいのだろうという疑問が浮かぶだろうが、答えは簡単。偽 AP のプログラムなので当たり前と言えば当たり前だが、Mitmap のスクリプトに書かれている。これを基本的にはパクることにする。 動作としても、AP に接続したホストが eth0 を経由してインターネット接続し、そのデータをいただくという、ほぼ同じようなコンセプトで進めていく。 データの取得には FTP や POP3 のパスワードをピックアップできる Wifizoo を使おうかと思ったが、Wifizoo の解説の方が AP の作り方よりも長くなってしまいそうなので、Wireshark を使って、ただ生パケットをキャプチャーするだけにする。
まずは、AP を作成するために Airbase-ng を起動するが、その前に無線 LAN アダプターをモニターモードにしておく必要がある。airmon-ngコマンドはモニターモード ON/OFF するだけのツールだが、Aircrack-ng ツール群以外でも非常に役立つので、ぜひとも使いこなせるようにしておきたい。
# airmon-ng start wlan0
これで、mon0 というパケットモニター用の仮想アダプターが作成される。 次に macchanger コマンドを使って、MAC アドレスが重ならないように変更する。
# macchanger wlan0
これで AP を起動する準備は整った。Airbase-ng を使って AP を起動する。使用するデバイスは先ほど作成した mon0 だ。
# airbase-ng -P -C 3 -v mon0
これで Mitmap 同様に「Free Wifi」という APができあがる。パスワードの設定はないので、これだけでも接続は可能だが、これに接続したところでクライアントは何もできない。LAN ケーブルをハブに挿しただけのように、ただ接続しているだけだ。
そこで AP に接続したクライアントがインターネットに接続するのに必要となる、IP アドレスの設定とルーティングを行うことにする。その前にマシンがインターネットに接続できているかどうか確認しよう。 接続できているなら、できあがった AP(at0)に、ifconfig コマンドを使って IP アドレスを設定する。別に何でもいいが Mitmap と同じく 10.0.0.1/24にしておいた。
# ifconfig at0 10.0.0.1 netmask
255.255.255.0
次に IP マスカレードによって、接続したクライアントのパケットがインターネットを行き来できるようにする。インターネット接続している側のデバイスは eth0 だ。2 行目では 10.0.0.1 に届いたパケットが eth0 に流れることを許可している。
# iptables -t nat -A POSTROUTING
-o eth0 -j MASQUERADE
# echo “1” > /proc/sys/net/ipv4/ ip _ forward
これで AP に接続したクライアントは無事にインターネット接続可能になったが、これだけではクライアントはちょっと困る。IP アドレスをどう設定すればいいのかわからないのだ。 自分だけで使うなら固定で 10.0.0.2/24 などのアドレスを設定してもいいのだが、基本的には誰かに使っていただく予定だ。そこで DHCP サーバーを起動して、接続してきたクライアントに IP アドレスを配布するようにする。 DHCP サーバーは dhcpd3 がインストールされているのでこれを起動するといい。
# dhcpd3 -cf dhcpd.conf at0
-cf オプションで指定するのは、設定ファイルだ。 なお、dhcpd.conf は Mitmap を起動すると、/tmp/dhcpd.conf という設定ファイルが自動作成されるので、これをコピーして保存しておくと、これがそのまま使えるので便利だ。
69
・dhcpd.confの一例default-lease-time 60;
max-lease-time 72;
ddns-update-style none;
authoritative;
log-facility local7;
subnet 10.0.0.0 netmask
255.255.255.0 {
range 10.0.0.100 10.0.0.254;
option routers 10.0.0.1;
option domain-name-servers
192.168.1.1;←│ここは使用する DNSサーバーのアドレス
}
これで、AP の 設 定 は 終 了し た。Mitmap で使ったクライアントで接続してみると、問題なくインターネットに接続できているだろう。しかも、Mitmap のときと違い、サクサク動く! 同じマシンだというのに、あまりのネットワーク接続スピードの違いに愕然とした。普通に動画だって見られるし、ラジオだって聞ける。理由はちょっとよくわからないが Ettercap がかなり足を引っ張っていたようだ。
●パケットのキャプチャーを行う このまま、便利な AP として使ってもいいのだが、さすがにパケットのキャプチャーが行えないのはイヤだし、本来の目的から遠ざかっているの
で、もちろんパケットをキャプチャーすることにする。 パケットをキャプチャーするには、普通に Wire-shark を起動すればよい。メニューの「Internet」→「Wireshark」を選ぶと起動するだろう。メニューの「Caputure」から「Interface」を選ぶとパケットキャプチャーする NIC を選択する画面になるので、mon0 を指定すれば、クライアントとインターネットとのやり取りがどんどん取得されていくだろう。パケットの量にもよるが、それほど接続速度が激減することもないので安心だ。
●それでも野良 APを使う? ここまで簡単ではあるが、パスワードを抜いたり、閲覧データをいただいたりすることのできる偽 AP の作り方を紹介させていただいた。DNSを工夫したり Metasploit との連携などによって、接続したクライアントには、よりさまざまな攻撃が行われることになるだろう。 そういえば最近はなぜかパスワードに不備がある野良 AP を使う人がまた増えているらしい。ただのセキュリティ不備ならともかく、世の中には本稿のような手段でパケットをキャプチャーしたり、マルウェアを仕込んだりするためのハニーポットとして AP を立ち上げている人も決して少なくはないことを理解したうえで、接続していただきたいものだけど、特に考えてないから接続しちゃうんでしょうね。
図5 Wireshark を起動して、AP に接続してきたマシンのパケットをキャプチャーする