セキュリティ
マルチハニーポットプラットフォーム T-Pot の紹介
Seiya Kobayashi
ハニーポットプラットフォームであるT-Potの紹介をしたいと思います。
ハニーポットとは
ハニーポットはおとりのために設置するので正規の通信が発生しないという特徴がある。これは、記録に残るアクセスはすべて不正アクセスとなるので、誤検知を減らし検知洩れをなくすことができる。 ハニーポットの目的として、ウイルスやワームの検体の入手、不正アクセスを行うクラッカーをおびき寄せ重要なシステムから攻撃をそらしたり、記録された操作ログ・通信ログなどから不正アクセスの手法と傾向の調査を行うなど挙げられる。(Wikipediaより)
簡潔にいうと、わざと攻撃者にアクセスさせて、マルウェア検体の入手や攻撃手法や傾向の調査を行うことができます。
運用する上での注意として、ハニーポット自体が脆弱だったり設定を誤ると逆に攻撃者に利用される可能性があるので気をつけましょう。
T-Pot
T-Potは複数のハニーポットを運用し、それらから得られたログをELK(Elastic-search, Logstash, Kibana)を使って上手く可視化してくれます。
アーキテクチャ
各ハニーポットとツールをDockerで運用し、それぞれのログを集めてまとめて可視化しています。
構成
基本7つのハニーポットが動いています。
- Conpot - ICS/SCADA Honeypot
- Cowrie – SSH Honeypot
- Dionaea – 複数のWebアプリケーションを模倣
- Elasticpot – Elastic search
- eMobility
- Glastopf – Webアプリケーションサーバ
- Honeytrap – ネットワークサービスへの攻撃を検知
加えて、2つのツールが動いています。
- suricata – オープンソースのIDS/IPS (侵入検知システム)
- ELK – Elastic-search, Logstash, Kibana
導入
導入は非常に簡単で、isoイメージを作成してあとは指示通りセットアップしていくだけで、各ハニーポット、ツールの設定を自動で行ってくれます。
※全ハニーポット、ツールを使う場合は、最低でもメモリ4GB, ディスク容量64GBが必要です。
git clone https://github.com/dtag-dev-sec/tpotce.git cd tpotce sudo ./makeiso.sh
これだけでisoイメージを作成してくれます。
あとはブートするだけです。
ネットワーク関連の設定はここでは飛ばします。
起動できたら、http://localhost:64297/ に接続すると先ほどのKibanaの画面が見れます。
ハニーポットごとのアクセス統計やアクセス元IP, 国, ログ等が見れます。
ログもパラメータごとに絞り込み、ソートなどもできます。
まとめ
T-Potは簡単にハニーポットを構築できるので、ハニーポットを動かして見たい人にはとっつきやすいと思います。
ハニーポットを運用してみることで攻撃されているという感覚が見にしみてわかります。
実際に、マルウェアに感染したIoT機器からの感染を広げるためのアクセスを見れたりしました!
どんな攻撃が来ているかをみるだけでもワクワクしますし、自分の知識を広げるためにもハニーポットは最適だと思います。
ハニーポットに興味がある人は是非やって見てください!