apache、nginx、Tomcat、IIS引擎解析漏洞
程序员文章站
2022-05-09 11:17:55
...
引擎解析漏洞
常见的web容器有IIS、Apache、Nginx、Tomcat等,以下是详细讲解
IIS
IIS简介
是Windows系统提供的一种服务,它包括WWW服务器、FTP服务器和SMTP服务器
IIS 6.0
当建立*.asa,*.asp格式的文件夹时,其目录下的人以文件都将被IIS当做asp文件解析
当文件名为*.asp;1.jpg时,同样会以ASP脚本解析
默认解析为*.asa、*.cer、*.cdx
IIS 7.0-7.5 / Nginx <= 0.8.37
在Fast-CGI开启状态下,在文件路径后加上 /xx.php ,则 xx.jpg/xx.php 会被解析为php文件
Nginx
漏洞简介
Nginx漏洞其实就是PHP CGI漏洞,在php的配置文件中有一个关键的选项:cgi.fi:x_pathinfo,
此选项默认是开启的。
PHP CGI解析漏洞
Fast-CGI关闭
在Fast-CGI关闭的情况下, Nginx 仍然存在解析漏洞: 在文件路径(xx.jpg)后面加上 %00.php ,
即 xx.jpg%00.php 会被当做 php 文件来解析
Fast-CGI开启
在Fast-CGI开启状态下,在文件路径后加上 /xx.php ,
则 xx.jpg/xx.php 会被解析为php文件
Apache
权限
Apache默认以root或者admin身份运行,会造成以下两个后果:
#当黑客入侵成功后,将直接获得一个高权限的shell
#应用程序将具有较高的权限,当出现bug时会带来较高的风险,比如删除本地重要文件,
杀死进程等不可预知的结果
日志安全
Apache的log文件会记录所有入侵痕迹,
默认路径为安装目录下的/apache-20/logs/access.log
后缀解析
test.php.x1.x2.x3 ( x1,x2,x3 为没有在 mime.types 文件中定义的文件类型)。
Apache 将从右往左开始判断后缀, 若x3为非可识别后缀,则判断x2,直到找到可识别后缀为止,
然后对可识别后缀进行解析.apache认识的拓展名存储在安装目录下的/conf/mime.types中。
.htaccess
当AllowOverride被启用时,上传启用解析规则的.htaccess
CVE-2017-15715
%0A绕过上传黑名单
Tomcat
默认运行在8080端口。管理员可以在tomcat mamager中部署war包,但是用户需要有manager权限,配置文件位置为安装目录下的/conf/tomcat-users.xml中。以下是两个安全隐患配置。
#使用弱口令并赋予manager权限
<user username=”root” password=”root” roles=”manager”/>
#使用默认用户并赋予manager权限
<user username=”tomcat” password=”tomcat” roles=”tomcat,manager”/>
Lighttpd
xx.jpg/xx.php
Windows
Windows不允许空格和点以及一些特殊字符作为结尾,创建这样的文件会自动取出,
所以可以使用 xx.php[空格] , xx.php., xx.php/, xx.php::$DATA 可以上传php
参考链接