無線LANセキュリティ10の誤解(後編)

西方望

February 19, 2015 08:00
by 西方望

前編からの続き
誤解6:WPA/WPA2-PSKでAESを使用していれば、パスワードがクラックされることはない
→弱いパスワードなら、認証パケットを入手することによりオフラインでクラックできる

現在、個人や小規模オフィスで最善の無線LANセキュリティ設定は、WPA/WPA2-PSKでAESを使用することだ(小規模なオフィスでもできればWPA2-EAPを使うべきではあるが)。これを正しく運用していれば、まず無線側から侵入されることはない。ただし「正しく」使った場合に限る。先ほども触れたとおり、WPA/WPA2-PSKであっても弱いパスワードを使っていれば危険だ。

とはいえ、AES(CCMP)にはWEPのように致命的な脆弱性があるわけではないので、これを破るためには、パスワード候補を順に試すという、古典的なクラック手法を使う必要がある。しかし、パスワードを代えながらAPへの接続試行を繰り返すにしても、1回の試行が失敗するには数十秒かかる。複数の機器から試行するなど頑張ってもせいぜい1秒に1個のパスワードを試すのが限界だろう。これなら、先ほど危険とした数字13桁でも、全部試すには30万年以上かかる見当だ。

では、パスワードの強度はそれほど必要ないのではないかというと、そういうわけでもない。なにもAPに対して実際の接続試行をする必要はないのだ。正規の機器がAPに接続する際に飛ぶパケットさえ入手すればいい。このパケットが作られるのと同じアルゴリズムをパスワード候補に適用し、それと実際のパケットを比較して正しいかどうかを知ることができる。

しかも、このパケットを入手するために、新たな機器が接続するまで待つ必要はなく、既に接続している機器があれば、それを強制切断させれば済む。実は、他人のAPに勝手に接続するのは難しいが、他人のAPに既につながっている機器を勝手に切断させるのは簡単なのだ。たいていの場合、切断された機器は自動的に再接続を行い、この際に当該パケットが飛ぶのでそれを傍受すればよい。あとはこのパケットを持ち帰ってじっくり解析するだけだ。

ただ、この解析処理は、例えばハッシュ解析などに比べると格段に重い。パソコンのCPUでは、最高速のものでもせいぜい秒2万個のパスワード候補を試すのが精一杯だろう。数字13桁をすべて試すのに15年掛かる計算だ。しかし、ビデオカード(GPU)での計算や分散処理に対応した解析ツールが存在するので、それらを用いれば個人でも秒数百万個の解析は十分手が届く範囲になる。こうなると、数字13桁のパスワードは1月そこそこですべて試せる(平均すると半月ほどで解析できる)わけだ。英小文字8文字なら1日かからない。むろん辞書に載っているような単語を使っていたら瞬殺なのは言うまでもない。先ほども述べたように、必ず長くて多くの文字種を使った複雑なパスワードを設定することが肝要だ。

誤解7:APのSSIDはデフォルトのものから変更すべき
→現在では無意味。下手な変更はむしろ危険性を増す

WPA/WPA2-PSKの解析には、もう1つ特徴がある。解析対象のAP名(SSID)さえわかっていれば、計算の「重い」部分を事前に済ませておくことができるのだ。認証時に使用される鍵はパスワードとSSIDから生成されるが、SSIDとパスワード候補をあらかじめ処理してデータベースを作成し、実際の認証パケットを入手してから比較すれば、秒数億個以上の速度、つまりほとんどの状況では瞬間的に解析が終わる。

むろん事前処理には上述の時間がかかるわけだが、場合によってはこれが不要なことがある。よく使われるSSIDと、数百万語程度の辞書を処理した各種のデータベースが、ネットで入手できるからだ。つまり、こういったSSIDのAPで、辞書に載っているようなパスワードを使っていると、下手をすればWEPより速くクラックされてしまいかねない。このため、SSIDはデフォルトから変えた方がいいという人もいる。
ただ、以前は同一のAP製品すべてに同じSSIDが付けられていたこともあったが、現在はどのメーカーの製品も、デフォルトでMACアドレスなどを元にした固有のものとなっている。これならば解析済みデータベースが存在することはないので、SSIDを変更する必要はない。

むしろ、「MyHome」とか「office」といった他にもありそうなSSIDにしてしまう方がよほど危険だ。識別のためにわかりやすい名前を付けるのはかまわないが、元々のMACアドレス部分を残すなど、固有のものにしておいた方が無難だろう。もっとも、ありがちなSSIDであってもパスワードが十分強固なら問題はないので、好みの問題とも言える。

誤解8:APのSSIDは隠すべき
→隠しても意味はないばかりか、余計なリスクを招く

