|
HFish蜜罐搭建踩坑
HFish蜜罐
最近更换服务器,也搞了个蜜罐玩,发现在免费的蜜罐中,HFish是一款非常好用的蜜罐。但是网上的教程大多都是v0.6版本左右的教程,虽然v0.6的HFish作为一款单机版的蜜罐,功能依然是十分的强大,但是既然有更强大的蜜罐,为什么不去使用呢。
相较于单机版的HFish,V2版本的HFish,虽然不再开源,但是依然免费对个人用户和企业用户开放,且新增了许多的功能,比如web端的wordpress蜜罐、各种oa、交换机的蜜罐等,并且可以我们部署一个管理端,然后在其他多个节点部署客户端,这样我们的管理端不暴露在外,可以很有效的保证我们的蜜罐的真实性,其次呢,相较v0版本,也就是单机版的HFish,通过配置微步的api去批量获取威胁情报、提供钉钉、飞书等告警信息的提示接口、以及本身提供的api都可以让我们很轻松的去获取我们想要得到的信息。
搭建
其实HFish蜜罐的搭建还是十分简单的,但是如果大家想要搭建最新版本的蜜罐,最好还是根据官网的操作引导去搭建,比如我像将HFish搭建在docker中,一开始使用docker search HFish的命令去搜索,虽然成功的找到了HFish的镜像,但是搭建完成却发现是单机版的。所以这里还是建议大家按照官方的指引去进行安装。
HFish官网地址
HFish github地址
HFish gitee地址
在根据官方的指引安装之前,我们首先需要安装一个myqsql数据库,然后在这个数据库中创建一个数据库,用来存放我们蜜罐的数据。
这里我使用的方法是在docker中安装,首先确定docker安装好后,直接复制下面的命令就会安装最新版的Hfish。
docker run -itd --name hfish
-v /usr/share/hfish:/usr/share/hfish
--network host
--privileged=true
threatbook/hfish-server:latest
然后使用命令配置自动更新。
docker run -d --name watchtower --restart unless-stopped -v /var/run/docker.sock:/var/run/docker.sock --label=com.centurylinklabs.watchtower.enable=false --privileged=true containrrr/watchtower --cleanup hfish --interval 3600
其实按照官方的说法,这样就已经配置完成了,我们可以在如下的地址中进行登陆。
登陆地址:https://ip:4433/web/
初始用户名:admin
初始密码:HFish2021
登陆之后呢,会让我们选择,我们选择哪个mysql的数据库版本,然后输入我们创建的数据库的地址、用户名、密码等,然后就会进入到初始页面。
此时,我们点击左边的节点管理,然后找到我们的内置节点,点击展开,就可以看到我们开启的蜜罐的信息了。当然,我们也可以点击下面的添加蜜罐服务来增加我们想要的蜜罐。而且我们可以看到我们开启的蜜罐所使用的端口号,以及设置http、https等。
好了,现在我们已经选择好了我们要开启的蜜罐,但是我们会发现个问题,我们捕获不到任何的攻击,哪怕我们自己使用渗透工具去进行扫描,都不会有任何的提示。其实原因是,我们这总方法搭建的蜜罐,是在docker中,我们可以打开其dockerfile进行查看其在docker中默认的配置。
我们可以看到,其默认只映射了4433,也就是管理端口,我们开启的蜜罐的端口没有被映射出去,所以我们无法访问到我们配置的蜜罐。当然,其实官方的初衷,我们这个管理端主要是搭建在内网当中,然后使用子节点去运行蜜罐,而我们没有子节点,所以只能在管理段中开启蜜罐。
FROM alpine:latest
COPY ./hfish /opt/hfish
RUN mkdir /lib64 && ln -s /lib/libc.musl-x86_64.so.1 /lib64/ld-linux-x86-64.so.2
EXPOSE 4433 4434
WORKDIR /opt/hfish
CMD ["./server"]
所以我们现在需要进入服务器,使用命令找到我们当前的HFish容器。
docker ps -a
然后使用命令,删除容器。
docker rm -f ID
然后回到我们的管理端页面,注意此时不要刷新,如果刷新我们就看不到东西了,我们的容器已经被我们删除了,然后查看我们开启的蜜罐所使用的端口。
修改官方给我们的启动命令如下,这里的-p需要根据自己开启的蜜罐的端口进行相应的映射,而且最好将我们常用的比如ssh端口等修改到高端口,将蜜罐的ssh端口映射到服务器的22端口上。当然我们也可以在蜜罐中直接修改服务的端口。这样我们就可以成功的捕获他人的攻击行为了。
docker run -itd -p 22:22 -p 9090:9090 -p 6379:6379 -p 135:135 -p 139:139 -p 3389:3389 -p 9093:9093 -p 9194:9194 -p 9099:9099 -p 23:23 -p 3307:3307 --name hfish -v /usr/share/hfish:/usr/share/hfish --network host --privileged=true 镜像ID
配置微步API
当我们获取到了攻击者的攻击信息后,往往下一步要做的就是溯源,而我们溯源最常用的微步,当然必不可少,我们在情报对接中,可以配置我们的微步API密钥,来自动获取攻击者的威胁情报。
进入下面的网页登陆,或者直接点击有右边的登陆直接跳转到对应界面,然后登陆微步。
https://passport.threatbook.cn/login?callbackURL=https://x.threatbook.cn/nodev4/vb4/myAPI&s=onefishv2.0.0
此时我们就可以在最上方看到我们的apikey了,将其复制到我们的HFish中,并且在微步中输入我们服务器的ip,我们就可以自动的去获取威胁情报了。
当然,我们的HFish也给我们提供了一些接口供我们调用,我们可以在API配置一栏看到具体的使用。此时我们的HFish蜜罐就已经搭建完成了,我们只需要惊呆了鱼儿上钩就可以了。
关注公众号获取更多内容
推荐阅读
原文始发于微信公众号(藏剑安全):HFish蜜罐搭建踩坑
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论