ABPTTS加密HTTP隧道工具流量分析
作者: 日期:2022年12月01日 阅:1,663

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

  • 启动HTTP隧道

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

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

1. ABPTTS流量分析

  • 单流特征检测

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

  • 多流心跳检测

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

  • 模型检测

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

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

申明:本文系厂商投稿收录,所涉观点不代表安全牛立场!


相关文章