|
JS注入的使用案例一:个人信息页面中JS校验的跳过
打开当前个人信息保存页面:
当前页面存在JS对输入信息正确与否的判断,页面中代码如下:
-
- <input type="button" value="确 定" class="btn" onclick="check()"/> <input type="button" value=" 取 消 " class="btn" onclick="window.location.href='participant_modifyUI.action'"/>
复制代码
在编辑JS注入区域输入下面的代码后,单击JS注入,再次对提交用户信息。
-
- check();
- function check() {
- document.getElementById('eservice').submit();
- }
复制代码
新提交的JS会把页面中的覆盖.这时,后台服务器会对错误的信息进行处理。
期望:后台服务器应会出现对错误信息的提示,而不是空指针,字符串异常,数据库保存出错的错误页面。
案例二:个人信息页面中是否存在跨站脚本攻击的漏洞
仍使用上面的例子做说明:
打开当前个人信息保存页面,验证非法内容是否可以被保存,但页面中的输入框常常会存在输入长度的限制。
输入一部分内容后无法继续输入。
输入框的代码如下:
- <td align="right">证件号码:</td>
- <td><input name="personalCertificateNbr" type="text" style="width:160px" value="" maxlength="18" id="personalCertificateNbr"/></td>
复制代码
在编辑JS注入区域输入下面的代码后,单击JS注入
-
- document.getElementById('personalCertificateNbr').value="<font color='red'>123</font>";
复制代码
页面中会显示下面的效果:
与JS校验相配合可以提交修改请求。
若修改成功则说明该页面存在跨站脚本攻击的漏洞。
如下图:
|
|