攻防对抗 | docker快速部署Hfish蜜罐

admin 2022年5月19日01:24:22评论129 views字数 4071阅读13分34秒阅读模式
攻防对抗 | docker快速部署Hfish蜜罐

点击上方“蓝字”,关注更多精彩


0x00 蜜罐简介

如果说想要捕捉一些蜜蜂,那么可以拿一个装满了蜂蜜的罐子引诱它们进来,然后蜜蜂的手脚就会被粘住不能动弹,同时这个罐子印上了蜜蜂身体的各种纹路。

这种现象在网络攻防演练中被用来制作成高度虚拟的、高度仿真的系统,刻意暴露出机器的弱点引诱黑客上门。当技术不成熟的黑客们天真地认为自己获取到了一台机器的控制权,实则是一个天大的陷阱,自己的各种攻击手法,用到的工具,联系的人都会被记录下来,从而被“受害方”溯源。那么这个系统就被称之为蜜罐。

但是需要注意的是蜜罐不能起到很好的防御作用,作用是可以用来拖延黑客的攻击,暂时甚至永久改变黑客的攻击方向。

当然还有很多功能,例如利用蜜罐来捕获计算机病毒的样本特征等,总之蜜罐的本质是欺骗与引诱

据说20年前,一帮荷兰黑客尝试黑进大名鼎鼎的贝尔实验室的系统,而当时贝尔实验室的研究员们就设计了一个数字沙盒来引诱黑客们。这个数字沙盒就被认为是第一个蜜罐技术的落地。

1、分类

蜜罐的分类很多,不同角度可以分很多类别。

交互程度:低交互、中交互、高交互。注意交互程度越高,仿真效果越好,但是风险也越大。

设计目的:产品型,就是渗透中常见的为了减轻受保护组织将要受到的威胁;研究型专门以研究和获取攻击信息为目的而设计。

模拟目标:数据库蜜罐(类似Rogue-MySql-Server)、工控蜜罐、物联网蜜罐、web蜜罐、ssh蜜罐(kippo)等

开源蜜罐:Hfish、kippo

2、蜜罐网络

多节点的蜜罐部署,相互串联有联系,被称为现代蜜网MHN(Modern Honey Network),这里了解一下不多赘述。

3、低交互式Hfish蜜罐简介

https://hfish.io/#/

官方介绍:HFish 是一款基于 Golang 开发的跨平台多功能主动诱导型开源蜜罐框架系统,为企业安全防护精心打造,全程记录黑客攻击手段,实现防护自主化。

攻防对抗 | docker快速部署Hfish蜜罐

4、目前支持的蜜罐

攻防对抗 | docker快速部署Hfish蜜罐

5、官方使用手册

https://hfish.net/#/contribute

攻防对抗 | docker快速部署Hfish蜜罐

0x01 docker部署Hfish蜜罐

1、Hfish镜像拉取

项目官方地址:https://hub.docker.com/r/imdevops/hfish

这里我使用centos7 docker 来搭建,ubuntukali都可以。

docker search hfish --limit 5#只查看前5个,数字自定义docker pull imdevops/hfish

攻防对抗 | docker快速部署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:后台运行 -p: 端口映射 --restart=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 #centosufw disable #ubuntu

5、访问页面

根据上面的命令解释中的端口信息,我们来访问一下看看

攻防对抗 | docker快速部署Hfish蜜罐

6、后台管理页面

账密均为admin,登录后可以看到目前没有被遭受攻击。

攻防对抗 | docker快速部署Hfish蜜罐

攻防对抗 | docker快速部署Hfish蜜罐

攻防对抗 | docker快速部署Hfish蜜罐

7、账密修改

想要修改可以进入容器,在HFish/config.ini修改。

这里注意下,大部分进入容器的命令后面跟的都是bash,但是这个Hfish不是,而是/bin/sh

docker exec -it 容器ID /bin/sh

攻防对抗 | docker快速部署Hfish蜜罐

进到HFish目录下,使用自带的vi编辑器编辑config.ini如下图

攻防对抗 | docker快速部署Hfish蜜罐

随后docker restart 容器ID重启容器即可,有个坑点如下图

攻防对抗 | docker快速部署Hfish蜜罐

0x02 攻击蜜罐

1、端口扫描

