揭开厂商使用CDN技术的风险、分析黑客及黑产新方向

优采云 发布时间: 2021-07-12 05:41

  

揭开厂商使用CDN技术的风险、分析黑客及黑产新方向

  目前CDN技术到处可见。像网宿、蓝讯、加速乐等都依靠CDN过活,连安全宝也都使用了CDN技术,当然很多域名空间商现在也提供CDN服务。从以往互联网的发展上看,CDN是个趋势,很多厂商也都多多少少购买了商业化的CDN资源,比如360、腾讯、百度、新浪等等等,当然大部分流量还是走自建的CDN网络。

  本文作者从安全角度分析CDN技术,揭示厂商使用CDN技术的风险,分析黑客和黑产品的新攻击方向。

  其实只要对CDN的工作流程有一定的了解,能够理解数据包的流向,就可以得出风险点。在本文中,作者只讨论动态页面的请求过程(静态页面一般不回源),至于静态页面,大部分是由节点的webcache直接返回,一般不收录敏感信息(cookies 实际上是敏感信息),所以我们不会讨论它们。

  一个。 CDN工作流程如下:

  

  

  1.管理员或站长将域名的DNS指向CDN厂商的DNS(当然根据选择,也可以使用CName方式,但不影响数据流)。

  2.用户需要登录站点请求DNS才能获取服务器IP(这里最终请求的DNS服务器是CDN厂商的DNS)

  3.CDN 厂商收到DNS查询请求和各种信息,通过各种算法选择离用户最近的一个节点,返回该节点的IP1.1.1.1作为服务器IP用户(这里CDN制造商告诉用户一个假的服务器IP)

  4.用户收到DNS响应,向1.1.1.1发送HTTP请求(登录请求,请求消息中收录用户密码)

  5.CDN节点收到请求包,判断请求消息是否为动态页面。如果是静态的,检查webcache,如果有缓存,直接返回缓存的页面。如果是动态页面请求或未缓存的静态页面,则节点直接请求真实来源,以获取最新内容。 (注:这里的动态页面请求一般每次都会做回源操作)

  6. 然后服务端响应请求,这里就不讨论了

  二.CDN 的弱点

  从上图可以看出,网站的请求消息会经过CDN厂商的节点(无需特殊操作)。因此,安全风险都集中在CDN厂商的节点上。一般一个节点会提供N次网站加速。不管是360、QQ、百度还是新浪,只要使用商业CDN,就等于是孤注一掷,将部分安全交给CDN厂商。

  一旦攻击者控制了 CDN 供应商节点,他就可以轻松捕获和分析数据包。对于CDN厂商来说,他们毕竟不是专业的安全公司,在防护方面肯定会有所不足。 CDN厂商节点遍布全国,数量庞大

  太多了,很难保证每个节点的安全(可以试试ARP欺骗,从同一个IP开始)

  三.从CDN看黑市趋势

  1.过去,攻击者对目标发起攻击时,会先扫描检测目标IP。但是由于CDN的存在,很多攻击者无法直接获取源IP,于是转而攻击CDN节点。一旦攻破了Node,迟早要拿到站点权限。另外,在这个信息发达的时代,一般都是买一送多。大数据时代,一个节点的网站足以秒杀你。从视觉上看,接下来对CDN节点的攻击将成为黑色产业链的热门话题(估计很火,但不知道)

  2.CDN 厂商其实可以成为黑产大数据提供商。对于应用软件,您可以在本地进行分析,查看数据是否在后台偷偷上传。对于 CDN,可以吗?我建议使用较少的免费 CDN 服务。除非你麻木了,或者你做了特殊的手段。

  3.大型企业自建CDN会增加安全维护成本,攻击者将大部分时间花在对企业CDN网络的攻击上

  四.从CDN劫持到DNS(只写思路,后面补充技术文档)

  百度经常被黑,某暗网被黑网站黑掉了,XXX也被黑了。最后是DNS劫持。有没有可能DNS劫持只能改页面?还是只允许用户访问恶意站点?看CDN的工作原理,结合APT攻击。长时间盯着看是可以的。某天某个时间,有人说可以控制某个域名的DNS解析,问怎么用。估计看了前面原理的人已经想到了如何进一步使用DNS劫持。笔者在此公布一些个人方法,仅供参考。

  1.搭建小型CDN网络,一个节点,一个自己的域名,一个自建DNS服务器。修改域名DNS指向自己搭建的DNS,从而将站点的所有流量都拉到自己的节点上,在自己的节点上安装抓包软件(关于如何搭建CDN可以找到相关资料)网络)

  2.设置传输服务器(代理服务器)将域名解析到自己的服务器上,攻击者的服务器就会传输(其实可以通过使用本地HOST和一些数据转发软件来实现) 这个比上面那点好多了,少了一个DNS服务器。

  3.充分利用了HTTP协议,编写了一个PHP脚本来转发接收到的消息。当然,作者在这里通过了测试。这种方法效率不高。一开始忘记处理cookie,导致用户无法登录,处理cookie后转发成功,但缺点是“速度像蜗牛”!

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线