来源:自学PHP网 时间:2015-04-17 13:03 作者: 阅读:次
[导读] 在测试web应用漏洞的时候,通常渗透师会尝试找出所有输入点,如cookie、POST\GET参数、HTTP头等,发现之后在这些部分注入恶意数据,如下:Cookie: --attack freebuf string--name= --attack freebuf st...
在测试web应用漏洞的时候,通常渗透师会尝试找出所有输入点,如cookie、POST\GET参数、HTTP头等,发现之后在这些部分注入恶意数据,如下:
Cookie: --attack freebuf string-- name= --attack freebuf string-- uri?name= --attack freebu string-- 普通渗透屌丝都会在接受参数的值里面输入测试字符,但是很少对参数的名称进行测试,我们来看一段代码了解以下如何利用参数的名称来输入恶意代码: java.util.Enumeration e = request.getParameterNames(); if (e.hasMoreElements()) { String name = (String)e.nextElement(); String value = request.getParameter(name); qs= name+"="+java.net.URLEncoder.encode(value,"utf-8"); while (e.hasMoreElements()) { name = (String)e.nextElement(); value = request.getParameter(name); qs += "&"+name+"="+java.net.URLEncoder.encode(value,"utf-8"); } } 注意这句 www.2cto.com qs += "&"+name+"="+java.net.URLEncoder.encode(value,"utf-8"); 只有参数的值进行了URLEncoder编码 查询字符串连接在了iframe的SRC属性,输出如下 <iframe src="xxxx.com?search.aspx?<%=qs%> ok,我们可以来尝试下在参数的名称里面输入XSS代码,如下: %22%20onmouseover%3d"alert(1111)">%20DANUX</iframe> <iframe a%3D"= 在浏览器里输出如下: <iframe src="xxxx.com?search.aspx?" onmouseover="alert(1111)">DANUX</iframe> <iframe a=""></iframe> 可以看到HTML正常闭合,导致XSS代码成功执行,如前所述,至少我现在发现在各扫描器里面未发现如上测试的方法。 以下为WebInspect 9.X扫描的结果,没有测试参数的名称。 作者 FreebuF.COM |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com