漏洞原理:
因为数据库报错会把字段和字段名全部爆出 如果我们插入一下恶意代码然后数据库在报错爆出我们的恶意代码这样就成功执行漏洞
漏洞复现:
首先访问192.168.0.101:8000/create_user/?username=<script>alert('xss')</script> 创建一个username为<script>alert('xss')</script>的用户
发现创建成功然后我们在创建一个username为<script>alert('xss')</script>的用户
发现成功弹框xss 原因是数据库报错因为我们刚刚创建了一个username相同的用户又因为数据库的特性报错又把所有的字段和字段名报错来也就是吧用户名 <script>alert('xss')</script>给报出来了最后弹框成功
注:(弹窗的内容需要加带引号如
<script>alert('xss')</script> 弹框
<script>alert(xss)</script> 不弹框
)
技术交流+chx5652511(威)要是大佬们发现错误即使纠正