前言

看了P喵呜-PHPoop师傅的文章后来复现学习一波

环境

可控点在<script> 标签里面的里一个 a变量内,转义了单引号与双引号 并且被双引号包含。

xss.php

<!DOCTYPE html>
<html lang="en">
<head>
    <title>xss-test</title>
</head>
<body>
    xss-test
</body>
<script>
    var a = "<?php echo @addslashes($_GET[data]); ?>";
</script>
</html>

解法

这里使用正常的payload因为"'会被转义没办法去闭合

浏览器特性造成的xss

payload: 1</script><svg/onload=alert(1)>

浏览器特性造成的xss

查看源代码可以发现双引号虽然被转义了,但是浏览器认为遇到的第一个</script>是结束符,从而执行了我们直接的代码

浏览器特性造成的xss

标签: none


若要转载本站的文章,请遵守转载CC4.0协议注明文章来源

添加新评论