说明: 感觉简书上讨论技术的并不多,把一部分博文转到CSDN上,希望可以和各位同学一起学习讨论。
上一篇我们说了用脚本注入去攻击小熊哥的博文评论。普通的脚本注入很容易就被前端后台全方位的脚本过滤给处理掉,完全没有杀伤力。一般来说遇到<, > , =” 等等可能加载执行脚本的用户输入,转换为< ; & gt ; 等等即可作为数据打印到 DOM 中,而不是作为脚本执行。详细情况参考上一篇文章 。我敢保证,@Swanky 肯定是受了我的蛊惑去 POST 了 三万多条评论导致被 @简书首席封号官 封号了。
![](https://i-blog.csdnimg.cn/blog_migrate/3b34104d66c0a3c95ec92f8b14a423d9.webp?x-image-process=image/format,png)
伪造请求的过程
这次来说说伪造请求(Cross Site Request Forgery)的事情。通俗点讲就是 有人给你发送了一个链接,然后你手贱点开,是看起来很正常的网页(A.com/index.html),结果暗中被发送了一个指向 招商银行转账服务(B.com/transfer) 的POST请求,这个请求是攻击者在A.com/index.html 脚本中伪造的,因此请求的发送方属于A.com域,而不属于B.com/transfer 的域, 所以叫做 跨站伪造请求
// attack.html. 为了在这个伪造的网页中自动发送请求并且带上 受害用户的cookie,
// 一般都会在hidden iframe中加载一份正规网站的页面,而且攻击表单也是隐藏的。
// 表面上这个伪造网页是很正规的,并无异常。
<form id="thisForm" method="POST" target="_blank" action="http://www.bank.com/transfe