百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

中间件安全—Nginx常见漏洞_nginx算中间件吗

off999 2025-02-20 17:28 32 浏览 0 评论

1.前言

??在上篇中间件安全—Apache常见漏洞中,并未对中间件漏洞进行解释,这里补充一下。

中间件安全—Apache常见漏洞

1.1.中间件漏洞概念

??所谓的中间件漏洞就是并非是由于代码程序上设计存在缺陷而导致的漏洞,而是属于应用部署中环境配置不当或使用不当而导致的漏洞,同时这方面的漏洞也是最容易被管理员忽略的一部分。

??同时不单单存在中间件安全,比如web服务器安全、web容器安全等等,还有一些其它常见的组件,都可能存在相应的漏洞。

1.2.服务器、中间件、容器基本概念

??web服务器:web服务器用于提供http服务,即向客户端返回信息,其可以处理HTTP协议,响应针对静态页面或图片的请求,控制页面跳转,或者把动态请求委托其它程序(中间件程序)等。

??web中间件:web中间件用于提供系统软件和应用软件之间的连接,以便于软件各部件之间的沟通,其可以为一种或多种应用程序提供容器。

??web容器:web容器用于给处于其中的应用程序组件(JSP,SERVLET)提供一个环境,是中间件的一个组成部分,它实现了对动态语言的解析。比如tomcat可以解析jsp,是因为其内部有一个jsp容器。

1.3.常见的组件

??web服务器:IIS、Apache、nginx、tomcat、weblogic、websphere等。

??web中间件:apache tomcat、BEA WebLogic、IBM WebSphere等。

??web容器:JSP容器、SERVLET容器、ASP容器等。

2.Nginx常见漏洞

??一下漏洞环境均使用Vulhub一键搭建漏洞测试靶场,在靶场中输入Nginx即可查询到相应的靶场。

2.1.CRLF注入漏洞

2.1.1.漏洞原理

??Nginx会将$uri进行解码,导致传入%0d%0a即可引入换行符,造成CRLF注入漏洞。

??错误的配置文件示例(原本的目的是为了让http的请求跳转到https上):

location / {
    return 302 https://$host$uri;
}

??我们一旦在请求路径内添加换行符的urlcode编码,就可以将其混到返回的数据包内起到修改返回数据的作用。甚至可以让恶意语句进入返回体内部引发更严重的XSS攻击。

2.1.2.漏洞复现

2.1.2.1.注入Set-Cookie头

??我们将请求中插入编码,就可以注入Set-Cookie头。

payload:http://your-ip:8080/%0d%0aSet-Cookie:%20a=1

2.1.2.2.XSS弹窗

??我们发送两个连续的换行\r\n后,可以直接修改返回报文的返回体。插入js代码引发xss。

payload:http://your-ip:8080/%0d%0a%0d%0a

2.2.目录穿越漏洞

2.2.1.漏洞原理

??Nginx在配置别名(Alias)的时候,如果忘记加/,将造成一个目录穿越漏洞。

??错误的配置文件示例(原本的目的是为了让用户访问到/home/目录下的文件):

location /files {
    alias /home/;
}

??但我们注意到/files没有加后缀/,而alias设置的/home/是有后缀/的,这个/就导致我们可以从/home/目录穿越到他的上层目录。

2.2.2.漏洞复现

2.2.2.1.访问网页

http://your-ip:8081

2.2.2.2.目录穿越

??通过使用下列的payload就可以成功穿越到根目录。

payload:http://your-ip:8081/files../

2.3.add_header被覆盖

2.3.1.漏洞原理

??Nginx配置文件子块(server、location、if)中的add_header,将会覆盖父块中的add_header添加的HTTP头,造成一些安全隐患。

??如下列代码,整站(父块中)添加了CSP头:

add_header Content-Security-Policy "default-src 'self'";
add_header X-Frame-Options DENY;

location = /test1 {
    rewrite ^(.*)$ /xss.html break;
}

location = /test2 {
    add_header X-Content-Type-Options nosniff;
    rewrite ^(.*)$ /xss.html break;
}

??但/test2的location中又添加了X-Content-Type-Options头,导致父块中的add_header全部失效。

2.3.2.漏洞复现

2.3.2.1.访问网页

http://your-ip:8082

2.3.2.2.触发XSS漏洞

??这里由于新的一点的浏览器都进行了一些过滤,所以导致无法弹出。

payload:http://your-ip:8082/test2#

2.4.解析漏洞

2.4.1.漏洞原理

cgi.fix_pathinfo=1 #php.ini --- 在php.ini中开启路径修复功能
security.limit_extensions = .php .jpg #php-fpm.conf --- 在php-fpm模块中开启了.jpg的php解析

??这二者合在一起,在网页有文件上传功能时,就会触发上传漏洞,总结来说漏洞成因就是同时开启路径修复和图片后缀名解析

2.4.2.漏洞复现

2.4.2.1.访问图片

??目前来看我们看到还是一张图片。

http://your-ip/uploadfiles/nginx.png

2.4.2.2.添加后缀

??我们在图片的链接后面添加/.php来进行解析,通过添加后的解析效果来看,已经成功的将图片解析成php文件了。

http://your-ip/uploadfiles/nginx.png/.php

2.4.2.3.访问上传界面

http://your-ip/index.php

2.4.2.4.上传文件

??这里我准备了一个图片马,当然图片马有很多,将代码写入图片马中即可,然后上传。

