首页 > 代码库 > Google去抓取同一文件的流量就超过了700Mbps。DDOS爬虫攻击

Google去抓取同一文件的流量就超过了700Mbps。DDOS爬虫攻击

只需要使用一台笔记本,打开几个web标签页,仅仅拷贝一些指向10MB文件的链接,Google去抓取同一文件的流量就超过了700Mbps。

 

Google的FeedFetcher爬虫会将spreadsheet的=image(“link”)中的任意链接缓存。

如果我们将=image(“http://example.com/image.jpg”)输入到任意一个Google spreadsheet中,Google就会“派出”FeedFetcher爬虫去抓取这个图片并保存到缓存中以将其显示出来。

但是,我们可以为文件名附加上随机参数,使FeedFetcher多次抓取同一文件。也就是说,如果一个网站有一个10MB的文件,要是将以下列表输入到Google spreadsheet中,那么Google的爬虫就会抓取该文件1000次。

 

1
2
3
4
5
6
=image("http://targetname/file.pdf?r=0")
=image("http://targetname/file.pdf?r=1")
=image("http://targetname/file.pdf?r=2")
=image("http://targetname/file.pdf?r=3")
...
=image("http://targetname/file.pdf?r=1000")

 

附加上随机参数后,每个链接都被看作是不同的链接,因此Google爬虫会去抓取多次,使网站产生大量出站流量。所以任何人只需使用浏览器并打开一些标签,就可以向web服务器发动巨大流量HTTP GET洪水攻击。

但是这种攻击使攻击者根本不需要有多大的带宽,只需要将“图像”地址输入进spreadsheet,Google就会从服务器上抓取这个10MB的数据,但是因为地址指向一个PDF文件(非图像文件),攻击者从Google得到的反馈为N/A。很明显这种类型的流量可以被放大多倍,引起的后果很可能是灾难性的。

只需要使用一台笔记本,打开几个web标签页,仅仅拷贝一些指向10MB文件的链接,Google去抓取同一文件的流量就超过了700Mbps。而这种600-700Mbps的抓取流量大概只持续了30-45分钟,我就把服务器关闭了。如果没算错的话,45分钟内大概走了240GB的流量。