Web中间件漏洞

Nginx文件解析漏洞端口:80

攻击方法:
  解析漏洞
  目录遍历
  CVE-2016-1247:须要获取主机操做权限,攻击者可经过软连接任意文件来替换日志文件,从而实现提权以获取服务器的root权限。
参考:
https://www.seebug.org/vuldb/ssvid-92538php

漏洞等级

高危html

漏洞描述

nginx文件解析漏洞产生的缘由是网站中间件版本太低,可将任意文件看成php可执行文件来执行,可致使攻击者执行恶意代码来控制服务器。java

漏洞危害

  • 机密数据被窃取;nginx

  • 核心业务数据被篡改;git

  • 网页被篡改;github

  • 数据库所在服务器被攻击变为傀儡主机,致使局域网(内网)被入侵。web

修复方案

  • 升级中间件版本数据库

  • 部署Web应用防火墙apache

  • 对数据库操做进行监控windows

  • 修改php.ini文件,将cgi.fix_pathinfo的值设置为0;

  • 在Nginx配置文件中添加如下代码:

 if( $fastcgi_script_name
 ~ ..*/.*php 
 ) {return 403;}

这行代码的意思是当匹配到相似test.jpg/a.php的URL时,将返回403错误代码。

OPTIONS漏洞

漏洞描述

启用了不安全的http方法,Web服务器或应用程序服务器中间件是以不安全的方式配置 ,这些方法可能标识在服务器上启用了WebDAV,可能容许未受权的用户进行利用。此漏洞存在于IIS容器下,它扩展了HTTP协议,在GET/POST/HEAD等几个HTTP标准方法之外添加了一些新的方法,好比PUT/MOVE/COPY/DELETE方法,那么攻击者就能够经过PUT方法向服务器上传危险脚本。

漏洞测试

请求一个OPTIONS包,查看服务器所支持的HTTP方法。

OPTIONS / HTTP/1.1

Host:thief.one

漏洞危害

可能会在WEB服务器上上传、修改或删除WEB页面、脚本和文件,从而达到网页篡改,控制服务器的目的。

漏洞修复方案

若是服务器不须要支持WebDAV,请务必禁用此功能,或者禁止其不安全的HTTP请求方法。

Struts2远程命令执行

Struts2远程命令执行漏洞是指代码未对用户可控参数作过滤,致使直接带入执行命令的代码中,可被用来执行任意命令。

可带来以下危害:

  1. 攻击者可利用此漏洞直接执行操做系统命令获取WebShell,而且可经过该系统影响内网安全;

  2. 可被攻击者用来执行任意命令,写入后门等,进而彻底控制服务器,形成严重后果。

修复建议:

  1. 将struts版本升级至最新版;

  2. 部署Web应用防火墙。

Tomcat远程部署漏洞

Tomcat是Apache Jakarta软件组织的一个子项目,Tomcat是一个JSP/Servlet容器,它是在SUN公司的JSWDK(Java Server Web Development Kit)基础上发展起来的一个JSP和Servlet规范的标准实现,使用Tomcat能够体验JSP和Servlet的最新规范。

端口号:8080
攻击方法:
默认口令、弱口令,爆破,tomcat5 默认有两个角色:tomcat和role1。其中帐号both、tomcat、role1的默认密码都是tomcat。弱口令通常存在5如下的版本中。
在管理后台部署 war 后门文件
远程代码执行漏洞
参考:
https://paper.seebug.org/399/
http://www.freebuf.com/column/159200.html
http://liehu.tass.com.cn/archives/836
http://www.mottoin.com/87173.html

漏洞描述

这是JSP/PHP网站远程部署的一个工具,管理员只须要远程上传一个WAR格式的文件,即可以发布到网站,方便了开发人员部署代码的同时,也为黑客上传木马敞开了大门。

漏洞验证

经过访问:Http://localhost:8080/manager管理地址,尝试弱口令或默认口令,若能登录成功,则存在此漏洞。

漏洞危害

致使被上传木马文件,控制服务器

漏洞修复

1.删除此管理页面

2.防火墙设置外网禁止访问此页面,或设置上传文件类型

3.中间件设置此页面访问权限

4.修改默认帐号密码

5.升级tomcat为最新版本

JBoss远程部署漏洞

是一个运行EJB的J2EE应用服务器。它是开放源代码的项目,遵循最新的J2EE规范。从JBoss项目开始至今,它已经从一个EJB容器发展成为一个基于的 J2EE 的一个Web 操做系统(operating system for web),它体现了 J2EE 规范中最新的技术。

