大家都有过这种体验吧,进大论坛的时候特别卡,页面半天打不开。其实人越多、帖子越多,数据库越大,服务器压力就越顶不住,所以很多主机商都不让搭论坛、聊天室这些东西。
静态页面基本不怎么耗资源,直接从内存调就行,但论坛不一样。你看个帖,系统得先查你有没有权限,再读内容——光这一下就得连查两次数据库。要是库有200MB,那就得在里面一顿猛找,CPU直接拉满。要是搜关键词更狠,得全库扫描,耗时翻倍。
CC攻击就是钻这个空子,用一堆线程模拟真实用户,疯狂刷那些费资源的页面,比如搜索页。为啥要用代理?一是隐身,二是绕防火墙。大多数防火墙会检测并发连接数,太多太快就判定为CC或SYN洪水给拦了。
用代理还能持续加压。我们发完请求就断,代理还连着目标,等于一直占着坑不走。听说有人用2000个代理干出35万并发,太离谱了。
举个例子:假设search.asp处理一次要0.01秒,一秒最多扛100个请求,最大连接时间60秒。我们搞120个并发去冲,一分钟下来请求7200次,它只能处理6000次,剩下1200个堆那儿。有人说丢连接不就完了?问题是服务器按顺序处理,这1200个是最后10秒来的,轮不到丢。等到服务器想甩连接时,队列里已经有7200个了,它一边丢120个/秒,我们一边补120个/秒,永远清不完。CPU直接100%,持续高负载,新来的请求全都瘫痪,服务彻底卡死。
这招不止能搞网页,FTP也能这么冲,TCP-FLOOD一样好使,实测有效。
静态页面基本不怎么耗资源,直接从内存调就行,但论坛不一样。你看个帖,系统得先查你有没有权限,再读内容——光这一下就得连查两次数据库。要是库有200MB,那就得在里面一顿猛找,CPU直接拉满。要是搜关键词更狠,得全库扫描,耗时翻倍。
CC攻击就是钻这个空子,用一堆线程模拟真实用户,疯狂刷那些费资源的页面,比如搜索页。为啥要用代理?一是隐身,二是绕防火墙。大多数防火墙会检测并发连接数,太多太快就判定为CC或SYN洪水给拦了。
用代理还能持续加压。我们发完请求就断,代理还连着目标,等于一直占着坑不走。听说有人用2000个代理干出35万并发,太离谱了。
举个例子:假设search.asp处理一次要0.01秒,一秒最多扛100个请求,最大连接时间60秒。我们搞120个并发去冲,一分钟下来请求7200次,它只能处理6000次,剩下1200个堆那儿。有人说丢连接不就完了?问题是服务器按顺序处理,这1200个是最后10秒来的,轮不到丢。等到服务器想甩连接时,队列里已经有7200个了,它一边丢120个/秒,我们一边补120个/秒,永远清不完。CPU直接100%,持续高负载,新来的请求全都瘫痪,服务彻底卡死。
这招不止能搞网页,FTP也能这么冲,TCP-FLOOD一样好使,实测有效。