Midnight Monologues

日々勉強したことを書いてきます

ハニーポット構築(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?

上手く検出回避できているようだ。( ̄ー ̄)ニヤ