端口:8080
攻击方法:
弱口令,爆破
管理后台部署 war 后门
反序列化
远程代码执行
参考:
http://www.vuln.cn/6300
http://mobile.www.cnblogs.com/Safe3/archive/2010/01/08/1642371.html
https://www.zybuluo.com/websec007/note/838374
https://blog.csdn.net/u011215939/article/details/79141624

漏洞描述

JBoss这是一个基于JavaEE的应用服务器,与tomcat相似的是jboss也有远程部署平台,但不须要登录。

漏洞验证

尝试访问http://localhost:8080 由于通常管理后台为8080端口

漏洞危害

上传恶意木马文件,控制服务器

漏洞修复

1.开启jmx-console密码认证

2.删除jmx-console.war与web-console.war

WebLogic远程部署漏洞


弱口令、爆破,弱密码通常为weblogic/Oracle@123 or weblogic
管理后台部署 war 后门
SSRF
反序列化漏洞
weblogic_uac
参考:
https://github.com/vulhub/vulhub/tree/master/weblogic/ssrf
https://blog.gdssecurity.com/labs/2015/3/30/weblogic-ssrf-and-xss-cve-2014-4241-cve-2014-4210-cve-2014-4.html
https://fuping.site/2017/06/05/Weblogic-Vulnerability-Verification/
https://bbs.pediy.com/thread-224954.htm

漏洞描述

weblogic是一个基于JavaEE构架的中间件,安装完weblogic默认会监听7001端口,能够用来远程部署网站代码。

漏洞验证

默认后台地址:

http://localhost:7001/console/login/loginForm.jsp

漏洞危害

可上传恶意木马文件,控制服务器

漏洞修复

删除远程部署页面

Apache解析漏洞

端口:80 攻击方法: 解析漏洞 目录遍历

漏洞描述

Apache 解析文件的规则是从右到左开始判断解析,若是后缀名为不可识别文件解析,就再往左判断。好比 test.php.owf.rar “.owf”和”.rar” 这两种后缀是apache不可识别解析,apache就会把wooyun.php.owf.rar解析成php

漏洞检测

本地访问http://localhost/test.php.nmask,是否能被解析成php,若能则存在此漏洞。

漏洞危害

配置文件上传漏洞,可绕过waf/黑名单等限制,上传木马文件,控制服务器。

漏洞修复

1.apache配置文件,禁止.php.这样的文件执行,配置文件里面加入

<Files ~ “.(php.|php3.)”>
        Order Allow,Deny
        Deny from all
</Files>

2.用伪静态能解决这个问题,重写相似.php.*这类文件,打开apache的httpd.conf找到LoadModule rewrite_module modules/mod_rewrite.so把#号去掉,重启apache,在网站根目录下创建.htaccess文件,代码以下:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .(php.|php3.) /index.php
RewriteRule .(pHp.|pHp3.) /index.php
RewriteRule .(phP.|phP3.) /index.php
RewriteRule .(Php.|Php3.) /index.php
RewriteRule .(PHp.|PHp3.) /index.php
RewriteRule .(PhP.|PhP3.) /index.php
RewriteRule .(pHP.|pHP3.) /index.php
RewriteRule .(PHP.|PHP3.) /index.php
</IfModule>

Apache漏洞与防御

  Apache自己也存在一些漏洞,好比slowhttp漏洞,固然官方认为其是apache的特性而不算是一种漏洞,然而事实证实它的危害真的很大。除了slowhttp漏洞之外,其第三方moudle存在不少反序列化或者远程命令执行的漏洞。

Apache slowloris漏洞

漏洞描述

因为apache漏洞引起的拒绝服务攻击,其原理是以极低的速度往服务器发送HTTP请求。apache等中间件默认会设置最大并发连接数,而这种攻击就是会持续保持链接,致使服务饱和不可用。slowloris有点相似基于HTTP协议的SYN flood攻击。

漏洞检测

slowhttptest工具

漏洞危害

致使服务不可用,拒绝服务

漏洞修复

1.升级apache为最新版本

2.针对ip+cookie,限制访问频率(因为cookie能够更改,ip可使用代理,或者肉鸡,也不可靠)

3.关闭apache最大链接数等,合理配置中间件,缓解ddos攻击。 

IIS6.0远程命令执行漏洞(cve-2017-7269)

漏洞描述

