绕过某防跨站表单提交的方法
出于安全性的考虑,网站对表单提交需要设计一些安全性方面的防范措施,如防止跨站提交表单等,本例演示的是如何绕过防范实现跨站提交的例子,目的是促进网站安全方面的思考。
防方的措施:利用用户信息(这里用的是uid)和服务器时间生成一个密钥,密钥随表单提交后进行核验。
防方样例代码参考:
acrumb.php文件,生成密钥、核验密钥,虚设位置:http://www.axxxx.com/acrumb.php
aform.php文件,表单页面,虚设位置:http://www.axxxx.com/aform.php
acheck.php文件,表单处理,虚设位置:http://www.axxxx.com/acheck.php
攻方的方法:
利用php的file_get_contents函数抓取防方的表单页面数据,获取密钥数据,伪造表单,再提交给防方。
攻方样例代码参考:
bform.php文件,伪造表单页面,虚设位置:http://www.bxxxx.com/bform.php