« 終焉ノ序~オワリのハジマリ~ | トップページ | 終焉ノ参~救イの無い世界~ »

終焉ノ弐~ソノ先が無いモノ~

IPAに関しては、素人の報告は無視って以外に、研究目的として、新たな脆弱性にしか興味はないということも考えられる。
やつらにとっては新たな脆弱性が誘因物なんだろうぜ。

脆弱性ってのは新たに生まれるばかりではなく、過去は問題にならないと思われたことが、環境変化により顕著化するという場合もある。

因みに、HTTPSからHTTPに変更しちゃうのは、やつらの言葉で言うと、セキュリティレベルの低下なんだとさ。
脆弱性とどう違うっちゅうねん。

 

HTTP通信はそんなに危険か、ということについては過去記事などを見てもらえればよいけれど、一般に、広く知らせたい情報や、表示カスタマイズ程度のプロファイル制御だったら、問題はない。
たとえば、単純なHTMLコンテンツでGETアクセスだけ、フォームもCGIもないサイトであれば、HTTPだけでもお釣りがくる(ってことはないけど)。

昨今は機密情報をWEBで送受信する場合が多い。

問題は、それを機密情報かどうか判断できるのはエンドユーザで、暗号化を制御できるのは一般にサイト運営側だという点にある。

クライアント認証というものも確かにある。
クライアントが証明書を送る側になってSSLを要求するとか、簡単には通常のHTTPS(SSL)の逆みたいな感じだが、それにしても、サーバ側がクライアント証明書を要求する設定や、許可する設定になってなければ、利用する手立てはない。

クライアントが暗号化を強制する一般的な方法は、今のところ存在しない。

 

非HTTPS通信(HTTP)というのは、暗号化されておらず、サーバへのリクエストから、サーバからのレスポンスまで、一貫して盗聴等に対し可読。

HTTPS通信は、リクエストもレスポンスもHTTPヘッダを含め暗号化される。

リクエストには、「○○サーバの△△をくださいな」ということが最低限含まれているのだが、これだけだと、誰が欲しがっている情報か分からない。
そこで、ユーザ別の情報を要求するため、誰が欲しがっているかという情報も同時に送る。
たとえば、セッションIDという文字列で、URLに混ぜ込んだり、Cookieを使ったり、いろいろするのだが、ほとんどの場合、それはすべてリクエストヘッダに含まれることになる。

リクエストが平文(非HTTPS)で送られるということ自体、盗聴に対して無防備であり、盗聴という脅威に対する脆弱性と言えるはずだ。

得られる情報が誰かを意識しない情報であれば、必要のない情報であるため、それらは非HTTPSでもほとんどの場合、問題は無い。
むしろ、Cookie等を利用しているのは逆に不自然と言える。
行動履歴としてサーバ側で集計されている可能性もある。
ただ、そういうCookieであれば、ユーザ側で受信や送信を拒否することが、ブラウザによっては設定可能となっている。
つまり、無くてもいいCookieはユーザ側にも主導権があるということだ。

逆に言うと、無くてはならないCookieには、ユーザ側に主導権は無い。
ユーザがCookieの受送信を拒否すれば、そのサービス自体の提供を受けることができないからだ。
#混ぜ込みURLに対応するのは少し面倒だが・・・

ここではそういうサーバ側が誰かを判断するCookie等の材料をプロファイルIDと呼んでおく。

プロファイルIDを送受信する際に、果たして本当にHTTPのままで良いのかということを考えると、そうとは思えないというのが実際のところである。

サーバ側で同一プロファイルIDの処理を1度だけにするとか、無駄な足掻きをすれば、何とかなるわけだが、そんな処理を入れるくらいなら、素直にSSLアクセラレータを噛ませるなりして、HTTPS暗号化するのがお手軽と言える。

暗号化されていなければ、リクエストヘッダを盗聴コピーリクエストすると、大体の場合、正規ユーザと同じ情報が受け取れる

 

盗聴場所について、ルータとかハブとか、何か物理的なものに細工が必要かと思いがちだが、一番確実なのは、クライアントPC内部、ウィルスだったり、不正プログラムだったり、そういうものだ。
これなら送信元がそのPCからのものがすべて盗聴できる。

ルータとかハブも物理的な盗聴だけでなく、その中ではプログラムコードが動いていたりするものもあるので、ソフトウェア的攻撃による盗聴を仕掛けることも不可能ではない。

クライアントPCで盗聴されるのはクライアント側の問題かも知れない。
どこで盗聴されているか、盗聴される側に感知できるのはクライアントPCくらいしかないからだ。

それ以外ではどこで盗聴されているか、本当に盗聴されていないのか、知る術はクライアントユーザ側にも、サイト運営側にもありはしない。

 

ちょっと脱線したが、盗聴される可能性がゼロでないところを通過するのにプロファイルIDが非HTTPSのままでいいのかというと、それが単に、アクセスを追跡するレベルのものであったり、機密性のない情報の取得だけであれば問題となることは少ないのだが、ほとんどの場合、それらプロファイルIDを付与する前に、ユーザ認証が行われるところに、大きな問題がある。

認証が成功しているユーザという情報をプロファイルIDとして非HTTPSでやりとりすることは、システムに格納された情報への不正アクセスを助長するだけでなく、その後、実際に機密情報がやりとりされうる可能性がある。

いちいちHTTPSで再認証したりするシステムもあるけれど、結果的に非HTTPSでアクセスするのであれば、認証は無いのと同じだ。

認証が必要なプロファイルIDのやり取りが必要になったら、プロファイルIDを破棄するまでHTTPSを維持すべきだし、プロファイルIDを盗聴から可読な状態にしてはまずいし、それを制御できるのはサイト運営側しかないということを忘れてはいけないと思う。

 

盗聴という脅威から通信内容を保護するには、通信を暗号化するしかないというのが、俺の見解。
オレオレ証明書でもいいからHTTPS(SSL)暗号化することは、盗聴という脅威に対する有効な解だと思う。

 

そういうことを踏まえてIPAに報告やメールをしたつもりだった。

|

« 終焉ノ序~オワリのハジマリ~ | トップページ | 終焉ノ参~救イの無い世界~ »

ウェブログ・ココログ関連」カテゴリの記事

パソコン・インターネット」カテゴリの記事

日記・コラム・つぶやき」カテゴリの記事

コメント

この記事へのコメントは終了しました。