蜜罐 技术本质上是一种对攻击方进行 欺骗的技术,通过布置一些作为 诱饵的主机、网络服务 或者 数据,诱使黑客(攻击方)对它们实施攻击,从而可以通过对攻击行为进行 捕获 和 分析,了解攻击方所使用的工具与方法,推测攻击意图和动机.
而且蜜罐还可以详细地记录攻击者攻击过程中的许多痕迹,以及收集到大量有价值的数据,如病毒或蠕虫的源码、黑客的攻击思路等,从而可以为防守方提供丰富的溯源数据。能够让防御方清晰地了解所面对的安全威胁,并通过针对性的技术和管理手段来增强实际系统的安全防护能力。
注: 蜜罐仍然存在安全隐患,如果没有做好隔离,可能成为新的攻击源。
按用途分类:
蜜罐可以分为研究型蜜罐和产品型蜜罐。研究型蜜罐一般是用于研究各类网络威胁,寻找应对的方式,不增加特定组织的安全性。产品型蜜罐主要是用于防护的商业产品。
按交互方式分类:
蜜罐可以分为:
低交互蜜罐模拟网络服务响应和攻击者交互,容易部署和控制攻击,但是模拟能力会相对较弱,对攻击的捕获能力不强。
高交互蜜罐不是简单地模拟某些协议或服务,而是提供真实的攻击系统,使得他们猜测他们被转移或观察的可能性大大降低。由于系统仅作为诱饵出现,因此发现的任何流量都是恶意存在的,因此可以轻松发现威胁并跟踪和跟踪攻击者的行为。通过使用高交互蜜罐,研究人员可以了解攻击者用于升级权限的工具,或者他们为尝试发现敏感数据而进行的横向移动。
蜜罐主要涉及到的是伪装技术,主要涉及到进程隐藏、服务伪装等技术。
蜜罐之间的隐藏,要求蜜罐之间相互隐蔽。进程隐藏,蜜罐需要隐藏监控、信息收集等进程。伪服务和命令技术,需要对部分服务进行伪装,防止攻击者获取敏感信息或者入侵控制内核。数据文件伪装,需要生成合理的虚假数据的文件.
攻击者也会尝试对蜜罐进行识别。
比较容易的识别的是低交互的蜜罐,尝试一些比较复杂且少见的操作能比较容易的识别低交互的蜜罐。相对困难的是高交互蜜罐的识别,因为高交互蜜罐通常以真实系统为基础来构建,和真实系统比较近似。对这种情况,通常会基于虚拟文件系统和注册表的信息、内存分配特征、硬件特征、特殊指令等来识别.
HFish 是一款基于 Golang 开发的跨平台多功能主动诱导型开源蜜罐框架系统,为了企业安全防护做出了精心的打造,全程记录黑客攻击手段,实现防护自主化。
项目地址
Github : https://github.com/hacklcx/HFish
码云(Gitee) : https://gitee.com/lauix/HFish
官方使用文档
Docker 拉取镜像
docker pull imdevops/hfish
搭建
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
效果截图
截图1:
截图2:
才搭建成功没几分钟,就有了好几个来自全球各地的IP扫我服务器,看来得抓紧提升技术了,毕竟怎么说也得搞回去吧!
error1.docker pull nethttp TLS handshake timeout
方法1:
自建梯子
方法2:
使用国内源,下面用国内源
echo "DOCKER_OPTS=\"\$DOCKER_OPTS --registry-mirror=http://f2d6cb40.m.daocloud.io\"" | sudo tee -a /etc/default/docker
error2.port is already allocated.
step1:
查看占用该端口的容器:
docker ps -a
step2:
终止该容器:
docker stop CONTAINER_ID
error3.9000等端口无法加载
添加策略对外打开指定的端口,在服务器控制台设置安全组,即在入站规则里放通需要布置蜜罐的端口.
error4.OCI runtime exec failed
无法进入到容器的终端中,因为docker镜像中的/bin/bash文件并不存在,存在的是/bin/sh文件,于是使用命令docker exec -it 容器名/容器ID /bin/sh进入,终于成功:
docker exec -it ID /bin/sh
参考文章:
We安全学习笔记
https://sosly.me/
https://hfish.io/docs/#/