2014年8月26日火曜日

無線LANを暗号化すればのぞき見されないという誤解

今日のニュースに次のようなものがありました。

無線LANのメール丸見え 成田、関西、神戸の3空港

成田、関西、神戸の3空港が提供する無料の公衆無線LANサービスでインターネットを利用した場合、送信したメールの宛先や中身、閲覧中のウェブサイトのURLを他人がのぞき見できる状態になることが26日、神戸大大学院の森井昌克教授(情報通信工学)の実地調査で確認された。

無線LANを暗号化すればのぞき見を防止できるが、パスワードの入力などが必要となり、3空港は利便性を考慮し暗号化していないという。

無線LANのメール丸見え 成田、関西、神戸の3空港 - 47NEWS(よんななニュース)より引用

「無線LANを暗号化すればのぞき見を防止できる」というのは、誤解です。

無線LANの暗号化方式には複数あり、WEP, TKIP, CCMP(AES)の3種類が使われています。これらは暗号化の方式を定めただけで、鍵交換(パスフレーズの認証)は別の規格です。それぞれ WEP, WPA2-Personal(PSK), WPA2-Enterprise の3種類です。WEPだけは暗号化方式、鍵交換の両方を定めていて、WPA2は暗号化と鍵交換の方式を組み合わせて使うことができます。

WEPWPA2-Personal(PSK)WPA2-Enterprise
WEP危険--
TKIP-危険危険
CCMP(AES)-事前共有鍵を持っている人は、他人の通信内容を見れる一人一人認証鍵が違うので、他人の通信を見れない

まず、WEP、WPA、TKIPを使うWPA2は危険なので使わないようにしましょう。これらには脆弱性が見つかっています。使っていいのはWPA2-CCMP(AES)の組み合わせのみです。表には掲載していませんが、WPAもWPA2と同様に組み合わせを選ぶことができますが、WPA2に置き換わっているので使わないようにしましょう。

家庭や無線LANのホットスポットで利用されるのは WPA2-Personal と言われるタイプで、事前にPSK(Pre-shared key, 事前共有鍵)を決めてパスワードにします。これはこの事前共有鍵を知らない人には内容は読まれないのですが、鍵を持っている人には内容が見えます。つまり、不特定多数で同じパスワード(PSK)を使い回すような環境では、WPA2-Personalで保護されていたとしても、パスワード(PSK)を知っている人には内容が見えてしまいます。

WPA2-Personalでは、接続時にPSKを元に暗号化に使うセッション鍵を決定します。このセッション鍵は無線LANの端末ごとに割り当てられ、お互いに知ることはできません。ところが、PSKと、接続時の鍵交換の情報があればセッション鍵が計算されてしまいます。鍵交換は平文で行われます。そして、無線LANでは「切断する」というパケットは暗号化されないので、第三者が他人になりすまして「切断する」というパケットを送れてしまいます。端末は切断されたことを知ると再接続しようとしますが、そのときには鍵交換の内容を盗み見られるので、セッション鍵を入手され、その後の通信は盗み放題となってしまいます。

ということで、無線LANの暗号化は「パスワードを知らない人からは守られるけど、パスワードを知っている人には他人であっても通信内容が見えている」というものです。

WPA2-Enterpriseでは、一人一人に違う鍵(パスワードや証明書)を割り当てるので、このような問題は起こりません。

追記: WPA2-Personalは、家庭内のように全員が信頼できる環境で安全な無線LANを構築するには十分なもので、有線LANに近い水準のセキュリティが実現できます。不特定多数がPSKを知っている環境では意味が無いよ、ということです。

2014年8月8日金曜日

Linux Kernel Updates 2014.08をコミケ86に出します!

コミケ86に「Linux Kernel Updates 2014.08」を出展します!

8月17日(日) 西“き”-10b 「低級はっかーズ

目次

  • What's New in Linux 3.13?
  • What's New in Linux 3.14?
  • What's New in Linux 3.15?
  • Dockerとカーネル
  • ファイル名の入れ替え
  • O_TMPFILEの紹介

表紙は毎度おなじみきのとなおとさんに描いていただきました。ありがとうございます。

価格は300円、32ページです。

立ち読み

今回はDocker特集です!

既刊

過去のコミケで出したLinux Kernel Updatesのバックナンバーも持って行きます。在庫限り。

会場でお待ちしています!

2014年8月1日金曜日

Fedora 20でI218Vを認識させる方法

Asus Z97M-Plusのような新しめのAsusマザーボードには、イーサネットコントローラーとしてIntel I218Vが搭載されています。ところがFedora 20のインストールディスクにはこのデバイスドライバは入っていません。インストール方法を記録しておきます。

私は違う環境のFedora 20でビルドしてUSBで運びました。仮想マシンを使うのが楽だと思います。

必要パッケージなど

  • kernel-devel-3.11.10-301.fc20.x86_64 (バージョンも揃えます)
  • "Development Tools" 一式
  • I218V用の新しいドライバ e1000e-x.y.z.w.tar.gz っていうファイル名

ビルド手順

ダウンロードしたe1000eの圧縮ファイルを展開します。私の場合は e1000e-3.1.0.2.tar.gz でしたので tar xf e1000e-3.1.0.2.tar.gz します。

"cd e1000e-3.1.0.2/src; make BUILD_KERNEL=3.11.10-301.fc20.x86_64" します。すると、同じディレクトリにe1000e.koが生成されます。

e1000e.koを何とかして対象のマシンに移動し、"cp e1000e.ko /lib/modules/`uname -r`" して、対象のディレクトリに入れます。

おもむろに "depmod; modprobe e1000e" します。 "ip a" してインタフェースが見えれば成功です。

カーネル更新後

この記事を書いている2014年8月1日現在で手に入る最新カーネルの3.15.6-200.fc20ではI218Vに対応していますので、yum upgradeした後は特に対応不要です。