**作者:se162xg@知道创宇404积极防御实验室
时间:2020年7月27日 **
原文地址:https://paper.seebug.org/1277/
1. 从IPv4到IPv6
IPv6的全称是“Internet Protocol version 6”,意为“互联网协议第6版”,是由国际互联网工程任务组(IETF)在1998年12月发布的最新版本互联网协议。相较于传统的IPv4协议,IPv6不仅扩展了原有的地址空间,还对网络层的通信机制进行了优化,使得报文处理过程在性能与安全性方面得以大幅提高。当前,在世界范围内IPv4与IPv6的应用仍处于“共存”状态,但从IPv4向IPv6的全面迁移已成为一种不可逆转的趋势。
一直以来,IPv4协议使用的是32位长度的网络地址,理论上最多只能为大约43亿设备分配独立地址。随着个人电脑、无线设备和各类智能终端的增多,显然,这一数值已不足以满足“万物互联”的需要。早在20多年以前,IETF就意识到了这一点,并将IPv6的网络地址长度增加到128位,这样,整个互联网世界就能够支持超过 3.4 * 10<sup>38</sup> 个独立设备进行自由寻址。这是一个怎样的天文数字?借用一个经典的比喻,我们可以用IPv6的地址空间为地球表层的每一颗原子分配一个地址,然后,剩余的地址数量也足以分配另外100+与地球同样大小的星球。
<center>图1. 2010年~2020年谷歌应用服务IPv6用户访问趋势</center>
<center>图2. 2020年5月中国IPv6活跃用户占比</center>
Google在过去的十年内一直对来自IPv6网络的用户数量的进行着统计,截至2020年7月,通过IPv6网络访问Google应用服务的互联网用户比例大约为 30% 左右。而根据国家IPv6发展监测平台(china-ipv6.cn)的统计数据,截止到2020年5月,我国互联网IPv6活跃用户占比为 35.15%,优于同期世界范围内IPv6建设部署的平均水准。
2. 国家推动下的IPv6部署
2017年11月,中共中央办公厅、国务院办公厅联合印发了《推进互联网协议第六版(IPv6)规模部署行动计划》,全面规划了建设基于IPv6互联网的总体目标,吹响了中国境内部署IPv6网络基础设施的号角。
2020年3月,工业和信息化部颁发了《关于开展2020年IPv6端到端贯通能力提升专项行动的通知》,细化了部署IPv6的各项具体要求。其中包括:
- 要求各省(区、市)通信管理局、部属各单位、部属各高校、基础电信企业继续深化门户网站IPv6改造。
- 到2020年末,门户网站二级、三级链接的IPv6比例达到85%以上。
- 年度考核中将IPv6相关任务完成情况作为重要指标。
在全面构建IPv6网络基础设施的时代大潮中,部署具有IPv6兼容性的Web服务已经进化为一种自上而下的强制性合规要求。过去的几年里,知道创宇云安全已为包括国家互联网信息办公室、中国银保监会、中国公安部、中信建设、广发证券、中国交通建设集团、招商局集团等数十个国家重点政府单位、大型央企、金融机构和高等院校的互联网应用服务成功完成了IPv6安全合规改造及IPv6安全防护工作。
3. IPv6大数据
基于知道创宇云防御体系在2020年上半年(1月至6月)记录的生产环境真实数据,我们将从几个维度切入,客观还原当下IPv6网络的应用现状及受威胁程度。
<center>图3. 2020年上半年IPv6网络访问趋势</center>
2020年1月至6月,来自IPv6网络的正常访问流量随着时间推移持续增加。整个上半年,全平台内IPv6网络应用日均访问量超过 2900万 次,IPv6流量在总流量中占比约 0.33%。
<center>图4. 2020年上半年IPv6地址数量监测趋势</center>
这一周期内,每日独立IPv6地址的监测数量呈现平缓上升的趋势,且与IPv6正常访问流量增长趋势较为符合。每一天,平均有大约 286万 具有独立IPv6地址的访问源对知道创宇云防御平台接入的IPv6网络服务进行访问。
<center>图5. 2020年上半年IPv6网络攻击拦截趋势</center>
在统计区间内,知道创宇云防御平台日均拦截来自IPv6网络的攻击超过 11万 次。如上述趋势图所示,在2020年5月中旬至5月末出现了一波明显的攻击高峰,这一时段与2020年两会召开时段基本吻合。总体来看,半年内IPv6总流量中约有 3.8% 的流量份额是被知道创宇云防御体系识别并拦截的Web攻击流量。
<center>2020年上半年IPv6攻击源地域分布TOP 10</center>
整个半年内,制造IPv6网络攻击的攻击源仍以中国境内IPv6地址为主。除去尚未被分配的IPv6保留地址攻击源,剩余的主要IPv6网络攻击发起地域全部属于发达国家。这一现象也从另一个角度反映了目前世界范围内IPv6网络升级仍是以经济发展水平较高的国家为主导的。
4. 一种新型网络威胁
(1) 利用IPv6代理的搜索引擎收录
近期,知道创宇威胁情报中心的安全研究员监测到一种新型互联网黑产技术手段,部分黑产人员可以利用部署在公共网络的具有漏洞的IPv6代理服务实现国内外知名搜索引擎对各类违法网页的收录。 <center>图6. 某搜索引擎恶意页面收录</center>
由于这种配置漏洞的存在,任何人都可以通过点击一个经过特殊构造的URL链接,使用代理服务器绑定的域名来访问其它域名下部署的网络服务。例如,若某个政府网站“example.gov.cn”已成功部署IPv6代理服务,那么在浏览器地址栏中输入“http://https--www--baidu--com.proxy.example.gov.cn”(可能具有不同的格式)之后敲击回车键,浏览器中实际呈现的页面将会是百度官网的页面。
![ ] <center>图7. IPv6代理服务使用方法演示</center>
由于中国IPv6网络当前的发展状况,目前部署有IPv6代理服务的机构多为政府单位、央企国企及高等院校,因此相关代理服务器的域名也以“gov.cn”或“edu.cn”为主。这类域名往往在搜索引擎排名算法中具有极高的收录权重,通过这类域名收录的页面会在搜索结果列表中排名十分靠前,更容易被普通用户发现。黑产人员正是凭借这种特性来滥用高权重IPv6代理域名对违法的色情或博彩网站进行伪装,提高其曝光度,从而实现敛财的目的。
以下是一部分我们搜集到的被搜索引擎成功收录的违法内容页面:
<center>图8. 被收录的恶意页面一</center>
<center>图9. 被收录的恶意页面二</center>
<center>图10. 被收录的恶意页面三</center>
知道创宇404积极防御实验室长久以来一直致力于对互联网公共安全事件的监控与挖掘,对于之前监测到的类似安全事件,均已直接或通过相关监管部门及时上报给各客户单位,避免了恶意事件的进一步发生。可以说,此类可被公开利用的IPv6代理服务并不是个例,而是一种较为“普遍”的现象。仅在过去的几个月内,我们就累计为23家重点单位发现并上报了错误配置IPv6代理服务被滥用的安全事件。
(2) 域名审核机制绕过
这种投毒式的高含金量域名滥用还可以帮助黑产团伙轻松地绕过一些审查机制。比如,某些移动端APP从内置浏览器内请求外链之前会先对处于域名黑名单的站点进行阻断,防止非法违禁内容的传播。然而,通过使用具有高可信度域名的IPv6代理,可以给违法站点披上一层合法的外衣。下图就是一次访问博彩类站点的成功绕过过程演示。第一次在某客户端的内置浏览器直接访问网站域名,请求被系统拦截;第二次通过IPv6代理访问,可以在浏览器中成功打开站点。
<center>图11. 利用IPv6代理绕过域名审核演示</center>
(3) 漏洞分析
在发现类似的安全事件之后,404积极防御实验室的安全研究员结合自身丰富的一线业务安全经验,第一时间对这类漏洞产生的原因进行了分析。经研究,上述黑产团伙所利用的漏洞是一种IPv6代理服务器域名未验证漏洞。由于代理服务器未对被代理链接进行域名合法性验证,导致任意外域链接可通过代理服务器被成功访问。
为验证这一漏洞的存在,在IPv6环境下使用curl命令经由某个具有漏洞的代理请求自己搭建的站点,可以看到来自IPv6代理的响应中出现了站点首页的内容“ipv6 test”。
<center>图12. IPv6代理滥用POC</center>
值得说明的是,这类漏洞与受害站点源站本身没有直接关系,而是由IPv6改造服务提供商直接造成的。为了解决IPv6“天窗问题”,即在IPv6页面中请求内嵌IPv4外链时遇到的响应缓慢或无法访问的状况,服务提供商往往会架设IPv6代理网关对这些IPv4外链进行代理。如果代理网关在设计中忽视了域名验证这一关键环节,就会导致恶意滥用事件的发生。
从本质上讲,能够通过代理发起任意请求也可以看作一种特殊的服务端请求伪造漏洞(SSRF)。我们选取了一个有漏洞的IPv6代理服务进行验证:先在一个VPS上的80端口开启 HTTP Web服务,从浏览器里通过IPv6代理访问VPS的域名,可以看到,Web服务的访问日志中出现了一条来自该代理服务器IP地址 180.*.*.28
的请求记录。
<center>图13. SSRF漏洞POC</center>
尽管这一类漏洞的原理不是十分复杂,它的危害性还是较为严重的。如果政府部门或高等院校的网站域名指向了违法违禁的内容页面,甚至被利用进行相关内容的传播,会对单位网站的声誉造成不良影响。另一方面,代理服务器如果缺少访问限制,很可能会被大量的外来的请求耗尽带宽资源和计算资源,正常服务就会受到影响。更为严重的是,由于SSRF漏洞的存在,黑客可能会利用漏洞网关对外部站点发起网络攻击,利用代理本身的IP地址伪造自己的身份,让网站管理员无法溯源。
(4) 防护方案
当前市面上的IPv6代理网关主要使用以下两种方式对被代理域名进行验证。
-
由网站管理员人工维护一个域名白名单。IPv6在进行代理服务之前会检查被代理域名是否处于当前的白名单中,对于不在名单内的域名,网关会返回403状态码禁止访问。
-
在代理链接中添加一段签名字符串。例如:“www.baidu.com.ed93c2.proxy.example.gov.cn”,其中“ed93c2”就是将被代理域名“www.baidu.com”和密钥拼接后一并进行哈希函数计算得到的哈希值(部分)。代理网关在收到请求后会首先重复这个哈希计算过程,如果计算后的得到签名与代理链接中提供的签名不一致,则会拒绝本次代理请求。由于外部人员不知道代理网关使用的密钥,也就无法通过伪造签名来伪造代理请求。
5. 总结
由IPv4向IPv6的升级过程中,新生的威胁一定会不可避免的涌现出来,而DDOS、CC、SQL注入、网站后门等在传统IPv4网络中屡见不鲜的恶意攻击手段也同样时刻威胁着IPv6的网络应用服务。在网络安全领域,防护工作是一个具有“木桶效应”的命题,在线业务的安全可靠程度永远取决于木桶上最短的那一块木板。甲方单位在选取IPv6改造服务时,一定要考虑到相关服务的攻击防范能力,不仅要快速合规,也要防患于为然。