一句话木马
指通过特定的程序木马程序来控制另一台计算机,木马通常有两个可执行程序,一个是控马程序是目前比较流行的病毒文件,与一般的病毒不同,他不会自我繁衍,也不会刻意去伪装吸引用户下载执行。像施种木马者提供打开被种主机用户的门户,
文件上传漏洞原理
网站web应用都有一些上传功能,比如文档,图片,头像,视频上传,当上传功能的实现代码没有严格校验上传文件的后缀和文件上传的类型,此时攻击者就可以上传一个webshell到一个web可访问的目录上,并将恶意文件传递给比如php解释器去执行。之后就可以在服务器上执行恶意代码,进行数据库执行,服务器文件管理,服务器命令执行的呢个恶意操作,还有一部分是攻击者通过web服务器的解析漏洞来突破web应用程序的防护
文件上传绕过方式
1,客户端javascript检查
客户端检测一般只是在javascript代码中加入了对扩展名的黑白名单检查,这种方式只是放置一些普通用户上传错误,只要用Burpsuite在文件上传时进行截断改文件后缀名就可以绕过
2,服务端检测
1,MIME类型检查
就是检查Content-Type的值,MIME类型决定了某种扩展名用了什么应用程序打开,GIF的MIME值位image/gif
2,文件扩展名检查
与前端js后缀名检测类似,只不过是在后端进行检查,有时候还可以配合解析漏洞结合目录路径攻击,例如test.sap/test.ipg。后端后缀名检查也分两种,黑名单与白名单
黑名单检查绕过
1,文件名大小绕过,例代码中有php规则,那么可以使用php或php绕过
2,黑名单列表绕过,对黑名单列表中没有的扩展名进行攻击 比如:asa ,cre等
3,利用windows和linux系统的特性进行特殊文件名绕过 a.asp a.asp_等
4,htaccess文件攻击
5,配合解析漏洞(IIS,Apache)等
白名单绕过
1,截断攻击,比如a.asp%00.gif等等
2,配合解析漏洞
目录路径的检查
对目录路径可进行0x00截断绕过,以及可以控制目录地址,上传文件夹的参数可控
检测文件内容是否包含恶意代码
这种方式主要检查图片文件幻数,比如GIF
的值为GIF89a,后端代码会检测改值判断是否为DIF
图片文件,想要绕过只要在幻数后面加上一句话木马就行
解析漏洞
IIS解析漏洞
IIS6.0(是一种web(网页)服务组件,其中包括web服务器,FTP服务器,NNTP服务器和STP服务器,分别用于网页浏览,文件传输,新闻服务和邮件发送等方面,它使得在网络上发布信息是一很容易的事)在解析文件时存在以下两个解析漏洞
1,当建立.asa, .asp格式的文件夹时,目录下的任意文件爱你都将被IIS服务器当作asp文件来解析
2,在IIS6.0下,分号后面的扩展名不会被解析,也就是说的当文件名为*.asp;.jpg时,IIS6.0同样会以ASP脚本来执行
Apache解析漏洞
在Apache 1.x和Apache 2.x中存在解析漏洞,但他么与IIS解析漏洞不同
Apache在解析文件时有一条规则,当碰到不认识的扩展名时,将会从后向前解析,直到碰到认识的扩展名位置,如果都不认识,则会暴露其源码,比如文件名为配合rar.xx.aa时Apache首先会解析aa扩展名,如果不认识则接着解析xx扩展名这样一直遍历到认识的为止,再将其解析
phpCGI解析漏洞
在php的配置文件中有一个关键的选项:CGI:x_pathinfo,这个选项在某些版本是默认开启的,在开启时访问url,比如:http://www.xxx.com/x.txt/x.php,其中x.php是不存在的文件,所以phpp将会向前递归解析,于是就造成了解析漏洞,由于这种漏洞查u年间于·iis7.0 iis7.5 nginx等web服务器,所以将常被误认为时这些web服务器的解析漏洞
Nginx<8.03空字节代码执行漏洞
Nginx在图片中嵌入PHP代码,然后通过访问xxx.jpg%00.php可以执行其中的代码。
其他
在window环境下,xx.jpg[空格]或xx.jpg.这两类文件都是不允许存在的,若这样命名windows会默认除去空格或点,攻击者可以通过抓包在文件后加一个空格或者带闹闹绕过黑名单,若上传成功,空格和点都会被windows自动消除吗、,这样也可以getshell
如果在Apache中配置文件.htaccess
可被执行且可被上传,那可以尝试在.htaccess中写入,SetHandlerapplication/x-httpd=php,然后再上传名称为shell.jpg的sebshell,这样shell.ipg就可以解析php文件
文件上传漏洞是指:用户上传了一个可执行的脚本文件,并通过该文件获得了执行服务端命令的权限。
文件上传漏洞测试过程:
1,进行正常的文件上传,期间可抓包查看
2,尝试上传不同类型的恶意脚本文件,如JSP PHP文件等
3,查看是否在前端做了上传限制,如大小,格式,并尝试进行绕过
4,利用报错或猜错等方法获得木马路径,访问