??这里可以看到,上传后系统将我的图片重命名为:
f47454d1d3644127f42070181a8b9afc.jpg那么到时候访问的时候就使用新的名字来访问。

2.4.2.5.访问上传的图片

??可以看到目前我上传的就是一张百度的图片,但是在图片中插入了图片马,我们对其进行解析试试

http://your-ip/uploadfiles/f47454d1d3644127f42070181a8b9afc.jpg

2.4.2.6.解析图片马

??可以看到成功解析了图片,这里我之前上传的图片马一点小问题,所以修改了一些,整体不影响效果。

http://your-ip/uploadfiles/f47454d1d3644127f42070181a8b9afc.jpg.php

相关推荐

腾讯qq密码怎么改(腾讯qq密码修改中心)

因腾讯视频是使用微信或者QQ帐号登录的,没有独立的腾讯视频账号密码,想修改登录密码,请通过QQ或者微信个人中心进行更改即可。QQ密码修改:进入手机QQ->左上角个人头像->设置->帐...

win10安全模式根本进不去(windows10安全模式进不去怎么办)

win10安全模式启动不了的解决教程:1、按下【win】+【R】,打开运行窗口,然后输入【msconfig】。点击确定。2、然后切换到【引导】界面。将【安全引导】和【最小】进行勾选,点击【确定】。3、...

win8激活密钥2025(win8激活密钥永久激活码)

1不存在永久激活密钥,但可以使用一些有效期长的密钥去激活Win10专业版。2Windows10的激活方式是基于数字权利,当你购买Windows10时,系统会将您电脑的硬件信息和购买记录绑定在一起...

windows远程桌面(远程桌面app安卓版)

要在WindowsServer2016上开启远程桌面服务,您可以按照以下步骤操作:1.**打开服务器管理器**:您需要登录到您的WindowsServer2016系统。2.**启用远程桌面...

网盘app下载安装(雀云网盘app下载安装)

因为这时的文件只是下载到云盘里,并没有下载到手机里,而在云盘里是不能执行安装程序的,需要把云盘里的安装包,下载到手机内存里面,才可以执行安装命令。现在相当于,你的快递已经在驿站签收了,随时都可以拿回来...

隐藏文件夹不显示(隐藏文件夹不显示出来)

如果,可能是文件被删除或移动到其他位置。隐藏文件是指在文件系统中设置了隐藏属性的文件,通过更改文件夹的设置可以显示或隐藏这些文件。如果文件夹显示隐藏文件的设置已经开启,但仍然找不到文件,可能是因为文件...

强制修改密码软件下载(强制密码修改器)

1.首先找回账户密码(适用于Android设备):如果您的设备与账户关联,可以访问账户的“找回密码”功能,通过重置密码来修改锁屏密码。2.使用其他登录方式(适用于iOS设备):如果您启用了Touch...

苹果ipad充不进电怎么办(苹果ipad充不进去电什么原因)

如果你发现你的iPad不能充电,那么你这样试一下,你看是不是充电的温度太低,你给他拿到一个比较温暖的房间里去,第2个就是你换一个充电器试一试,是不是那个充电器坏了,如果还不行的话,你可以把iPad重新...

无法正常启动0xc000005(无法正常启动你的电脑0xc0000001)

如果手机下载安装的第三方应用出现问题,无法正常使用,三星手机一般建议进行以下步骤排查及处理:1.关闭重新启动该应用。2.建议将此软件卸载重新安装尝试。3.更换其他版本尝试。4.更新下手机系统版本后安装...

无线网登录(无线网登录入口)

1.打开手机浏览器,访问192.168.0.1,输入用户名和密码就可以进入路由器管理界面。2.手机wifi连接路由器信号之后,会弹出对话框,需要输入用户名和密码(有的路由器只需要密码)。3.正确的输入...

恢复精灵免费版(恢复精灵app软件下载)

一般都是收费的。建议选择正规的软件。推荐你用《安易》数据恢复软件。聊天恢复精灵不需要电脑。因为聊天恢复精灵是属于线上的应用程序,只需要在电子设备里面下载安装聊天恢复精灵软件就可以直接使用不靠谱手机数据...

苹果系统官网下载地址(iphone官网ios下载)

PP助手、同步推等手机助手都可以下载已经下架的应用,这类助手有很多,一搜一大把,而且就我知道的PP助手还能选择下载历史版本,当然也有部分应用是没在商店上架的,他们是通过企业证书公布自己的应用,需要到官...

win10桌面切换(w10系统桌面切换)
win10桌面切换(w10系统桌面切换)

     win10桌面1和桌面2快速切换方法:1.按住win按键按键盘的【win】按键。2.再按Tab按键同时按下【tab】按键。3.点击桌面选项点击界面的桌面选项完成切换。具体方...

2025-12-19 23:51 off999

下载qq号安装(下载qq安装包)
下载qq号安装(下载qq安装包)

QQ不能更新和下载,可尝试一下办法:1,使用数据线,将手机和电脑连接,然后从电脑端下载,保证你不闪退,不掉线。2,将你手机桌面的QQ图标删除,彻底删除.从AppStore里下载.注:在你不联机的状态下,你可能用别的助手会闪退问题,推荐从...

2025-12-19 23:03 off999

系统之家在线一键重装系统(系统之家官方网站)
  • 系统之家在线一键重装系统(系统之家官方网站)
  • 系统之家在线一键重装系统(系统之家官方网站)
  • 系统之家在线一键重装系统(系统之家官方网站)
  • 系统之家在线一键重装系统(系统之家官方网站)

取消回复欢迎 发表评论: