欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

“上传漏洞”安全检测网站详解

程序员文章站 2022-03-29 11:41:06
“上传漏洞”入侵是目前对网站最广泛的入侵方法。90%的具有上传页面的网站,都存在上传漏洞。本文将介绍常见的上传漏洞及其防范技巧。 一、能直接上传asp文件的漏洞 (上...
“上传漏洞”入侵是目前对网站最广泛的入侵方法。90%的具有上传页面的网站,都存在上传漏洞。本文将介绍常见的上传漏洞及其防范技巧。

一、能直接上传asp文件的漏洞 (上传附件页面中对上传类型加以控制)

如果网站有上传页面,就要警惕直接上传asp文件漏洞。例如去年流行的动网5.0/6.0论坛,就有个upfile.asp上传页面,该页面对上传文件扩展名过滤不严,导致黑客能直接上传asp文件,因此黑客只要打开upfile.asp页,直接上传,asp木马即可拿到webshell、拥有网站的管理员控制权。

除此之外,目前已发现的上传漏洞,还有动感购物商城、动力上传漏洞、乔客上传漏洞等,只要运行“明小子Domain3.5”,点击“综合上传”,即可看到这些著名的上传漏洞。

像明小子这样的上传漏洞利用工具如今还有很多,例如上传漏洞程序4in1、动易2005上传漏洞利用工具、雷池新闻系统上传漏洞利用工具、MSSQL上传漏洞利用工具等等,使用此类工具,只需填写上传页面网址和Cookies,即可成功入侵网站。

【防范方法】:为了防范此类漏洞,建议网站采用最新版(例如动网7.1以上版本)程序建站,因为最新版程序一般都没有直接上传漏洞,当然删除有漏洞的上传页面,将会最安全,这样黑客再也不可能利用上传漏洞入侵了!

如果不能删除上传页面,为了防范入侵,建议在上传程序中添加安全代码,禁止上传asp\asa\js\exe\com等类文件,这需要管理者能看懂asp程序。

二、上传漏洞

目前网上流行的所有无组件上传类都存在此类漏洞——即黑客利用“抓包嗅探”、“ULTRAEDIT”和“网络军刀”等工具伪造IP包,突破服务器端对上传文件名、路径的判断,巧妙上传ASP、ASA、CGI、CDX、CER、ASPX类型的木马。

例如黑客上传了一个木马文件(xiaomm.asp空格.jpg),由于上传程序不能正确判断含有十六进制00的文件名或路径,于是就出现了漏洞,当上传程序接收到“xiaomm.asp空格.jpg”文件名数据时,一旦发现xiaomm.asp后面还有空格(十六进制的00),它就不会再读下去,于是上传的文件在服务器上就会被保存成xiaomm.asp,因此上传木马就成功了!

【防范方法】:最安全的防范办法就是删除上传页面。 (多数网站的处理方式:将上传的文件名更名,然后再通过http协议发送与服务器端,这样就可以避免传送过程中00造成的读取文件扩展名的丢失问题。)

三、图片木马上传漏洞

有的网站(例如动网7.1SP1博客功能),其后台管理中可以恢复/备份数据库,这会被黑客用来进行图片木马入侵。

图片木马入侵过程如下:首先将本地木马(例如F:\labxw\xiaomm.asp)扩展名改为.gif,然后打开上传页面,上传这个木马(例如F:\labxw\xiaomm.gif);再通过注入法拿到后台管理员的账号密码,溜进网站后台管理中,使用备份数据库功能将.gif木马备份成.asp木马(例如xiaomm.asp),即在“备份数据库路径(相对)”输入刚才图片上传后得到的路径,在“目标数据库路径”输入:xiaomm.asp,提示恢复数据库成功;现在打开IE,输入刚才恢复数据库的asp路径,木马就能运行了。

【防范方法】:删除后台管理中的恢复/备份数据库功能。

四、添加上传类型漏洞

如今大多数论坛后台中都允许添加上传类型,这也是个不小的漏洞!只要黑客用注入法拿到后台管理员账号密码,然后进入后台添加上传类型,在上传页面中就能直接上传木马!

例如bbsxp后台中允许添加asa|asP类型,通过添加操作后,就可以上传这两类文件了;ewebeditor后台也能添加asa类型,添加完毕即可直接上传asa后缀的木马;而LeadBbs3.14后台也允许在上传类型中增加asp类型,不过添加时asp后面必须有个空格,然后在前台即可上传ASP木马(在木马文件扩展名.asp后面也要加个空格)。

【防范方法】:删除后台管理中的添加上传类型功能。

五、通用防范上传漏洞入侵秘笈:将服务器端的组件改名

众所周知,ASP木马主要是通过三种组件FileSystemObject、WScript.Shell和Shell.Application来操作的,因此只要你在服务器上修改注册表,将这三种组件改名,即可禁止木马运行、防范黑客入侵了。这一招能防范所有类型的上传漏洞,因为即使黑客将木马成功上传到服务器中,但是由于组件已经被改名,木马程序也是无法正常运行的!

具体而言,需要将FileSystemObject组件、WScript.Shell组件、Shell.Application组件改名,然后禁用Cmd.exe,就可以预防漏洞上传攻击。

预防和测试方向:

1、 客户端:

1) 对上传附件的格式进行判断,限制上传格式的类型。防止直接上传木马。

2) 上传附件提交时,对附件重命名。防止上传附件名称中00形式(扩展名前添加空格),过滤掉00后的扩展名而上传木马

2、 服务器端:

1) 对上传的附件mime信息加以验证,判断上传内容的真正格式,防止上传木马程序扩展名修改后,客户端无法识别而上传木马。(由于客户端判断不能上传文件的真正类型)

2) 对服务器端的运行程序加以控制。见上文中“五”。