代理蜜罐的开发与应用实战
代理蜜罐概述
蜜罐与代理蜜罐
蜜罐的概念
蜜罐是一种对攻击者进行欺骗的技术,吸引恶意攻击者的任何对象,包括系统、各种服务等,可以及时发现攻击者,并对攻击者的行为进行分析。蜜罐可以分为低交互、高交互、蜜表等种类。
- 低交互式蜜罐只允许简单的交互连接,一般部署在内网,只要有人触碰就会向安全团队报警
- 高交互式蜜罐允许攻击者入侵成功并取得系统权限,可以记录攻击者的一举一动,但可能会带来额外的风险,被攻击者作为跳板进一步攻击其他重要系统
- 蜜表是一种伪造的敏感数据,如数据库表、登录密码文件等,普通用户无法获取到,攻击者在获取时会引发报警
代理蜜罐的概念
- 代理蜜罐本身是一种代理,但是这个代理添加了使用者信息记录的功能,比如来源IP,访问的URL,请求参数与响应数据等。
- 代理蜜罐可以是sock代理,也可以是http代理,部署在外网,供黑产、黄牛、爬虫党扫描到并加入到他们的代理池中使用的
VPN蜜罐
可以记录用户的数据vpn就是vpn蜜罐,可以参考以下文章:
数据是新时代的石油,如何采集大量网民的上网数据?做一个 VPN 软件,然后让很多人用,从此开启上帝视角。
本文扒皮了NordVPN,一个月内花 $50 万投放电视广告,背后大金主是一家数据分析公司,数据分析结果会卖给出价最高的公司。
我们的代理蜜罐也可以与iptables结合改为VPN蜜罐,具体方法可以参考我之前写过的文章,基于vpn和透明代理的web漏洞扫描器的实现思路及demo,但向黑产推行我们的VPN蜜罐时成本和难度比较高,本文暂时不讨论。
代理蜜罐架构
- 代理蜜罐Agent,提供代理服务,收集http请求与响应数据并发送到server集群
- 代理蜜罐Server(支持水平扩展),接收Agent传来的数据,对数据简单判断后入库
- 后端数据库(mongodb),存储代理蜜罐的数据
- 数据分析程序,对存数的数据进行加工处理,方便管理端展示
- 管理端,查看收集到的数据与数据分析结果