スニッフィング (スニッフィング) とは | 意味や読み方など丁寧でわかりやすい用語解説
スニッフィング (スニッフィング) の読み方
日本語表記
盗聴 (トウチョウ)
英語表記
Sniffing (スニッフィング)
スニッフィング (スニッフィング) の意味や用語解説
スニッフィングとは、ネットワーク上を流れるデータを傍受し、その内容を盗聴する行為を指す。英語の「sniff(嗅ぎ回る)」が語源であり、ネットワークパケットの「匂いを嗅ぐ」ように情報を収集することに由来する。この行為は、ネットワークの監視やトラブルシューティングといった正当な目的で行われる場合と、機密情報の窃取や不正アクセスの足がかりといった悪意のある目的で行われる場合がある。システムエンジニアを目指す上で、スニッフィングの仕組みや対策を理解することは、ネットワークセキュリティの基礎知識として不可欠である。 スニッフィングの基本的な仕組みは、ネットワークアダプタ(NIC)を通常とは異なるモードで動作させることにある。通常のネットワークアダプタは、自分自身に宛てられたパケット(データのかたまり)のみを受け取り、それ以外のパケットは無視する。しかし、このアダプタを「プロミスキャスモード(Promiscuous Mode)」に設定すると、自分宛てではないパケットも含め、ネットワーク上を流れるすべてのパケットを受信し、処理できるようになる。これにより、攻撃者や監視者は、他のデバイスがやり取りしている通信の内容を傍受することが可能となる。 具体的なネットワーク環境においては、データの流れ方がスニッフィングの容易さに影響を与える。かつて主流だったハブを利用したネットワーク環境では、データが接続されているすべてのデバイスに送信されるため、プロミスキャスモードに設定されたネットワークアダプタを使えば容易に他の通信を傍受できた。しかし、現在主流のスイッチングハブ(レイヤ2スイッチ)は、MACアドレスを学習し、データが必要なポートにのみ転送する仕組みを持つため、通常のスニッフィングは困難になる。しかし、スイッチ環境においても、いくつかの手法を用いることでスニッフィングは可能となる。代表的なものには、ARPスプーフィング(ARP Spoofing)によって攻撃者のデバイスを通信の中継点として偽装する手法や、MACフラッディング(MAC Flooding)によってスイッチのMACアドレステーブルをオーバーフローさせ、一時的にハブのように振る舞わせる手法、あるいはポートミラーリング(Port Mirroring)によってスイッチの特定のポートのトラフィックを監視ポートにコピーさせる手法などがある。ポートミラーリングは、ネットワーク管理者による正当な監視目的で利用されることが多いが、悪用される可能性もある。 スニッフィングによって傍受されるデータには、IPアドレス、MACアドレス、ポート番号といったネットワークのヘッダ情報だけでなく、アプリケーション層のデータも含まれる。例えば、HTTP通信でのウェブサイトへのリクエストやレスポンス、FTPやTelnetでのログイン情報、電子メールの内容などである。これらのデータが暗号化されていない「平文」でやり取りされている場合、ユーザーID、パスワード、クレジットカード番号、氏名、住所といった個人情報や機密情報が攻撃者にそのまま読み取られてしまう危険性がある。特に、多くのウェブサービスがHTTPSでの通信を推奨しているのは、このようなスニッフィングによる情報漏洩を防ぐためである。 スニッフィングは、前述の通り、正当な目的で利用されることもある。ネットワーク管理者やセキュリティ担当者は、スニッフィングツール(パケットアナライザ)を用いて、ネットワークのトラブルシューティングを行う。例えば、通信遅延やパケットロスの原因を特定したり、特定のアプリケーションの通信が正しく行われているかを確認したりするために利用される。また、ネットワークトラフィックの分析を通じて、帯域幅の使用状況を把握し、ボトルネックを特定したり、異常なトラフィックパターンを検出してセキュリティインシデントの兆候を発見したりすることも可能である。 IDS/IPS(侵入検知システム/侵入防止システム)の監視機能の一部としても、スニッフィングの技術が応用されている。 一方で、スニッフィングが悪意を持って利用される場合は、深刻な情報セキュリティ被害につながる。最も典型的な目的は、ユーザーIDとパスワードの窃取である。これにより、攻撃者は被害者のアカウントに不正にログインし、さらなる情報窃取やサービスの悪用を行う。また、クレジットカード情報や銀行口座情報を盗み出し、不正利用に及ぶこともある。企業秘密や個人情報など、機密性の高いデータを窃取し、金銭的な利益を得たり、競争上の優位性を得たりすることも攻撃者の目的となる。 スニッフィングによる脅威から身を守るためには、いくつかの対策を講じる必要がある。最も効果的な対策は、通信の暗号化を徹底することである。ウェブサイトへのアクセスにはHTTPSを、リモート接続にはSSHを、ファイル転送にはSFTPやFTPS、あるいはVPN(仮想プライベートネットワーク)を利用するなど、常に暗号化されたプロトコルを使用することが重要である。これにより、たとえパケットが傍受されたとしても、その内容が暗号化されているため、攻撃者がデータを容易に解読することは困難になる。また、ウェブサイトのTLS/SSL証明書が正規のものであるかを確認することも重要である。 ネットワークインフラの観点からは、スイッチングハブの適切な設定が求められる。例えば、ポートセキュリティ機能を有効にし、特定のポートで通信できるMACアドレスを制限することで、不正なデバイスの接続やMACアドレスの偽装を防ぐことができる。ARPスプーフィングに対しては、スタティックARPエントリの設定や、ARP監視ツールの導入が有効である。また、不要なスイッチポートは無効化し、物理的なセキュリティを強化してネットワーク機器への不正アクセスを防ぐことも重要である。IDS/IPSを導入し、ネットワーク上の異常なトラフィックパターンや不審な活動を常に監視し、検知した場合には管理者へ通知したり、自動的に通信を遮断したりする仕組みも有効である。使用するOSやアプリケーションの脆弱性を悪用されることを防ぐため、常に最新の状態にアップデートすることも忘れてはならない。最後に、ユーザー自身が、不審なWi-Fiネットワークに接続しない、公衆Wi-Fiで機密情報をやり取りしないなど、セキュリティ意識を高めることも対策の一環となる。