天天看点

ABPTTS加密HTTP隧道工具流量分析

作者:老李讲安全

1、概述

在企业面对的攻击事件中,攻击者经常构造HTTP加密隧道进行通信。实现HTTP加密隧道的工具比较多,其中ABPTTS比较常见。ABPTTS支持在HTTP加密隧道中承载RDP、SSH、Meterpreter等协议、工具的交互与连接,逃避防火墙和IDS等明文流量检测设备的审计。ABPTTS产生的HTTP隧道流量具备两个显著特点,第一是每次使用会随机生成HTTP请求头来模拟正常的HTTP请求;第二是HTTP请求体内容加密,在不掌握密钥的前提下无法进行解密,因此利用明文字段校验匹配等检测手段很难识别。

2、ABPTTS隧道搭建

下载工具

git clone https://github.com/nccgroup/ABPTTS.git

下载后配置环境和生成payload

安装依赖

pip2 install httplib2

pip2 install pycrypto

生成payload

python2 abpttsfactory.py -o server

ABPTTS加密HTTP隧道工具流量分析
ABPTTS加密HTTP隧道工具流量分析

启动HTTP隧道

将脚本上传服务器并VPS执行脚本

ABPTTS加密HTTP隧道工具流量分析

通过隧道封装RDP流量,连接远程桌面

ABPTTS加密HTTP隧道工具流量分析

3、ABPTTS流量分析

单流特征检测

ABPTTS在请求头和载荷加密方面进行了一定处理,但是从单流层面仍然存在一系列特征。这些特征表现在请求方式、特殊请求头字段格式、请求体格式、返回包格式等方面。当然这些特征是在不修改源码的前提下存在的,当高水平攻击者对源码进行修改后,这些特征可能会消失。

ABPTTS加密HTTP隧道工具流量分析
ABPTTS加密HTTP隧道工具流量分析

多流心跳检测

经过详细分析,ABPTTS客户端在与服务端建立隧道后,为保持连接,会周期性发送心跳包。这是一个显著的多流特征。ABPTTS支持通过配置文件修改默认心跳频率,但是一个IP对间存在周期性的HTTP会话的心跳行为,也是值得重点关注排查的。

模型检测

我们在模拟环境下搭建ABPTTS隧道的攻防环境,抓取大量HTTP隧道流量,作为黑流量集,抓取正常HTTP业务流量为白流量集。数据集形成后,分别构建单流和多流特征集,提取单流和多流特征,通过人工智能的方法训练检测模型,包括单流检测模型和多流检测模型,利用AI技术针对ABPTTS隧加密流量进行检测。

根据研究结果,我们利用单流规则检测,多流心跳检测和人工智能模型综合决策,实现了ABPTTS加密HTTP隧道流量的准确检出。

ABPTTS加密HTTP隧道工具流量分析

来源:数世咨询

排版校对:老李

继续阅读