apache、nginx、Tomcat、IIS引擎解析漏洞
引擎解析漏洞
常见的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
参考链接
apache、nginx、Tomcat、IIS引擎解析漏洞的更多相关文章
- 攻防环境配置大全(iss/apache/nginx/tomcat/jboss/weblogic)
一.IIS/apache/nginx/tomcat 介绍 1.asp aspx 只能在微软系统的iis中间件运行 [asp+IIS+access(扩展名为mdb)].aspx+mssql+iis结合, ...
- 再提供一种解决Nginx文件类型错误解析漏洞的方法
[文章作者:张宴 本文版本:v1.2 最后修改:2010.05.24 转载请注明原文链接:http://blog.zyan.cc/nginx_0day/] 注:2010年5月23日14:00前阅读本文 ...
- IIS6.0,Apache低版本,PHP CGI 解析漏洞
IIS6.0解析漏洞 在IIS6.0下存在这样的文件"名字.asp;名字.jpg" 代表了jpg文件可以以asp脚本类型的文件执行. 根据这个解析漏洞我们可以上传这种名字类型的图片 ...
- Apache Nginx Tomcat
Tomcat Tomcat:动态解析容器 处理动态请求,是编译JSP/Servlet的容器 区别: 严格意义上来说 Apache和nginx应该叫做HTTP Server tomcat是一个Appli ...
- nginx文件类型错误解析漏洞
漏洞介绍:nginx是一款高性能的web服务器,使用非常广泛,其不仅经常被用作反向代理,也可以非常好的支持PHP的运行.80sec发现 其中存在一个较为严重的安全问题,默认情况下可能导致服务器错误的将 ...
- IIS文件名解析漏洞扼要分析
概括: 从技术角度分析IIS6文件名解析漏洞的原理与IIS7的相关情况. a.IIS6错误解析文件类型现象 1.当WEB目录下,文件名以 xxx.asp;xxx.xxx 来进行命名的时候,此文件将送交 ...
- X-Forwarded-For 负载均衡 7 层 HTTP 模式获取来访客户端真实 IP 的方法(IIS/Apache/Nginx/Tomcat)
https://help.aliyun.com/knowledge_detail/13051859.html?pos=1 1.IIS 6 配置方案2.IIS 7 配置方案3.Apache 配置方案4. ...
- Nginx文件类型错误解析漏洞--攻击演练
今天看书看到其中提到的一个漏洞,那就是Nginx+PHP的服务器中,如果PHP的配置里 cgi.fix_pathinfo=1 那么就会产生一个漏洞.这个配置默认是1的,设为0会导致很多MVC框架(如T ...
- 《Nginx文件类型错误解析漏洞--攻击演练》 (转)
今天看书看到其中提到的一个漏洞,那就是Nginx+PHP的服务器中,如果PHP的配置里 cgi.fix_pathinfo=1 那么就会产生一个漏洞.这个配置默认是1的,设为0会导致很多MVC框架(如T ...
随机推荐
- LinkedHashMap实现 LRU
一.leetcode 题目 运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制 . 实现 LRUCache 类: LRUCache(int capacity) 以正整数作为容 ...
- Linux (操作二)
1.U盘的装载与卸载(设备都保存在/dev中 /dev存放设备的文件) 1.卸载u盘 umount /media/xxx/xxx (xxx为具体路径) 2.查看设备 sudo fdisk -l ( ...
- Spring源码之AbstractApplicationContext中refresh方法注释
https://blog.csdn.net/three_stand/article/details/80680004 refresh() prepareRefresh(beanFactory) 容器状 ...
- 源码分析:升级版的读写锁 StampedLock
简介 StampedLock 是JDK1.8 开始提供的一种锁, 是对之前介绍的读写锁 ReentrantReadWriteLock 的功能增强.StampedLock 有三种模式:Writing(读 ...
- HotSpot类模型之InstanceKlass
上一篇 HotSpot源码分析之类模型 介绍了类模型的基础类Klass的重要属性及方法,这一篇介绍一下InstanceKlass及InstanceKlass的子类. 1.InstanceKlass类 ...
- SQL SERVER数据库Left Join用法
Left Join基本语法: SQL LEFT JOIN 关键字 LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的 ...
- C语言设计模式(命令模式)
#define ARRAY_SIZE(a) (sizeof(a)/sizeof(a[0])) typedef int (*parse_func)(const char *data,size_t len ...
- 快速安装jumpserver开源堡垒机
一 安装centos 7.X操作系统 二.选择极速安装(注意配置需要是4G2核) https://jumpserver.readthedocs.io/zh/master/install/setup_b ...
- 详解Java锁的升级与对比(1)——锁的分类与细节(结合部分源码)
前言 之前只是对Java各种锁都有所认识,但没有一个统一的整理及总结,且没有对"锁升级"这一概念的加深理解,今天趁着周末好好整理下之前记过的笔记,并归纳为此博文,主要参考资源为&l ...
- 面试阿里,字节跳动99%会被问到的java线程和线程池,看完这篇你就懂了!
前言: 最近也是在后台收到很多小伙伴私信问我线程和线程池这一块的问题,说自己在面试的时候老是被问到这一块的问题,被问的很头疼.前几天看到后帮几个小伙伴解决了问题,但是问的人有点多我一个个回答也回答不过 ...