XSS

2019-06-11  本文已影响0人  theLexical

XSS攻击

<script>
function test(){
  var str = document.getElementById('text').value;
  document.getElementById('t').innerHTML = "<a href=' "+str+" '>testLink</a>";
}
</script>

<div id='t'></div>
<input type='text' d='text' value='' />
<input type='button' id='s' value='btn' onclick='test()' />

如果构造这样的输入:

' onclick=alert(/xss/) //

<a href='' onclick=alert(/xss/) //'>testLink</a>

就产生XSS攻击啦!

XSS防御

XSS的防御是很复杂的,浏览器有一些内置的防御措施,这里吧重点放在网站安全上。

<?php
header("set-Cookie: cookie1=test1");
header("set-Cookie: cookie2=test2;httponly, false");
>

<script>alert(document.cookie);</script>

但是这个也有绕过的办法。
比如Apache支持的一个Header是TRACE,它一般用于调试,会将请求头作为响应body返回。cookie在请求头中,利用这个特性,就可以获得cookie了。

上一篇 下一篇

猜你喜欢

热点阅读