今天分享的是针对证书透明度机器人的一项研究工作。作者全部来自美国纽约州立大学石溪分校。文章中将“自动化爬取谷歌证书透明度项目数据,并基于该数据发现、探测新增互联网域名”的实体称为证书透明度机器人(Certificate Transparency Bot, CT Bot)。作者搭建分布式蜜罐系统,主动向CT数据库提交包含新增域名信息的证书,随后监控并记录CT Bot对新增域名的一系列访问行为,分析其来源、目的、行为特征及团伙特性。论文发表于网络安全领域顶级会议USENIX Security 2022(录用率256/1492=17.2%)。
全文共2900字,阅读时间约8分钟。
01
【背景介绍】
图表1:证书透明度系统工作流程示意图
理论上,只要域名持有人通过公开可信的CA机构申请数字证书,便会被CT数据库记录。因此,CT数据库也成为了新增域名/网站发现的重要来源。举例来说,安全公司可以利用该数据检测新增钓鱼域名;攻击者可以利用该数据发现存在安全漏洞的新网站,并对其发起攻击;教育机构或个人研究者可将该数据用作学术研究。无论出于何种目的,由于CT证书库规模过于庞大,对该数据库的爬取和分析通常以自动化的方式进行。
02
【研究方法】
1. 整体设计
CTPOT的工作流程如图表2所示,主要包括两个部分:
• 测量采集:周期性、自动化地申请TLS证书,监听并记录服务器侧的网络访问流量;
• 数据分析:处理分析采集到的流量数据,包括统计分析、指纹识别、家族团伙聚类等。
图表2:CTPOT工作流程图
2. 域名选取
为尽可能多地触发并分辨不同CT Bot的行为,需要对证书中新增域名信息进行精心设计,这也是CTPOT系统最为关键的一步。
图表3:用于构建蜜罐域名的三类关键词示例
最终,文中选取了三类不同语义的关键词构造域名,包括:
• 仿冒类(Impersonating):知名品牌关键词,期望触发检测钓鱼网站的CT Bot;
• 敏感类(Sensitive):漏洞利用工具常用的扫描关键词,期望触发对网站发起攻击的恶意CT Bot;
• 基线类(Baseline):水果名称,作为对照。
3. 证书申请
论文利用Let's Encrypt Certbot API[7]自动化地为域名申请证书。由于Let's Encrypt对申请速率有所限制,作者选用了12个服务节点,在每个节点以4小时/张的速度进行证书申请,以保证不超过速率限制。该过程持续运行约10周,共创建TLS证书4,657张。
4. 流量监听
03
【主要发现】
1. CT Bot 规模及分布
-
在2021/11/03-2022/01/12时间范围内,CTPOT共收到来自32k IP地址的150万次HTTP访问,平均每天可观测到300-500个新出现的CT Bot IP。
图表5:每日HTTP/HTTPS流量,整体分布较平稳,尖峰与个别CT Bot单日异常活跃相关
-
各类CT Bot中,占比最高的(46.94%)为仅关注钓鱼网站的Bot。作者推测其来源可能为安全公司。
图表6:基于扫描域名关键词的CT Bot类型分类
-
在证书提交到CT后,平均5分钟便可收到来自CT Bot的扫描流量,最快的CT Bot响应时间仅为12秒。
-
被重复扫描次数最少的是带有仿冒(Impersonating)类关键词的域名。论文推测这与钓鱼检测的行为特点有关,即经过一次扫描发现钓鱼网站即可,不必采取额外操作。
2. CT Bot行为分析
-
CT Bot从证书数据中仅能得到目标域名,而实际访问时请求的路径却不止是主域名网站。作者发现超过24.1%的CT Bot都请求了主域名以外的资源路径。其中占比最高的是favicon.ico,即网站标签页的显示图标。
图表7:各类域名被CT Bot请求的具体资源路径分布
-
JA3 TLS指纹插件共识别出113种CT Bot客户端的TLS指纹,分布如图表8所示。其中,来自真实浏览器的占比仅为2%-11%。CT Bot通过User-Agent声明的浏览器占比为75%-85%,这也证实了CT Bot的浏览器伪装行为。
图表8:访问各类域名的CT Bot客户端TLS指纹类型比例分布
3. CT Bot家族团伙聚类
-
文中将共享相同请求路径的CT Bot聚类为一个团伙(campaign),共得到团伙539个,分布如图表9所示。其中105个团伙存在恶意的请求行为(请求某个安全敏感路径)。
图表9:CT Bot团伙规模及类型分布
4. 案例分析
-
该项目数据采集时间内发生了Apache Log4J漏洞事件[9]。CTPOT蜜罐系统同样收到了带有Log4J漏洞payload的攻击流量。经分析,直接发往监测点IP地址的攻击流量(68.6%)比指向域名的流量更多,而面向IP的攻击(2021年12月10日)也比域名(2021年12月12日)更早启动。该现象表明,Log4J漏洞的攻击利用主要通过全网无差别扫描发起。
04
【结论】
论文将自动爬取CT数据库,发现新增域名的各类实体称为CT Bot,围绕CT Bot生态系统开展了测量研究。作者搭建了分布式蜜罐CTPOT,通过将精心构造的域名证书提交到CT数据库,吸引各类CT Bot对受控新增域名进行爬取利用,并通过HTTP/HTTPS/Telnet/SSH/FTP记录CT Bot行为,分析其来源、目的、行为特点及团伙特性。文中采集的CT Bot访问流量数据也已开源。
原文链接
https://www.usenix.org/system/files/sec22-kondracki.pdf
参考文献
[1] Anssi incident. https://www.mozilla.org/en-US/security/advisories/mfsa2013-117/.
编辑&审校|刘保君、张一铭
原文始发于微信公众号(NISL实验室):【论文分享】不请自来的客人:分析证书透明度项目机器人的身份和行为
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论