Edited at

Microsoft Azureにハニーポットを設置してみた(T-POT)


はじめに

今回は前回の記事で構築した仮想マシンをハニーポットにしたいと思います。

ハニーポットにはT-POTを使用します。


ハニーポットとは?

ハニーポットとはコンピュータセキュリティ用語としては「おとり」としてあえて、攻撃を受けることに価値を持つシステムのことを指します。

故意に脆弱性のあるコンピュータをインターネット上に設置し、不正アクセスを受けることで攻撃を監視することを目的としています。

これらによりクラッカーの攻撃手法や攻撃傾向を把握することができたり、マルウェアの検体を入手することが可能です。

しかし、ハニーポットを自宅に設置してしまうと、実際に攻撃を受けて監視するものなので誤った設定を施してしまうと自宅ネットワークを危険にさらしてしまう可能性があります。

そこで今回はMicrosoft Azure上にハニーポットの設置を行いたいと思います。

honeypot_logo.png


ハニーポットの種類

ハニーポットの種類としては以下のようなものがあります。

ハニーポットの種類
対象サービス
備考

Cowrie
SSH,Telnet
総当たり攻撃などを観測

Dionaea
FTP,HTTP,MySQL...etc
マルウェアの収集

Honeytrap
複数のネットワークサービスを疑似的に展開
TCPおよびUDPに対する通信の検知を行うてい対話型ハニーポット

Conpot
低対話型ICS(産業用制御システム)
産業用制御システムを模したもの

このほかにも種類はたくさんありますが、これらを一つにまとめたハニーポットが今回使用するT-POTとなります。

T-POTに含まれるハニーポットの詳細については以降で記します。


T-POT

T-POTは異なる特徴を持つハニーポットを複数稼働させ、攻撃ログを収集することが出来ます。

使用されているハニーポットやその他のコンポーネントはDockerを使ってコンテナ化されていることで、複数のハニーポットの実行やハニーポットをそれぞれの環境内に制限することを可能にさせています。

インストールも簡単で設置後すぐに使用することが可能です。


T-POTに含まれるハニーポットの詳細


  • adbhoney

  • ciscoasa

  • conpot

  • cowrie

  • dionaea

  • elasticpot

  • glutton

  • heralding

  • honeypy

  • honeytrap

  • mailoney

  • medpot

  • rdpy

  • snare

  • tanner


システム要件

T-POTはさまざまなハニーポットを実行しているということもあり、システム要件は比較的ハードルが高いです。

標準インストールで6~8GBのRAM,128GBのSSDとなっております。

他にも産業用インストールやNextGenインストールなどありますが、どれも標準インストールかそれ以上のスペックが求められます。

今回はAzureを用いてインストールを行うので、デフォルトのプランであれば満たせると思います。


T-POTのインストール

GitHubにあるT-POTのREADME.mdを参考に作業を進めていきます。

インストール方法としては以下のものがあります。

1.あらかじめ構築されたISOイメージを使用する方法

2.既に構築されているDebianなどに対してインストールを行う方法

本記事では、前回Azureで作成した仮想マシン(Debian)を利用するので、2つ目の方法を取ります。

Azureで仮想マシンを作成する方法や、SSH接続する方法は前回の記事を参照ください。

1.まずは、Azure上の仮想マシンにSSH接続を行います。

8.png

2.Azureで作成したDebianにはgitが入っていないのでaptを用いてインストールします。

すでにインストール済みの場合には飛ばしてもらっても大丈夫です。

sudo apt update

sudo apt install git

3.次にT-POTのインストールを行います。

git clone https://github.com/dtag-dev-sec/tpotce

cd tpotce/iso/installer/
sudo ./install.sh --type=user

4.上記のコマンドを入力するとインストールが始まり、少し進むとインストールオプションが選択できます。

ここではSTANDARDを選択します。

2.png

5.次にユーザー名とパスワードが問われるので入力します。

3.png

6.入力が終わるとインストールの続きが始まるので、終わるまでしばらく待ちます。

4.png

7.完了すると自動で再起動され、SSH接続が途切れます。


受信ポートの設定

次にAzure側でネットワークの設定を行います。

ハニーポット
TCP/UDP
ポート番号

Cowrie
TCP
22,23

Dionaea
TCP
21,42,135,443,445,8081...etc

Dionaea
UDP
69,5060

Glastopf
TCP
80

Honeytrap
TCP
0-65535

上記はT-POTが対応するプロトコルの一例です。

一例を書いているものの今回はHoneytrapを見てもらうと分かる通り、全ポートを使用するので0-65535ポートを許可設定にします。

受信ポート.png

これでAzure側の受信ポートの設定はおわりです。


ハニーポットの観測

最後に実際に攻撃を受けているハニーポットのログを確認します。

ブラウザから

https://<仮想マシンのパブリックIPアドレス>:64297

にアクセスすることによりT-POT内のそれぞれのハニーポットをダッシュボード上から確認できます。

kibana_dashboard.png

試しにHoneytrapのダッシュボードにアクセスしてみましょう。

final.png

たった15分間の計測でたくさん攻撃を受けていることが分かりますね。

このように攻撃されているポートや、どこの国から攻撃を受けているのかなどを手軽に確認することが出来ます。

以上で、Azureにハニーポットを設置する作業はおわりです。