当IIS6.0 开启了WebDav协议(开启PROPFIND协议)时存在此漏洞,缓冲区溢出致使远程命令执行。

漏洞检测

基于版本,windowsserver2003 R2+iis6.0+开启PROPFIND协议的服务器存在此漏洞。

漏洞危害

服务器可被远程命令执行

漏洞修复

1.关闭WebDAV服务

2.使用相关防御设备

IIS短文件名暴力猜解

漏洞描述

为了兼容16位MS-DOS程序,Windows为文件名较长的文件(和文件夹)生成了对应的windows 8.3 短文件名,而生成的短文件名符合必定的规律,能够被暴力猜解。

漏洞检测

须要使用到通配符*,在windows中,*能够匹配n个字符,n能够为0。判断某站点是否存在IIS短文件名暴力破解漏洞,能够分别访问以下两个URL:

  1. http://localhost/\*~1\*\*\*\*/a.aspx

  2. http://localhost/l1j1e\*~1\*\*\*\*/a.aspx

这里我使用了4个星号,主要是为了程序自动化猜解,逐个猜解后缀名中的3个字符,实际上,一个星号与4个星号没有任何区别(上面已经提到,*号能够匹配空)。

若是访问第一个URL,返回404。而访问第二个URL,返回400。 则目标站点存在漏洞。

漏洞危害

  1. 猜解后台地址

  2. 猜解敏感文件,例如备份的rar、zip、.bak、.SQL文件等。

  3. 在某些情形下,甚至能够经过短文件名web直接下载对应的文件。好比下载备份SQL文件。

漏洞修复

  1. 升级.net framework

  2. 修改注册表键值:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem

修改NtfsDisable8dot3NameCreation为1。再新建文件夹,将原网站目录内容拷贝进入新建的文件夹,使用新建的文件夹做为网站目录。

java反序列化漏洞

漏洞描述

因为某些java容器(中间件)中的jar包存在反序列化漏洞,致使可被远程命令执行。影响容器有:jenkins,jboss,weblogic,websphere等。

漏洞检测

下载反序列化测试工具

漏洞危害

致使服务器被远程命令执行

漏洞修复

1.JBOSS

JBoss服务专有用户权限,没有登陆权限,达到权限最小化,启用防火墙,防御防火墙策略设置,限定能够链接到JBoss的IP,安全验证配置,如果公开服务,须要在jmx-invoker-service.xml中开启权限验证,更新源代码,在JBoss源代码中打入最新的官方patch。

2.Weblogic

首先中止weblogic,在中间件modules目录下找到名为

com.bea.core.apache.commons.collections_x.x.x.jar文件

而后下载最新的commons-collections(bin包),用压缩包中的commons-collections-x.x.x.jar替换有漏洞的jar包

jar包下载地址:

http://commons.apache.org/proper/commons-collections/download_collections.cgi

注意:保持原jar包的名字,即名字不变换掉jar包

最后启动weblogic。

Apache 默认页面泄漏漏洞

漏洞描述:

Apache在安装后存在默认目录/icons/、/manual/

漏洞检测:

在浏览器里输入

http://IP/icons/,http://IP/manual/

若是能访问,则说明存在默认页面泄漏漏洞,以下图所示:

修复方案:

1.对于Apache2,注释掉Apache配置文件中的目录配置中的如下两行:

Alias /icons/ "/usr/share/apache2/icons/"
AliasMatch ^/manual(?:/(?:de|en|es|fr|ja|ko|ru))?(/.*)?$ "/usr/share/apache2/manual$1"

2.或者删除配置文件中的icons、manual两个目录。

 

IIS漏洞与防御

  IIS是微软的一款web服务器,其配置不当容易产生webdav漏洞。webdav自己是iis的一项扩展功能,开启后可使用除了get、post之外的一些请求类型,好比put等。但若是配置不当,就会致使文件上传漏洞。除了webdav漏洞,近期还爆出了一个远程命令执行漏洞,CVE-2017-7269。

IIS Webdav漏洞详情

  当测试一个站点是否存在webdav漏洞时,能够先构造一个OPTIONS请求,若返回200,则查看返回头的Allow参数中包含哪些方法(能够请求)。

若是存在PUT方法,则能够尝试写入一个txt文件。

若返回200则说明上传成功,此时能够手动访问此文件,确认是否存在。固然也有可能返回403,这表示此目录没有上传的权限,能够尝试上传到其余目录。
经过MOVE或COPY方法改文件后缀名

相关文章
相关标签/搜索