ハニーポット構築(nmapによるハニーポットの検出確認②)
T-Pot内のdionaeaの設定を変更し、攻撃者からハニーポットの検出を回避する。
目次
1.dionaeaの設定変更
2.動作確認
1.dionaeaの設定変更
T-Pot内のdionaeaの設定を変更する。データベースに接続する際のpre-login TDS package (Tabular Data Streams)の情報をチェックしているとのこと。 /opt/dionaea/lib/dionaea/python/dionaea/mssql/mssql.pyのToken Typeの値を0x00 → 0x01に変更する。
T-Potはdocker内で収集した各データを/data/配下に保存している。
①/data/配下に定義ファイルを移動し、②tpot.ymlにて/data配下のデータとdocker内の定義ファイルを紐付けることでT-Potサービス再起動後もデータを永続化させることができる。
①/data/配下への定義ファイルの移動
- ターミナルでT-Potサーバへアクセス
- dionaeaコンテナへrootユーザでアクセス
$ sudo su - [sudo] password for tsec: # docker exec -it --user root dionaea /bin/bash
- 修正対象のファイル(mssql.py)をDocker Volume領域へ配置する。
# cp /opt/dionaea/lib/dionaea/python/dionaea/mssql/mssql.py /opt/dionaea/var/dionaea/log/ # exit
- T-Potのサービスを停止する。
# systemctl stop tpot
- mysql.pyファイルを移動する。(この辺は好みで!!)
# mkdir /data/dionaea/conf
# cd /data/dionaea/log
# mv /data/dionaea/log/mssql.py /data/dionaea/conf/
# cd /data/dionaea/conf/
# cp -p mssql.py mssql.py_BK<バックアップ取得日>
- mysql.pyファイルを修正する。
r.VersionToken.TokenType = 0x00 ↓ r.VersionToken.TokenType = 0x01
②tpot.ymlの修正
- Dionaea Service部分の「volume」に以下の記載を追加する。
- /data/dionaea/conf/mssql.py:/opt/dionaea/lib/dionaea/python/dionaea/mssql/mssql.py
- T-Potのサービスを開始する。
# systemctl start tpot
2.動作確認
設定変更後の公開サーバへnmapでアクセスする。
root@kali:~# nmap -sS -sV -p 1433 <公開IPアドレス>
Host is up (0.027s latency).
PORT STATE SERVICE VERSION
1433/tcp open ms-sql-s?
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 70.61 seconds
- 変更結果を確認すると「Dionaea honeypot MS-SQL server」が表示されなくなっている。
1433/tcp open ms-sql-s Dionaea honeypot MS-SQL server ↓ 1433/tcp open ms-sql-s?
上手く検出回避できているようだ。( ̄ー ̄)ニヤ