点击上方“蓝字”,关注更多精彩
0x00 蜜罐简介
如果说想要捕捉一些蜜蜂,那么可以拿一个装满了蜂蜜的罐子引诱它们进来,然后蜜蜂的手脚就会被粘住不能动弹,同时这个罐子印上了蜜蜂身体的各种纹路。
这种现象在网络攻防演练中被用来制作成高度虚拟的、高度仿真的系统,刻意暴露出机器的弱点引诱黑客上门。当技术不成熟的黑客们天真地认为自己获取到了一台机器的控制权,实则是一个天大的陷阱,自己的各种攻击手法,用到的工具,联系的人都会被记录下来,从而被“受害方”溯源。那么这个系统就被称之为蜜罐。
但是需要注意的是蜜罐不能起到很好的防御作用,作用是可以用来拖延黑客的攻击,暂时甚至永久改变黑客的攻击方向。
当然还有很多功能,例如利用蜜罐来捕获计算机病毒的样本特征等,总之蜜罐的本质是欺骗与引诱。
据说20年前,一帮荷兰黑客尝试黑进大名鼎鼎的贝尔实验室的系统,而当时贝尔实验室的研究员们就设计了一个数字沙盒来引诱黑客们。这个数字沙盒就被认为是第一个蜜罐技术的落地。
1、分类
蜜罐的分类很多,不同角度可以分很多类别。
交互程度:低交互、中交互、高交互。注意交互程度越高,仿真效果越好,但是风险也越大。
设计目的:产品型,就是渗透中常见的为了减轻受保护组织将要受到的威胁;研究型专门以研究和获取攻击信息为目的而设计。
模拟目标:数据库蜜罐(类似Rogue-MySql-Server)、工控蜜罐、物联网蜜罐、web蜜罐、ssh蜜罐(kippo)等
开源蜜罐:Hfish、kippo
2、蜜罐网络
多节点的蜜罐部署,相互串联有联系,被称为现代蜜网MHN(Modern Honey Network),这里了解一下不多赘述。
3、低交互式Hfish蜜罐简介
https://hfish.io/#/
官方介绍:HFish 是一款基于 Golang 开发的跨平台多功能主动诱导型开源蜜罐框架系统,为企业安全防护精心打造,全程记录黑客攻击手段,实现防护自主化。
4、目前支持的蜜罐
5、官方使用手册
https://hfish.net/#/contribute
0x01 docker部署Hfish蜜罐
1、Hfish镜像拉取
项目官方地址:https://hub.docker.com/r/imdevops/hfish
这里我使用centos7 docker
来搭建,ubuntu
、kali
都可以。
docker search hfish --limit 5#只查看前5个,数字自定义
docker pull imdevops/hfish
2、单节点部署
输入下面这条命令运行即可,注意centos机器上不要开启与之冲突的端口,如果有请关闭。
docker run -d --name hfish -p 21:21 -p 22:22 -p 23:23 -p 69:69 -p 3306:3306 -p 5900:5900 -p 6379:6379 -p 8080:8080 -p 8081:8081 -p 8989:8989 -p 9000:9000 -p 9001:9001 -p 9200:9200 -p 11211:11211 --restart=always imdevops/hfish:latest
3、命令参数解释
-d:后台运行
端口映射 :
alway: 开机自启动容器,需要`docker`服务自启:`systemctl enable docker`否则无效 =
21 为 FTP 端口
22 为 SSH 端口
23 为 Telnet 端口
3306 为 Mysql 端口
6379 为 Redis 端口
8080 为 暗网 端口
8989 为 插件 端口
9000 为 Web 端口
9001 为 系统管理后台 端口
11211 为 Memcache 端口
69 为 TFTP 端口
5900 为 VNC 端口
8081 为 HTTP代理池 端口
9200 为Elasticsearch端口
4、关闭防火墙
systemctl stop firewalld #centos
ufw disable #ubuntu
5、访问页面
根据上面的命令解释中的端口信息,我们来访问一下看看
6、后台管理页面
账密均为admin
,登录后可以看到目前没有被遭受攻击。
7、账密修改
想要修改可以进入容器,在HFish/config.ini
修改。
这里注意下,大部分进入容器的命令后面跟的都是bash,但是这个Hfish不是,而是/bin/sh
docker exec -it 容器ID /bin/sh
进到HFish
目录下,使用自带的vi
编辑器编辑config.ini
如下图
随后docker restart 容器ID
重启容器即可,有个坑点如下图
0x02 攻击蜜罐
1、端口扫描
可以看到我的命令是tcp三次握手全扫描,0.43
秒就出了结果。
2、爆破端口与回显
可以很清晰的看到有爆破记录
hydra -L user.txt -P pass.txt ssh://192.168.159.7 -f -I -t 16 -e ns -vV
hydra -L user.txt -P pass.txt mysql://192.168.159.7 -f -I -t 16 -e ns -vV
hydra -L user.txt -P pass.txt memcache://192.168.159.7 -f -I -t 16 -e ns -vV
而且当mysql爆破成功后,查看上钩列表
Hfish
还能帮我们收集字典信息,所以蜜罐是可以用来分析计算机病毒特征的。
3、MySQL、FTP等蜜罐
其他服务都差不多一个道理,这里就展示一下FTP截图。
mysql -u root -p -h 192.168.159.7 #密码123456
ftp 192.168.159.7
4、态势感知
5、信息接口
官方提供了一套API方便我们查看收集来的信息,这里不多介绍了哈。
官方介绍:https://hfish.net/#/detail-api
0x04 分布式集群部署
刚才部署的是单节点,也就是一台机器,部署多台机器当然也是可以的。多台蜜罐机器组成的网络被称为现代蜜网(MHN),是一个很庞大复杂的网络,具体实现起来大概分两个部分,一部分部署在外网,一部分部署在内网,两个组合起来就是一个蜜网。这也是常用的架构。
我这里就不部署那么多了,我们就部署一台子节点来感受一下。
1、主节点部署
我们先删除之前centos上的蜜罐,然后重新输入下面这条命令,和之前相比,就多了个-p 7879:7879
,改了个名字。7879 为集群通信 RPC
端口,说白了就是子节点通过这个端口与主节点进行访问,达到数据互通的目的。
docker run -d --name hfish-master -p 21:21 -p 22:22 -p 23:23 -p 69:69 -p 3306:3306 -p 5900:5900 -p 6379:6379 -p 7879:7879 -p 8080:8080 -p 8081:8081 -p 8989:8989 -p 9000:9000 -p 9001:9001 -p 9200:9200 -p 11211:11211 --restart=always imdevops/hfish:latest
2、子节点部署
在另一台能互通的机器上,我这里是用的kali,使用下面这个命令。
这条命令和之前相比,改了个名字、也多了-e CLUSTER_IP=master_ip:7879 -e NODE_NAME=clinet
。解释一下:-e
参数是用来传递环境变量的,一般用于Dockerfile
文件编写中。那么这里环境变量 CLUSTER_IP
为集群主节点IP地址;环境变量 NODE_NAME
为客户端节点名称,集群唯一,不可重名。
docker run -d --name hfish-client -p 21:21 -p 22:22 -p 23:23 -p 69:69 -p 3306:3306 -p 5900:5900 -p 6379:6379 -p 8080:8080 -p 8081:8081 -p 8989:8989 -p 9000:9000 -p 9200:9200 -p 11211:11211 -e CLUSTER_IP=master_ip:7879 -e NODE_NAME=clinet --restart=always imdevops/hfish:latest
注意,这里的CLUSTER_IP=master_ip:7879,要将master_IP改为主节点的IP。
此时查看 centos
主节点的Hfish
后台管理系统,可以看到分布式集群中 Kali 虚拟机子节点:
效果测试
1、我故意访问错误几下kali的web蜜罐
2、我再故意错误访问centos
主节点的web蜜罐
3、回到centos主节点的后台,点击展示全图,就可以看到攻击者访问了哪个节点了。
0x05 小总结
通过docker部署单节点与多节点的Hfish蜜罐,并且站在“受害者”的角度对蜜罐有了一定的了解。之后会出一篇文章关于渗透测试人员如何识别蜜罐的技术探讨哈。
参考链接
https://gitee.com/lauix/HFish/
往期推荐
CVE-2021-4034 Linux Polkit本地提权漏洞
CVE-2021-31760 Webmin CSRF致使RCE
CVE-2022-22965 Spring core RCE漏洞
CVE-2020-1472 ZeroLogon漏洞复现利用(Netlogon域提权)
郑重声明:该公众号大部分文章来自作者日常工作与学习笔记,也有少数文章是经过原作者授权转载而来,未经授权,严禁转载。如需要,请公众号私信联系作者。
请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与原作者以及本公众号无关。
原文始发于微信公众号(HACK技术沉淀营):攻防对抗 | docker快速部署Hfish蜜罐
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论