跨站脚本攻击(XSS, Cross Site Scripting) 可能是目前所有网站都比较头疼的问题,Google 也不例外。这次 Google 又做了一次雷锋,把内部用来审计 XSS 的工具开源了:ratproxy。
Ratproxy 工作流程:
- 1) 运行脚本后,会在本地启动一个代理服务器,默认端口是 8080 ;
- 2) 浏览器设置这个地址 (http://localhost:8080)为 代理地址 ;
- 3) 浏览要测试的 Web 页面,进行实际登录,填写表单等操作(这些动作会被代理服务器捕捉并做点”手脚”发给待检测的页面),ratproxy 会在后台记录相关的 Log ;
- 4) 用 ratproxy 提供的工具解析 Log 并输出 HTML 进行分析;
- 5) 修正比较严重的问题后,跳回到第一步,直到评估通过为止。
在我的 Ubuntu 下测试了一下,需要说一下的是,本地系统需要安装 libssl-dev 与 openssl 。
$ sudo apt-get install libssl-dev openssl
$ cd ratproxy ; make
然后就可以提交类似:
$ ./ratproxy -v . -w foo.log -d foo.com -lfscm
然后,人肉点击相关的页面进行测试了。这个工具的设计思路还是很值得借鉴的,推荐对安全感兴趣的同学读一下源代码。
ratproxy 的作者是 MIchal Zalewski,一个波兰的白帽子黑客。他的个人主页上能找到更多有趣的工具。
–EOF–
另参见另一份试用报告
Updated:Google的另一个工具:Skipfish 尤其值得关注。