セキュリティリスク」タグアーカイブ

【S-MAX・記事掲載報告】年末企画:公衆Wi-Fiとセキュリティ


【年末企画】オリンピックを見据えて公衆Wi-Fiの整備が進む2014年、その一方で置き去りにされかねないセキュリティー意識を憂う(アプリ開発エンジニア・えど編) (S-MAX)

267b8122

S-MAX恒例の年末企画、もうそんな時期なんですね。今回はトップバッターを務めさせていただきました。例年は1年間に買ったスマホやタブレットの懐古やOSバージョンアップ、新製品の話題などで記事を書くのですが、今回は少し方向性を変えて、訪日観光客向けの公衆Wi-Fiとそれに伴うセキュリティリスクの話題を取り上げました。

本当に2014年は訪日観光客向けの公衆Wi-Fiが増えた印象です。公衆Wi-Fiの整備と言えば少し前まで携帯電話会社がトラヒックオフロードのために行っていた印象が強いのですが、すっかり主役が入れ替わった雰囲気です(携帯電話会社のWi-Fi、最近あまり宣伝しなくなりましたよね)。

一方このような公衆Wi-Fiは、利用時のハードルを下げるためかWi-Fiパスワードが設定されていない場合があります(写真の「JR TOWER FREE WiFi」もそうです)。この場合比較的容易に通信内容を覗き見することが可能で、利用する側はある程度覗き見されることを覚悟する必要があります。

簡単に使える公衆Wi-Fiが広がるのはいいのですが、簡単と裏表のセキュリティリスクにも気を付けようねという記事でした。

WordTwitでOAuthのキーを読み取ることができるリスク


WordPressの更新をTwitterに投稿してくれるプラグイン「WordTwit」を快適に使っていたのですが、ちょっと気になることが。

WordTwitでは、Twitterとの認証をOAuthで行うため、アカウントとパスワードを生値で持つことはありません。しかしその代わりと言ってはなんですが、WordTwitを含めOAuthを行うクライアントは「Consumer key」と「Consumer secret」という一見ランダムな文字列を内部に持つ必要があります。これらの値が外部に漏洩すると、他のアプリケーションが自己を詐称してユーザーに認証を求めることが可能になります。WordTwitにアクセス権を与えていたつもりが、知らない間に別のプログラムからもアクセスされていたということが起こりえるわけです。

で、WordTwitはPHPで記述されているため、「Consumer key」と「Consumer secret」をソースコードから読みとれてしまいます。さすがにConsumer secretはパッと見わからないようBASE64エンコードされていましたが、BASE64は単なる文字変換で暗号化ではありません。BASE64でデコードすればあっさりConsumer secretを知ることが出来ます。

これって使い続けるの危険じゃないかということで、当ブログではWordTwitの使用を中止し、以前使用していたFeedBurner+dlvr.itでTwitter通知を行うこととしました。リアルタイム性が落ちてしまいますが、安全にはかえられません。

恐怖をあおるつもりはありませんが、参考までに。