Midnight Monologues

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

Cowrieでアクセスログを確認する

T-PotでCowrieのログを確認してみた。

事前準備

# tree  --charset=C -d L 2 /data
/data
|-- adbhoney
|   |-- downloads
|   `-- log
|-- ciscoasa
|   `-- log
|-- citrixhoneypot
|   `-- logs
|-- conpot
|   `-- log
|-- cowrie
|   |-- downloads
|   |-- keys
|   |-- log
|   |   `-- tty
|   `-- misc
|-- dicompot
|   |-- images
|   `-- log
|-- dionaea
|   |-- binaries
|   |-- bistreams
|   |-- conf
|   |-- log
|   |-- roots
|   |   |-- ftp
|   |   |-- tftp
|   |   |-- upnp
|   |   `-- www
|   `-- rtp
|-- elasticpot
|   `-- log
|-- elk
|   |-- data
|   |   `-- nodes
|   |       `-- 0
|   |           |-- indices
|   |           `-- _state
|   `-- log
|-- emobility
|   `-- log
|-- ews
|   `-- conf
|-- fatt
|   `-- log
|-- glutton
|   `-- log
|-- heralding
|   `-- log
|-- honeypy
|   `-- log
|-- honeysap
|   `-- log
|-- honeytrap
|   |-- attacks
|   |-- downloads
|   `-- log
|-- mailoney
|   `-- log
|-- medpot
|   `-- log
|-- nginx
|   |-- cert
|   |-- conf
|   |-- heimdall
|   `-- log
|-- p0f
|   `-- log
|-- rdpy
|   `-- log
|-- spiderfoot
|-- suricata
|   `-- log
`-- tanner
    |-- files
    `-- log

T-PotのCowrie(カウリ)の/dataフォルダ配下の構成は以下の通り。

①/data/cowrie/cowrie.json 
 JSON形式のトランザクションログ
②/data/cowrie/log/tty/<ハッシュ値>
 playlogユーティリティで再生可能なセッションログ
③/data/cowrie/log/downloads/<ハッシュ値>
 攻撃者からハニーポットに転送された実ファイル

回収したログの確認のため、事前にplaylogを含むCowrieのイメージをGitからダウンロードしておく。
playlogユーティリティはダウンロードしたものを利用する。

# git clone https://github.com/micheloosterhof/cowrie.git
# cd cowrie

確認結果

①cowrie.json ログ

 アクセスログJSON形式で保存されている。

# tail -n 1 /data/cowrie/log/cowrie.json
{"eventid":"cowrie.session.closed","duration":181.31627750396729,"message":"Connection lost after 181 seconds","sensor":"c84918ce61bf","timestamp":"2021-02-13T05:28:02.101286Z","src_ip":"XXX.XXX.XXX.XXX","session":"1b2eb96f07d6"}

②ttyログ

 playlogユーティリティで再現できるttyログが保存されている。playlogは入力時間や処理時間も含めて実際の処理が確認できる。

f:id:SYN-ACK:20210213143734g:plain
playlogユーティリティのサンプル

③採取ファイル

 downloadsフォルダ配下はハニーポットに転送されたファイル(malware/emptyファイル/certファイルなど)が送付される。

# ls -al /data/cowrie/downloads
total 636
drwxrwx--- 2 tpot tpot   4096 Feb 13 05:21 .
drwxrwx--- 6 tpot tpot   4096 Feb 12 07:49 ..
-rw-r--r-- 1 tpot tpot   4766 Feb 12 19:43 39380d5e68d3f3bd4b6436e74c1687a5e06bc7c56394ed527e97312e78aa93b2
-rw------- 1 tpot tpot 625867 Feb 12 16:47 4ed261e47303fe842557fa9797de873c28bc6579f8e63486a1431d5de622ac3a
-rw-r--r-- 1 tpot tpot    673 Feb 13 01:13 545b7c5a1523277111f9722d605dd1b7cd95c1e3463e93492115a6d4edd4e72e
-rw-r--r-- 1 tpot tpot    389 Feb 12 09:59 a8460f446be540410004b1a8db4083773fa46f7fe76fa84219c93daa1669f8f2
-rw------- 1 tpot tpot      0 Feb 13 04:16 tmpcrqx1beg
-rw------- 1 tpot tpot      0 Feb 12 12:31 tmpy60y2hbc
#
# file /data/cowrie/downloads
/data/cowrie/downloads: directory
#
# file /data/cowrie/downloads/*
/data/cowrie/downloads/39380d5e68d3f3bd4b6436e74c1687a5e06bc7c56394ed527e97312e78aa93b2: data
/data/cowrie/downloads/4ed261e47303fe842557fa9797de873c28bc6579f8e63486a1431d5de622ac3a: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, for GNU/Linux 2.6.9, not stripped
/data/cowrie/downloads/545b7c5a1523277111f9722d605dd1b7cd95c1e3463e93492115a6d4edd4e72e: ASCII text
/data/cowrie/downloads/a8460f446be540410004b1a8db4083773fa46f7fe76fa84219c93daa1669f8f2: OpenSSH RSA public key
/data/cowrie/downloads/tmpcrqx1beg:                                                      empty
/data/cowrie/downloads/tmpy60y2hbc:                                                      empty

参考