【でぃーぴーあい(でぃーぷぱけっといんすぺくしょん)】
DPI(ディープパケットインスペクション) とは?
最終更新:
💡 通信のデータ部分の内容まで調べる技術
通信をIPアドレスやポート番号などだけでなく、データ部分の内容まで調べて種類を見分ける技術。検知や通信制御に利用される。暗号化された内容を、そのまま平文として読めるわけではない。
📌 このページのポイント
パケットフィルタリングと何が違うの?
中身を見ると攻撃を全部発見できる?
全部を確実に発見できるわけではないよ。検査できる内容や用意したルールに左右される。例えば既知の不審なパターンと照合して警告する方法があるけれど、ルールへの一致だけで、常に攻撃か安全かを正しく判断できるとは限らないんだ。
IDSやIPSと同じもの?
DPIは検査の技術で、IDSやIPSは侵入の検知や防御を行うシステムだよ。DPIを利用する実装もある。例えばSuricataではルールにalertやdropなどの動作を指定できるけれど、警告するか遮断するかはルールや運用する構成で変わるんだ。
HTTPSでも内容を読めるの?
特定のサービスを制限していたら、DPIを使っている?
制限だけでは判断できないよ。DPIを使った内容による制御のほか、IPアドレスなどで制御する方式もある。DPIで種類を判定したから必ず遮断する、というわけでもないので、何を調べ、どのルールで動作するかを確認しよう。
もっと詳しく知りたい人へ
複数のパケットに分かれた内容はどう調べるの?
受け取ったデータを組み立て直して検査する実装があるよ。例えばSuricataのルールでは、個々のTCPパケットを扱うものと、再構成したストリームを扱うものを区別できる。どちらも同じ範囲を検査するわけではなく、性能や検知の結果は実装や条件によって変わるんだ。
TLSを復号して検査するときは何に注意する?
通信の間に入る機器を端末が信頼し、その機器がTLS通信を扱って内容を検査する構成があるよ。機器が機密情報にアクセスできるため、検査する範囲と権限、情報の扱いを確認する必要がある。検査機器や鍵の管理そのものも重要で、導入すれば無条件に安全になるわけではないんだ。
まとめ:ざっくりこれだけ覚えればOK!
「DPI(ディープパケットインスペクション)」って出てきたら「通信のデータ部分の内容まで調べる技術」と思えばだいたいOK!
📖 おまけ:英語の意味
「Deep Packet Inspection」 = 深いパケット検査
💬 Deepは深い、Packetは通信で扱うデータのまとまり、Inspectionは検査という意味だよ。アドレスなどの情報だけでなく、データの内容まで踏み込んで調べることを表すんだ。