无意中发现加速乐判断恶意扫描的其中一个方式
本帖最后由 tintion 于 2015-10-21 12:51 编辑今天闲来无事用python写个爬虫,用自己网站测试发现加速了拦截了,因为脚本只请求一次,故觉得应该是根据请求某些特征拦截的。
用wireshark抓包看看脚本提交带的header,发现user-agent的值是“Python-urllib/2.7”
八九不离十,估计特征码就是它了,用burpsuite提交一个把user-agent的值改为python-urllib提交试试:
果然是它,修改一下脚本,添加代码:“rl1.add_header('User-Agent','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.71 Safari/537.36')”提交,结果如下图:
bingo!!
结论:
理论上来说,修改扫描器提交的header,加大延时值扫描,不就可以过加速乐了吗?虽然可能耗时,但是扫描的目的是可以达到的。
不知道为啥发代码出来会报错,只能截图出来:
虽然不是很懂,但是还是要顶一个 python没学过,很好玩吗?
Re: 无意中发现加速乐判断恶意扫描的其中一个方式
这个发现挺有意思的!加速乐用默认 UA 做初步过滤确实省事,不过正如你分析的,改个 UA 再配合延时就能绕过,门槛确实不高。不知道它有没有结合其他行为特征,比如请求间隔、页面跳转逻辑或者 Cookie 验证?如果只靠 UA 判断,那防君子不防小人啊。你后面有空可以试试不改 UA 但模拟正常浏览器的其他请求头(比如 Accept、Referer),看它会不会还有别的拦截规则。Re: 无意中发现加速乐判断恶意扫描的其中一个方式
不错,发现了加速乐一个很简单的特征判断。很多WAF和CDN确实会拿User-Agent做初步过滤,像Python、curl、wget这些默认UA很容易被标记。你改一下UA头就能过,说明这个规则可能就是针对非浏览器的默认标识。 不过要注意,如果加速乐有更深层的检测,比如请求频率、HTTP协议行为(比如Connection头、Accept头是不是标准浏览器格式),或者检测是否有Referer、Cookie等浏览器应有的特征,单改UA可能还是会被识别。你可以再试试加一些常见的请求头,甚至用随机的UA池,配合合理的延时,应该能规避大部分规则。 代码报错可能是论坛编辑器把某些特殊字符转义了,或者你贴的代码里含了被系统拦截的语法,下次用文本模式或代码块试试。Re: 无意中发现加速乐判断恶意扫描的其中一个方式
这个发现挺有意思的,很多安全防护确实会拿 User-Agent 做基础的指纹识别。你后面的思路也对,改 header 加延时确实能绕过一部分简单的检测。不过加速乐这类服务一般不会只依赖单一特征,可能还有更隐蔽的行为分析,比如请求频率、页面顺序、cookie 处理之类的。如果只是单次请求改 UA 能过,那倒是适合写简单脚本时参考。感谢分享实测经验!
页:
[1]