原理

蜜罐是一种对防御方进行欺骗的技术,通过布置一些作为诱饵的网络服务、产品平台、文件信息等,诱使供给方实施攻击,从而捕获攻击行为、样本、工具等,分析攻击机战术

蜜罐基于欺骗诱捕技术,可掌握攻击方所使用的工具与方法,推测攻击意图和动机,能够让防御方清晰地清楚自己所面临的安全威胁

通过在公网部署蜜罐,我们可以化被动为主动,实现主动防御、溯源反制行动

分类

按照蜜罐和攻击者交互程度划分,可分为:低、高交互性蜜罐

  • 低交互:能仿真某个业务功能;进行简单的交互
  • 高交互:能仿真真实业务逻辑,仿真级别更深入;攻击者能进行完全交互,进行全面捕获

产品

开源的有Hish\KIPPO\OPENCANARY\HoneyDrive\T-Pot……

Hish

是一款社区型免费蜜罐,侧重企业安全场景,从内网关陷检测、外网威胁感知、威胁情报生产三个场景出发,为用户提供可独立操作且使用的功能,通过安全、敏捷、可靠的中低交互蜜罐增加用户在失陷感知和威胁情报领域的能力

有超过40种蜜罐环境,可高度自定义蜜饵能力

架构

采用B/S架构,系统由管理端和节点端组成,管理段用来生成和管理节点端,并接收、分析和展示节点端回传的数据

在蜜罐中,管理端只用于数据的分析和展示、节点端进行虚拟蜜罐,最后由蜜罐来承受攻击

种类

不仅仅支持HTTP(S)蜜罐,话支持SSH、SFTP、Redis、Mysql、FTP、Telnet、暗网等

扩展性:提供API接口,可以随意扩展蜜罐模块

便捷性:使用GOlanh开发,支持跨平台快速部署

常见技术

隐藏技术

蜜罐主要涉及到的是伪装技术,主要涉及到进程隐藏、服务伪装等技术。

蜜罐之间的隐藏,要求蜜罐之间相互隐蔽。进程隐藏,蜜罐需要隐藏监控、信息收集等进程。伪服务和命令技术,需要对部分服务进行伪装,防止攻击者获取敏感信息或者入侵控制内核。数据文件伪装,需要生成合理的虚假数据的文件。

牵引技术

蜜罐牵引技术是在识别到攻击者流量后,通过在正式环境中改变路由、返回特定响应的方式将攻击者牵引到特定的蜜罐地址。 常见的牵引技术有下面几种:

  • 防火墙牵引
  • SDN牵引
  • ARP牵引
  • WAF牵引

诱饵技术

可以在互联网中部署一定的诱饵来吸引攻击者进入特定的蜜罐中。 常见的诱饵有域名诱饵、Github 诱饵、网盘诱饵、邮件诱饵、主机诱饵、文件诱饵、漏洞诱饵等。

域名诱饵指使用特定的在字典中且有意义的主域名做为诱饵,比如 vpn.example.com / oa.example.com 等。

Github 诱饵指在 Github 中放置代码文件、失陷凭证的方式。

文件诱饵是在容易失陷的主机中放置虚假的拓扑图,关键系统IP的文件,从而诱导攻击者的方式。

漏洞诱饵通过部署存在特定漏洞特征的蜜罐站,吸引攻击者攻击。

反制技术

蜜罐可以使用一些方式对攻击者进行反制,常见的方式有Jsonp、安全工具漏洞、Client漏洞反制、文件反制等方式。

Jsonp主要是使用各大网站的Jsonp获取攻击者已经登录的社交账号,用以溯源。 另外如果攻击者使用流量的方式访问蜜罐网站,可以使用运营商接口获取攻击者的手机号。

安全工具漏洞是指使用安全工具的漏洞进行反制,例如Git泄露工具存在的文件泄露漏洞,基于Electron的工具存在的XSS to RCE等。

Client反制,指使用虚假的Server对存在漏洞的客户端进行反制,例如通过MySQL Client读取文件,基于RDP/SMB的漏洞进行RCE。

反制文件,指在蜜罐环境中设置特定的文件,例如伪装的VPN客户端、特定插件来诱导攻击者点击。

DoS反制,在获取到攻击者的C2样本后,可以通过批量上线的方式影响C2攻击者的控制服务器。

识别技术

攻击者也会尝试对蜜罐进行识别。比较容易的识别的是低交互的蜜罐,尝试一些比较复杂且少见的操作能比较容易的识别低交互的蜜罐。相对困难的是高交互蜜罐的识别,因为高交互蜜罐通常以真实系统为基础来构建,和真实系统比较近似。对这种情况,通常会基于虚拟文件系统和注册表的信息、内存分配特征、硬件特征、特殊指令等来识别。

协议实现识别

部分蜜罐在实现的过程中,协议的部分参数固定或随机的范围有限,可以通过特定参数的范围来识别蜜罐。

部分蜜罐协议支持的版本范围为某一特定版本范围,可以通过对应的版本范围来推测是否为蜜罐。

部分蜜罐在交互过程中有探测客户端特征的交互,可以通过这些交互过程来识别蜜罐。

部分蜜罐对不正确的请求也返回正常的相应,可以通过这种特征来判定蜜罐。

环境特征

部分蜜罐的用户名、密码固定,或内存使用、进程占用等动态特征变化较为规律,可以通过这种方式来判断是否为蜜罐。

种类

image.png