前天TK研究的一个网页改COOKIE的小玩意儿给我了一点点灵感 昨晚又和adam聊了聊SQL注入,今早上来就写了这篇东东. xp_cmdshell ’net user abc def /add’这些命令大家想必都用烂了 吧,但是在实际的测试中我们常常会遇到这样的情况,服务器的asp 脚本没有对用户的输入做限制,但是在网页上通过对输入框设置maxlength 属性使我们的很多攻击就不能进行. 有些人可能会想到把网页考到本地,然后本地提交但是有一个 问题是有的网站通过简单的比较HTTP_REFERER和SERVER_NAME的值就可以 防止. 好了很多人没办法了吧,除了写SOCKET程序改变HTTP_REFERER还有一个更 简单的办法.
------------len.reg----------------- Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\扩展(&E)] @="C:\\Documents and Settings\\Administrator\\桌面\\len.htm" "contexts"=dword:00000004
-----------end----------------------
-----------len.htm------------------ <script language=vbs> set srcevent = external.menuarguments.event set doc=external.menuarguments.document set ele=doc.elementfrompoint( srcevent.clientx, srcevent.clienty ) if ele.type ="text" or ele.type="password" then ele.maxlength=200 ele.size=200 end if </script> ----------end-----------------------
用法:先把len.reg导入注册表(注意文件路径) 然后把len.htm拷到注册表中指定的地方. 打开网页,光标放在要改变长度的输入框上点右键,看多了一个叫扩展的选项了吧 单击搞定!
后记:同样的也就可以对付那些限制输入内容的脚本了.
附:防止本地提交的ASP代码. <% server_v1=Cstr(Request.ServerVariables("HTTP_REFERER")) server_v2=Cstr(Request.ServerVariables("SERVER_NAME")) if mid(server_v1,8,len(server_v2))<>server_v2 then response.write "<br><br><center><table border=1 cellpadding=20 bordercolor=black bgcolor=#EEEEEE width=450>" response.write "<tr><td style=’font:9pt Verdana’>" response.write "你提交的路径有误,禁止从站点外部提交数据请不要乱该参数!" response.write "</td></tr></table></center>" response.end end if %>
·上一篇: 端口转发轻松设 让旁注攻击绕道走
·下一篇: 分析一段有注射漏洞的asp代码时的小挫折
|