たいていのAPには、自分のSSID(AP名)を発信しないようにし、SSIDを知らなければ接続できないようにする「SSIDステルス」などと呼ばれる機能がある。この設定を推す人は多く、無線LAN機器メーカーやセキュリティ企業まで推奨していたりする。一見、周りからAPが見えなければより安全になると思うかもしれない。だが実は、ほとんどの場合はより危険になってしまうのだ。

まず、隠せるのは名前だけで、APの存在自体は隠せない。先ほども述べたとおり、MACアドレスも丸見えだ。そして、正規のクライアントが接続する際に暗号化されていないSSIDが送られるので、その瞬間にSSIDは判明してしまう。これも先ほど解説したように既接続のクライアントを切断・再接続させるのは容易(MACアドレス指定で可能)なので、その気になればSSIDはすぐ分かる。

だが、これだけなら単に隠しても無意味というだけだが、それより恐ろしいのがクライアント機器の方だ。SSIDを隠しているAPに接続するたびに、毎回SSIDを入力したいと思う人はまずいまい。普通は自動接続設定にするだろう。この自動接続とは具体的に何をしているかというと、クライアントは当該APに接続している時を除き常時「この名前のAPはいませんか」というビーコンを「常時」発信しているのだ。そしてその名前のAPがいれば接続処理が始まる。

つまり、例えば自宅のAPの名前を隠し、ノートPCやスマートフォンを自動接続設定のまま持ち歩いた場合(わざわざ出かけるたびに設定を変えないだろう)、会社でも学校でも公園でも電車でもファミレスでも、すべての出先で自宅APの名前を喧伝し続けることになる。隠したつもりが満天下に名前を教えているという馬鹿げた話だ。

問題は、これによりAP自体が存在しなくてもWPA/WPA2-PSKの解析ができてしまうことだ(WEPも解析できるが、そもそもWEPを使うこと自体が論外なので略)。例えばAP名を発信しているノートPCを出先で使用しているところに攻撃者がいたとしよう。攻撃者はターゲットの使用しているAP名がわかるので、その名前で偽APを立てる。するとターゲットのノートPCは自動的に接続しようとするが、WPA/WPA2-PSKでは双方が同じパスワードを共有していないと接続できないため、当然接続は失敗する。だが、この際にノートPCからAPに送られたパケットだけで、WPA/WPA2-PSKのパスワードを解析することが可能なのだ。SSIDの隠蔽は意味がないどころか、無用の危険を招くことになりかねない。

SSIDの隠蔽によりカジュアルなハックを防げると言う意見もあるが、そもそもWPA/WPA2-PSK AESで十分強固なパスワードを設定していれば、カジュアルなハックなど問題にならない。それよりもリスクの方が大きいので、SSIDは隠すべきではない。どうしても隠したければ、クライアントに自動接続させないことだ。大変面倒くさいことになるが。

誤解9:公衆無線LANでも暗号化されていれば安全(公衆無線LANでもWPA2-PSK AESで暗号化されていれば安全)
→WEPであれWPAであれ、公衆無線LANでの暗号化は無意味。安全な接続を使うべき

最初にも書いたとおり、携帯キャリアが用意したものから店舗が独自に運営しているものまで、今ではどこにでも公衆無線LANのAPが見つかる。たいていは無料で使用でき、携帯電話の回線より安定していて高速なことから、出先で利用している人も多いだろう。

公衆無線LANのAPでは、WEPやWPA/WPA2-PSKが使用され、申し込みをするとパスワードが送られてきて接続できるといった運用のものもある。だが、この暗号化は全くの無意味だ。WEPだから、WPAだからという話ではない。有線LANと異なり、APとクライアントの通信は誰でも傍受できる。暗号化されていたとしても、パスワードを知っていれば誰でも復号できる。そして公衆無線LANではそのパスワードは誰でも入手可能だから、暗号化されていないのと同じだ。

従って、他の手段で暗号化されていない通信は全て他人に知られうる。どのサイトを閲覧したか、HTTPでどのような通信をしたかなどはもちろん、平文パスワードを使ったりすればそれも丸見えだ。こちらの記事で具体的な危険性が解説されているので参照して欲しい。ただし、この実験はWEPもWPAも使用されていない無暗号のAPで行われたものだ。これは暗号通信の傍受・解読は電波法に触れる可能性が高いからであり、暗号化がハードルになるというわけではない(悪意のハッカーは当然違法行為など気にしない)。記事にもある通り、暗号化されていたとしても「一手間加えるだけで、ほとんど同じように盗み見されてしまう」のだ。公衆無線LAN APを経由して通信する際には、VPN(Virtual Private Network)を利用した方がいい。

