欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

旁注攻击之CDN

程序员文章站 2022-06-11 08:34:26
对于一些使用了CDN的服务器,真实的IP将会隐藏起来,攻击者无法找到目标主机IP,也就无法进行旁注攻击。 CDN全称是Content Delivery Network,即内容分发网络。其基本思路是:尽可能地避开互联网上有可能影响数据传输速度和稳定性的瓶颈、环节,使内容的传输速度更快、更稳定。 例如, ......

对于一些使用了cdn的服务器,真实的ip将会隐藏起来,攻击者无法找到目标主机ip,也就无法进行旁注攻击。

cdn全称是content delivery network,即内容分发网络。其基本思路是:尽可能地避开互联网上有可能影响数据传输速度和稳定性的瓶颈、环节,使内容的传输速度更快、更稳定。

例如,一个企业的网站服务器在北京,运营商是电信,在广东的联通用户访问企业网站时,因为跨地区、跨运营商的原因,网站打开速度就会比北京当地的电信用户访问速度慢很多,这样就很容易造成企业客户流失。

又如,一个网站的服务器性能比较差,承载能力有限,有时面临突发流量招架不住,服务器可能直接崩溃,尤其是在节日期间的电商网站,因访问量暴涨而崩溃,使销售额大幅度降低。

再如,一些中小企业租用的虚拟主机因为与很多网站共用一台服务器,而每个网站所分的带宽有限,当访问流量增多时,带宽过小的网站打开速度就会很慢,甚至没有被攻击就已经打不开了。

  使用cdn之后的效果如下:

    ①不用担心自己网站的访客,任何时间、任何地点和任何网络运营商都能快速打开网站。

    ②各种服务器虚拟主机带宽等采购成本(包括后期运营成本)都会大大减少。

    ③有效防御 syn flood、udp flood、icmp flood、cc等常见的ddos攻击等,cdn有一套自己的安全处理机制。

    ④可以阻止大部分的web攻击,例如sol注入、xss跨站等漏洞。

根据前面所讲述的cdn知识,可以得知cdn最终目的是用来加速的,那么cdn如何加速呢?简单地说,cdn就是将原服务器上可以缓存的文件(静态文件、图片、js、css等)下载到缓存服务器,当用户在访问你的域名时,将会访问缓存服务器,而不是直接去访问源服务器。

假设你的服务器在北京,全国各地的用户都会访问北京的服务器,但如果你使用了cdn,并在全国各地区都有cdn节点服务器,那么各地区用户在访问网站时将不会访问北京的服务器,而是访问各地区的cnd节点服务器。这样巨大的流量就被cdn服务器分散了,源服务器的压力自然就没有那么大了。

在国内访问量较高的大型网站如新浪、网易等,均使用了cdn网络加速技术,虽然网站的访问量巨大,但无论在什么地方访问都会感觉速度很快,原因就是这样。

在使用cdn之后,真实的服务器ip地址除了管理员,只有缓存服务器知道,这就意味着攻击者再也无法像以前一样可以轻松地获取服务器真实的ip。当然,没有真实ip也就无法再使用旁注攻击,例如,“www.2cto.com”使用了cdn加速技术,使用java获取其ip地址如下:

import java.net.inetaddress;
import java.net.unknownhostexception;

public class main {

    public static void main(string[] args) throws unknownhostexception {
        inetaddress[] address = inetaddress.getallbyname("www.secbug.org");
        for (inetaddress inetaddress : address){
            system.out.println("ip:"+ inetaddress.gethostaddress());
            if(!inetaddress.isloopbackaddress()){
                system.out.println("\t存在cnd");
            }
        }
    }
}