xss-labs/level10

  • Post author:
  • Post category:其他


我们试试看输入以下代码

<script>alert('xss')</script>

从界面上看确实只有一个输出点 但是不要被事物的表面所蒙蔽 我们的去更深层的源代码部分详究

从源代码层面上去看输出点 也只有一个输出点 不会吧 判断失误啦

应该不会 因为我从源代码看到了三个表单标签 而且还是设置隐藏属性的 我们得去判断以下哪个表单会回显输入

为了测试哪个表单能够回显输入 我们应该构造如下代码

t_link=" type="text&t_history=" type="text&t_sort=" type="text

但是记住你只写了三对键值对 你没有为keyword写对应的参数值 所以应该补上去 即

<script>alert('xss')</script>&t_link=" type="text&t_history=" type="text&t_sort=" type="text

界面出现了一个表单 但不知是谁的表单 只能说明一件事 那就是三个表单中只有一个能够将输入值插入到value属性中 从源代码上看 那个表单就是name为t_sort的表单

那么我们就可以将payload注入到刚才构造的代码之中 作为t_sort的一个属性 那么就构造如下

<script>alert('xss')</script>&t_sort=" type="text" onclick="alert('xss')

成功回弹 嗨嗨!!

去看看后台服务器代码

他将我们提交的参数中的keyword参数值赋值给str变量 然后将所提交的参数中的t_sort参数值赋值给了str11变量 然后将str11经过几次的替换操作 得到最终的str33变量 然后将str插入到第一个输出点 将str33插入到第二个输出点



版权声明:本文为m0_71299382原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。