こんにちは。GMOインターネット セキュリティエンジニアの中田です。皆さんはネットワークのデータを見たことはあるでしょうか。実はネットワークのデータって誰でもみることができちゃうんです。この記事では、暗号化されていない通信がどれだけ危険かをWireSharkというツールを使って見てみましょう。
パケットについて
ネットワークに流れるデータは、パケットという細分化された塊にヘッダーという情報を付与されて通信が行われます。
ヘッダー情報とは、送信元/宛先情報や通信先へパケットが届いたときに元にのデータに戻せるな情報のことです。ではなぜネットワークを流れるデータは、パケットという細分化された塊にしてデータを送信するのでしょうか。それは大きいデータをそのまま送ると回線を占有してしまい、データ通信に支障をきたしてしまうからです。例えば、ピザを食べるとします。そのまま一枚を切らずに食べるとなると大変ですが、6等分にするなど細分化することによって、みんなとシェアして食べられますし、あとで食べるために取って置いたりすることができます。ピザをそのまま食べると大変なように大きなデータをそのまま通信しようすると回線を占有してしまうため、ネットワークを流れるデータはパケットという細分化されたデータで変換され、通信を行います。では、実際にツールを使ってパケットを見てみましょう。
パケットのイメージ
Wiresharkについて
実際にパケットを取得し中身を見ることをパケットキャプチャというのですが、今回はWiresharkというツールを使ってパケットの中身を見ていきます。
Wiresharkとは、ネットワークを流れるデータをキャプチャして内容を解析・表示するプロトコルアナライザ(ネットワークアナライザ)の一つです。※インストール方法については、省略致します。
使い方について
インストールが終わったらwiresharkのショートカットをクリック
それぞれのイーサネットの中でデータ見れるものをクリックしましょう(ここではイーサネットを選択してみます)
Wiresharkを起動させるとたくさんのパケットが流れているのが確認できると思います。
上記のデータ詳細欄に通信に必要な宛先/送信元のIPやMACアドレスなどのヘッダー情報が見えます。
この情報をもとに通信が行われ、みなさんのもとにWEBサイトや画像をみることができるのです。
実際に通信内容の確認してみよう
今回は、一般的にWEBサイトへアクセスする際に使用されるhttpとhttpsの通信でWordpressの管理画面からログインした際のパケットがどういう風に見えているか確認してみます。http:暗号化されていない通信https:暗号化されている通信
http 通信の場合
httpの通信内容を見てみるとログイン情報(log/pwd)が見えているのが確認できると思います。
https 通信の場合
暗号されているhttps通信の場合は、何がかかれているか復号する鍵がない限り解読できないようになっています。
最後に
暗号化されていない通信は中身が全てみえてしまい、パケットキャプチャされてしまうと情報が容易に流出してしまうことがわかっていただけましたでしょうか。皆さんもうっかりhttp通信のWEBサイトに個人情報を入力しないように注意しましょう。
また、暗号化されていてもそれが安全なものでなければ簡単に復号化されてしまい、知らないところで個人情報が流出してしまうこともあるかもしれません。