新版Shadow-TLS隐蔽加密通道流量分析
发布日期:2023-01-02      作者:       来源:      分享:

观成科技安全研究团队近期发现加密通信工具——Shadow-TLS发布了0.20版本(以下简称Shadow-TLS-V2)。与之前版本相比,Shadow-TLS-V2主要在两个方面做出改进:一是针对客户端转发流量进行混淆处理,将转发信息封装成TLS协议Application Data消息形式,以规避流量检测设备的检测;二是针对Shadow-TLS服务端增加校验,将来自非客户端访问进行重定向,返回可信网站的响应结果,以达到规避主动探测的目的,降低服务端被发现的概率。

图片


image.png


02

分析
Shadow-TLS-V2工作流程与之前版本相似,在此不再赘述,主要介绍与之前版本不同的地方。工作流程如下图所示:

image.png


需要重点关注的是第三阶段发往Shadow-TLS服务端的第一个数据包。与之前版本相比,新版做出了两个修改:

  • 旧版客户端直接转发流量,当待转发的并不是TLS协议数据时,Shadow-TLS客户端与服务端的通信表现为TLS握手后出现非TLS协议消息,这是一个明显的异常,容易被检测。因此新版中这个数据包加了协议头,被封装为Application Data格式,达到欺骗流量检测设备的目的。

  • 在上述Application Data消息中,客户端除封装待转发数据外,还在数据前增加8字节HMAC校验。校验值由服务端响应数据生成,计算方式为HMAC-SHA1(Server_Data)。服务端利用此校验值确定接收的数据是否由客户端发出。

  • 重点流量截图如下:


阶段1:

由终端向客户端发起连接请求,在TCP载荷中传递请求数据,长度分别为101字节和250字节,共351字节。


image.png

图1:终端向客户端发送请求


阶段2:

客户端与服务端“Shadow” TLS握手后,将终端请求数据封装发出(39.144.93.96是客户端外网IP)。可以看到此时转发数据已加Application Data消息头,协议软件识别为TLS协议Application Data消息。另外,在Application Data消息中,前8字节为客户端运算好的HMAC校验(红框部分),因此数据载荷总长度为351+8=359字节。


image.png

图2:客户端向服务端转发请求

引入HMAC校验后,Shadow-TLS服务端具备了一定的筛选能力。当校验失败时,服务端可返回正常WEB服务器的响应数据,以此迷惑主动探测器。如下图所示:



image.png


03

总结

图片

    Shadow-TLS-V2在数据封装和数据校验方面做出了进一步改进,使被动检测和主动探测难度得到提升,但是其加密流量特征和服务端响应特征仍然存在可检测的异常点。类似Shadow-TLS的流量混淆工具在攻防演练等场景下呈现多样、多变的总体趋势,我们将会保持对此类工具的密切跟踪研究。


友情链接:

返回软协官网首页

通讯地址:北京市海淀区海淀南路甲21号中关村知识产权大厦A座2层206、207室     邮政编码:100080

电话:010-62565314 刘莉    京ICP证16064523号-2    版权所有:北京软件和信息服务业协会

技术支持:中科服    内容支持:鑫网安

你知道你的Internet Explorer是过时了吗?

为了得到我们网站最好的体验效果,我们建议您升级到最新版本的Internet Explorer或选择另一个web浏览器.一个列表最流行的web浏览器在下面可以找到.