我想要在Kibana上查看WOWHoneypot的日志
我想尝试使用WOWHoneypot来设置蜜罐。
WOWHoneypot: 为初学者提供!欢迎攻击者的 Web 蜜罐
由于需要检查服务器访问日志,并且部分日志采用Base64编码,因此我们决定使用Kibana进行可视化。
请谅解,尽管我的自身经验有限,有些方面还不够成熟,但请宽容以待…
前提 tí)
本次我选择先在VMware上构建,然后再迁移到AWS的过程。下面只记录VMware上的构建部分。
-
- OS: Centos7系
-
- メモリ2GB, プロセッサ2推奨
- NAT設定もお忘れなく
准备工作
安装
安装Git和Python3
可选择安装Vim
$ yum -y install git
$ yum -y install python3
$ yum -y install vim
防火墙设置
我会打开8080、5601和9200端口。
# firewall-cmd --zone=public --add-port=8080/tcp --permanent
# firewall-cmd --zone=public --add-port=5601/tcp --permanent
# firewall-cmd --zone=public --add-port=9200/tcp --permanent
# firewall-cmd --reload
接下来,将端口号从80转发到8080(虽然不是绝对必要的,但从浏览器访问时会更为便捷)。
当用户访问80号端口时,请设置为跳转到8080端口。
# firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080 --permanent
# firewall-cmd --reload
安装的东西 de xi)
-
- WOWHoneypot
-
- Fluentd (td-agent)
-
- elastic search
- kibana
构成形象

哇喔蜜罐
WOWHoneypot是什么?
-
- 攻撃者をおもてなしする Web ハニーポット
- 送信元からの HTTP リクエストをそのまま保存するので、後からじっくりゆっくりログ分析をすることが可能
Github: https://github.com/morihisa/WOWHoneypot
WOWHoneypot 安装指南
只需要从git克隆即可
例如:将克隆放在/opt/目录下的步骤
$ cd /opt/
$ git clone https://github.com/morihisa/WOWHoneypot
如果opt文件夹下存在”WOWHoneypot”,就没问题。
WOWHoneypot 开启确认
启动「wowhoneypot.py」
$ cd /opt/WOWHoneypot
$ python3 ./wowhoneypot.py

在此之后,访问http://”ip地址”
若出现如下所示的屏幕,则表示操作成功。

如果您想用背包磨床移动,请参考以下网站:https://qiita.com/hogehuga/items/cad931485f58ae487d53。
确认WOWHoneypot的访问日志
当通过浏览器访问时,会向“access_log”写入日志。
$ tail /opt/WOWHoneypot/log/access_log
然后,通过使用Fluentd插件,我们可以同时进行解码并将其传输到elasticsearch,因此我们将进行相应的设置。
流利的
流畅日志(Fluentd或td-agent) 是什么?

-
- データ収集ソフトウェア
-
- 主にRubyで構成されている
- 今回インストールする「td-agent」は、Fluentdの安定版
部署 Fluentd 的步骤
输入以下命令,执行yum
# curl -L https://toolbelt.treasuredata.com/sh/install-redhat-td-agent3.sh | sh
インストールされたか確認
# yum list | grep td-agent
td-agent.x86_64 3.8.1-0.el7 @treasuredata
安装Fluentd插件。
安装插件以将日志传送到Elasticsearch并解码base64。
安装td-agent后,将有一个名为”td-agent-gem”的命令可用,使用该命令进行安装。
用于查找插件的网站
# td-agent-gem install elasticsearch
# td-agent-gem install fluent-plugin-filter-base64-decode
确认 Fluentd 是否已启动。
用systemctl启动
# systemctl start td-agent
# systemctl enable td-agent
activeになっていれば成功
# systemctl status td-agent
Elasticsearch与kibana
Elasticsearch 是什么

-
- 分散検索/分析エンジン
- ログ分析、フルテキスト検索、セキュリティインテリジェンス、ビジネス分析、およびオペレーショナルインテリジェンスのユースケースに広く使用されている
Kibana 是什么?

-
- Elasticsearch専用のデータ視覚化ダッシュボードソフトウェア
- ログの可視化に用いられることが多い
当谈到日志可视化时,Elasticsearch和Kibana基本上被认为是一套(这只是我的印象)。
Elasticsearch Kibana 安装步骤
安装Java
# yum install java-1.8.0-openjdk-devel -y
# java -version
openjdk version "1.8.0_312"
OpenJDK Runtime Environment (build 1.8.0_312-b07)
OpenJDK 64-Bit Server VM (build 25.312-b07, mixed mode)
安装Elasticsearch PGP密钥
# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
注册 Elasticsearch 存储库
# vim /etc/yum.repos.d/elasticsearch.repo
# 下記を入力し、ファイルを保存
[elasticsearch]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=0
autorefresh=1
type=rpm-md
安装Elasticsearch Kibana
一起安装Kibana(需要一些时间)。
# yum install -y --enablerepo=elasticsearch elasticsearch kibana
-
- Kibanaに利用するIPアドレスの設定
- サーバに割り当てられているIPアドレスにアクセスできるよう設定
# vim /etc/kibana/kibana.yml
↓を追加
server.host: "0.0.0.0"
确认 Elasticsearch Kibana 是否启动
使用systemctl命令启动,需要一些时间。
# systemctl start elasticsearch kibana
# systemctl enable elasticsearch kibana
使用 Elasticsearch
只需以以下方式显示即可
# curl localhost:9200
{
"name" : "localhost.localdomain",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "CDwf8sbpTfap9zd7CNDaRw",
"version" : {
"number" : "7.15.1",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "83c34f456ae29d60e94d886e455e6a3409bba9ed",
"build_date" : "2021-10-07T21:56:19.031608185Z",
"build_snapshot" : false,
"lucene_version" : "8.9.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
Kibana 访问
请访问IP地址为”IPアドレス”的5601端口。
如果出现如下的画面显示,那就可以了。

在Kibana上查看8个日志
-
- FluentdでWOWHoneypotのログの取得・フォーマット・デコード
- 取得したログをElasticsearchへ転送
※假设WOWHoneypot已经在opt目录下克隆,并进行下一步操作。
Fluentd的配置
填写获取日志的配置。
省略正则表达式等详细说明。
# vim /etc/td-agent/td-agent.conf
下記のコードを張り付け
<source>
@type tail
format /^\[(?<time>[^\]]*)\] (?<clientip>[^ ]*) (?<hostname>[^ ]*) "(?<method>\S+)(?: +(?<path>[^ ]*) +\S*)?" (?<status>[^ ]*) (?<mrrid>[^ ]*) (?<requestbody>[^ ]*)$/
time_format %Y-%m-%d %H:%M:%S%z
path /opt/WOWHoneypot/log/access_log
pos_file /var/log/td-agent/wowhoneypot.log.pos
tag wowhoneypot-access
</source>
<filter wowhoneypot-access>
@type base64_decode
fields requestbody
</filter>
<match wowhoneypot-access>
@type elasticsearch
host localhost
port 9200
logstash_format true
</match>
--再起動
# systemctl restart td-agent
通过Kibana查看日志
访问 Kibana,从侧边栏点击“Discover”。

我认为会显示如下画面,请点击”创建索引模式”。

在Name标签中选择”logstash*”,在Timestanp字段中选择”@timestamp”,然后点击右下角的”创建索引模式”。

稍后,启动WOWHoneypot,并进行几次访问以获取日志记录。
当您访问WOWHoneypot后,稍等片刻,将显示如下日志。