可以看到我的命令是tcp三次握手全扫描,0.43秒就出了结果。

攻防对抗 | docker快速部署Hfish蜜罐

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

攻防对抗 | docker快速部署Hfish蜜罐

而且当mysql爆破成功后,查看上钩列表

攻防对抗 | docker快速部署Hfish蜜罐

Hfish还能帮我们收集字典信息,所以蜜罐是可以用来分析计算机病毒特征的

攻防对抗 | docker快速部署Hfish蜜罐

3、MySQL、FTP等蜜罐

其他服务都差不多一个道理,这里就展示一下FTP截图。

 mysql -u root -p -h 192.168.159.7 #密码123456 ftp 192.168.159.7

攻防对抗 | docker快速部署Hfish蜜罐

4、态势感知

攻防对抗 | docker快速部署Hfish蜜罐

5、信息接口

官方提供了一套API方便我们查看收集来的信息,这里不多介绍了哈。

官方介绍:https://hfish.net/#/detail-api

攻防对抗 | docker快速部署Hfish蜜罐


0x04 分布式集群部署

刚才部署的是单节点,也就是一台机器,部署多台机器当然也是可以的。多台蜜罐机器组成的网络被称为现代蜜网(MHN),是一个很庞大复杂的网络,具体实现起来大概分两个部分,一部分部署在外网,一部分部署在内网,两个组合起来就是一个蜜网。这也是常用的架构。

我这里就不部署那么多了,我们就部署一台子节点来感受一下。

攻防对抗 | docker快速部署Hfish蜜罐

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

攻防对抗 | docker快速部署Hfish蜜罐

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。

攻防对抗 | docker快速部署Hfish蜜罐

此时查看 centos主节点的Hfish 后台管理系统,可以看到分布式集群中 Kali 虚拟机子节点:

攻防对抗 | docker快速部署Hfish蜜罐

效果测试

1、我故意访问错误几下kali的web蜜罐

攻防对抗 | docker快速部署Hfish蜜罐

2、我再故意错误访问centos主节点的web蜜罐

攻防对抗 | docker快速部署Hfish蜜罐

3、回到centos主节点的后台,点击展示全图,就可以看到攻击者访问了哪个节点了。

攻防对抗 | docker快速部署Hfish蜜罐

攻防对抗 | docker快速部署Hfish蜜罐


0x05 小总结

通过docker部署单节点与多节点的Hfish蜜罐,并且站在“受害者”的角度对蜜罐有了一定的了解。之后会出一篇文章关于渗透测试人员如何识别蜜罐的技术探讨哈。

参考链接

https://gitee.com/lauix/HFish/

攻防对抗 | docker快速部署Hfish蜜罐

往期推荐

基础级 | python与msf交互编写自动化exp

实战经验 | 解决ssh链接VPS掉线问题

内网渗透 | 文件共享服务与ipc横向详解

内网渗透 | JS脚本下载payload与代码分析

内网渗透 | 内网隐藏技术之我见

红队建设 | 入侵痕迹抹除

红队建设 | 网络钓鱼技术

红队建设 |  流量加密

红队建设 | certutil详解

每日技巧05 | VM16安装macOS

Clash RCE漏洞复现与高级利用(配合社工)

CVE-2021-4034 Linux Polkit本地提权漏洞

CVE-2021-31760 Webmin CSRF致使RCE

CVE-2022-22965 Spring core RCE漏洞

                CVE-2020-1472 ZeroLogon漏洞复现利用(Netlogon域提权)

郑重声明该公众号大部分文章来自作者日常工作与学习笔记,也有少数文章是经过原作者授权转载而来,未经授权,严禁转载。如需要,请公众号私信联系作者。

请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与原作者以及本公众号无关。

攻防对抗 | docker快速部署Hfish蜜罐
攻防对抗 | docker快速部署Hfish蜜罐
扫码关注
人若无名便可潜心练剑
专注渗透测试、工具开发

原文始发于微信公众号(HACK技术沉淀营):攻防对抗 | docker快速部署Hfish蜜罐

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
未分类
admin
  • 本文由 发表于 2022年5月19日01:24:22
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   攻防对抗 | docker快速部署Hfish蜜罐http://cn-sec.com/archives/1019540.html

发表评论

匿名网友 填写信息