网络劫持身份,xss蠕虫,cookie盗取,csrf攻击,这些最后都可以落到请求的伪造上。比如他们可以叫空中cookie请求伪造,当前域请求伪造,跨站请求伪造…所以如果在对应环节对具体请求进行校验,可以防住很多漏洞的攻击。理想状态来说,我们不仅仅要校验人的身份,我们还可以校验每一个http请求。为什么说是理想状态,因为开发成本不小,一般的安全需求用不上。各个方案我都在脑子里过了一遍,有空了我会写一些demo试试

核心逻辑就一个,每种攻击都有他的能力范围,我们把秘密放在他拿不到的地方就可以了


update 20170208

花了一晚上写了个降低xss危害的例子。一个简单的留言本,用户登陆后可以发表留言。本示例可以防止xss攻击中的恶意脚本自动发表留言。开发成本不算低,难成主流,思路仅供研究娱乐。登陆后你可以在当前域控制台编写js脚本来模拟xss,看看能否突破发表留言,突破了的可以找我领红包。尽量用chrome测试,示例网站如下

点这里进留言本

也可以不用iframe,用postmessage应该也能做到。核心逻辑就是由第三域来跨域传送token,而且有第三方域的用户确认。ajax做不到跨域获取数据,更做不到跨域按钮的确认。第三方域也需要是登陆态的,否则xss也可以跨域请求他自己的service来离线模拟获取token

其他的场景的例子有时间再写,比如cookie在网络中被劫持…

Comments
Write a Comment