誤解10:公衆無線LAN経由でも、SSLなら問題ない
→Cookieが漏れたり改竄される可能性がある

VPNが利用できない場合、次善の策としてHTTPS接続(SSL)でしか重要な情報は送信しない、という手段がある。例えばHTTPS接続のWebメールなら、傍受されてもパスワードやメールの内容が知られることはない。だが、それなら危険性が全くないのかといえば、やはりあるのだ。

公衆無線LANで怖いのは、傍から通信を覗かれることだけではない。接続したAPが、携帯キャリアのものなどになりすました偽物かもしれないのだ。あるいは、最初から悪意を持って開放しているAPもあり得る。悪意のハッカーは、自分が立てた偽APに接続してきた機器の非暗号化通信を、全て覗くことができてしまう。

ここまでなら傍受している場合と同じだが、偽APなら単に盗聴するだけでなく、経由する情報をすり替えることもできる。送受信した内容を改竄したり、利用者を本来とは異なるサイトに誘導することも可能だ。例えば利用者はYahoo!に接続しているつもりでも、攻撃者の作成したページに接続し、マルウェアを仕込まれるかもしれない。偽APにまんまと接続してきた相手に対しては、中間者攻撃と呼ばれるタイプの様々な攻撃が思いのままだ。

ただし、SSLで暗号化されている場合は、やはり盗聴も改竄もできない。ならSSLを使用しているサイトにだけ接続すれば安全かというと、まだ穴はある。まず、どこに接続したかという履歴は見られてしまう。これは大したことではあるまいが、SSLを使用していてもCookieは盗み見られたり改変されうるのだ。これによりなりすましなどの被害に遭ったり、攻撃に利用されたりするかもしれない。HTTPS接続状態でのCookieの盗聴・改変については、セキュリティ研究者の徳丸浩氏が「HTTPSを使ってもCookieの改変は防げないことを実験で試してみた」で詳しく解説しているので、参照していただきたい。

また、昨年話題になったPOODLE脆弱性は、SSLでも中間者が通信の一部を解読できるというものだった。中間者攻撃に利用されるこういった未知の脆弱性や未修正の脆弱性であっても、VPNで経路全体が暗号化されていれば防げる(VPNそのものに関連する脆弱性なら無理だが)。やはり、公衆無線LANを使う際には、VPNの利用をお勧めする。




ダークウェブで自動車爆弾を購入した英国青年は、いかにして特定されたか

December 15, 2017 08:00

by 江添 佳代子

2017年11月7日、爆発物の購入を試みた疑いで逮捕されていた19歳の英国人男性に有罪判決が下った。この事件には2つの注目すべき点がある。ひとつは、英国がサイバー犯罪の捜査で爆破事件を未然に防いだかもしれないという点。もうひとつは、「ダークウェブの利用者が捜査で特定された最新の事例かもしれない」とい…

連載「IoTのセキュリティリスクを考える」 #01 横浜国立大学・吉岡克成准教授 (3) IoTのセキュリティを誰が守るのか

December 13, 2017 08:00

by 牧野武文

年々増加するIoT機器への攻撃。吉岡准教授によると現在はまだアーリーステージで単純な攻撃が多く、高度な攻撃が始まるのはこれからだと言う。それを見越して先に予防策を講じておくことが重要で、産官学の連携を取ることにより、日本製のIoT機器の強みに転化していくという発想が重要だという。 責任の所在が不明確…

連載「IoTのセキュリティリスクを考える」 #01 横浜国立大学・吉岡克成准教授 (2) 攻撃者の狙いはDDoS攻撃

December 12, 2017 08:00

by 牧野武文

前回は吉岡准教授に、IoT機器への攻撃は主に3種類あることを聞いた。では、攻撃者は一体何を目的としてIoT機器を攻撃するのだろうか。 悪意の薄い「覗き見」 しゃ 覗き見から次の悪意が生まれるIoT機器、特にIPカメラの攻撃で最も多いのは「いたずら」「好奇心」によるものだ。「Insecam」というサイ…

連載「IoTのセキュリティリスクを考える」 #01 横浜国立大学・吉岡克成准教授 (1) 感染機器は数十万台以上? IoTがサイバー攻撃者に狙われる理由

December 11, 2017 08:00

by 牧野武文

生活や業務のシーンに広く使われるようになったIoT機器。IPカメラ、IPプリンター、スマートウォッチなどはすでに当たり前のように使われるようになった。「1人1台」のPCやスマートフォンと比べると「1人複数台」のIoT機器は、爆発的に台数を増やしている。一方で、IoT機器に対するセキュリティ意識は低い…