中间件安全—Nginx常见漏洞

这篇具有很好参考价值的文章主要介绍了中间件安全—Nginx常见漏洞。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.前言

  在上篇中间件安全—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

nginx漏洞,网络安全学习,# 中间件安全,中间件,安全,nginx,web安全,信息与通信

2.1.2.2.XSS弹窗

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

payload:http://your-ip:8080/%0d%0a%0d%0a<script>alert(1)</script>

nginx漏洞,网络安全学习,# 中间件安全,中间件,安全,nginx,web安全,信息与通信

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

nginx漏洞,网络安全学习,# 中间件安全,中间件,安全,nginx,web安全,信息与通信

2.2.2.2.目录穿越

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

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

nginx漏洞,网络安全学习,# 中间件安全,中间件,安全,nginx,web安全,信息与通信

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

nginx漏洞,网络安全学习,# 中间件安全,中间件,安全,nginx,web安全,信息与通信

2.3.2.2.触发XSS漏洞

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

payload:http://your-ip:8082/test2#<script>alert(1)</script>

nginx漏洞,网络安全学习,# 中间件安全,中间件,安全,nginx,web安全,信息与通信

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

nginx漏洞,网络安全学习,# 中间件安全,中间件,安全,nginx,web安全,信息与通信

2.4.2.2.添加后缀

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

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

nginx漏洞,网络安全学习,# 中间件安全,中间件,安全,nginx,web安全,信息与通信

2.4.2.3.访问上传界面
http://your-ip/index.php

nginx漏洞,网络安全学习,# 中间件安全,中间件,安全,nginx,web安全,信息与通信

2.4.2.4.上传文件

  这里我准备了一个图片马,当然图片马有很多,将代码写入图片马中即可,然后上传。
  这里可以看到,上传后系统将我的图片重命名为:f47454d1d3644127f42070181a8b9afc.jpg那么到时候访问的时候就使用新的名字来访问。
nginx漏洞,网络安全学习,# 中间件安全,中间件,安全,nginx,web安全,信息与通信

2.4.2.5.访问上传的图片

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

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

nginx漏洞,网络安全学习,# 中间件安全,中间件,安全,nginx,web安全,信息与通信

2.4.2.6.解析图片马

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

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

nginx漏洞,网络安全学习,# 中间件安全,中间件,安全,nginx,web安全,信息与通信文章来源地址https://www.toymoban.com/news/detail-703561.html

到了这里,关于中间件安全—Nginx常见漏洞的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 中间件安全—Tomcat常见漏洞

      整个复现环境均使用Vulhub一键搭建漏洞测试靶场,Vulhub靶场:链接 1.2.1.漏洞原理   Tomcat配置文件/conf/web.xml 配置了可写(readonly=false),导致可以使用PUT方法上传任意文件,攻击者将精心构造的payload向服务器上传包含任意代码的 JSP 文件。之后,JSP 文件中的代码将能被

    2024年02月08日
    浏览(60)
  • 第59天-服务攻防-中间件安全&CVE 复现&IIS&Apache&Tomcat&Nginx

    文章仅供学习交流,一些价值不高的漏洞没复现,日后来兴趣再补坑(大概~) 文章略长,阅读需耐心~ 视频链接:  【小迪安全】红蓝对抗 | 网络攻防 | V2022全栈培训_哔哩哔哩_bilibili https://www.bilibili.com/video/BV1pQ4y1s7kH 目录 一.知识点 二.章节内容 1、常见中间件的安全测试 2、

    2024年02月20日
    浏览(60)
  • 小迪安全 第59天 服务攻防-中间件安全&CVE 复现&IIS&Apache&Tomcat&Nginx

    IIS现在用的也少了,漏洞也基本没啥用  没有和权限挂钩 windows 2003上面的漏洞 配置不当:该漏洞与 Nginx、php 版本无关,属于用户配置不当造成的解析漏洞。 这个跟文件上传类似,找到文件上传点,上传png图片 找到上传路径和nginx版本号 查看路径 添加后缀可以用php执行png

    2024年02月04日
    浏览(100)
  • Day79:服务攻防-中间件安全&IIS&Apache&Tomcat&Nginx&弱口令&不安全配置&CVE

    目录 中间件-IIS-短文件文件解析蓝屏写权限 HTTP.SYS(CVE-2015-1635)主要用作蓝屏破坏,跟权限不挂钩 IIS短文件(iis全版本都可能有这个问题) IIS文件解析 IIS写权限 中间件-Nginx-文件解析目录穿越漏洞CRLF CVE-2013-4547 文件上传 解析漏洞(配置不当) 目录穿越(配置不当) CRLF注入(配置

    2024年04月08日
    浏览(56)
  • 笔记:常见中间件漏洞

    Apache Shiro框架提供了记住密码的功能(RememberMe),用户登录成功后会生成经过加密并编码的Cookie, 在服务端对rememberMe的Cookie值先base64解码然后AES解密再反序列化 序列化:序列化=》使用密钥进行AES加密=》base64加密 反序列化:base64解密=》使用密钥进行AES解密=》反序列化 因为默

    2024年02月13日
    浏览(43)
  • Web中间件常见漏洞

    Web中间件常见漏洞 我们常见的中间件有apache,tomcat,IIS,weblogic(其实就是web容器),这些中间件可以设置支持的HTTP方法。每一个HTTP方法都有其对应的功能,在这些方法中,PUT可以直接从客户机上传文件到服务器。如果中间件开放了HTTP中的PUT方法,那么恶意攻击者就可以直接上传

    2024年02月14日
    浏览(69)
  • 网络安全基础知识&中间件简单介绍

    apache-httpd tomcat iis lighttp nginx:不是用来web服务器,而是用来做反向代理(tps10w,优化tqs2020w) fastdf:FastDFS 是一个开源的高性能分布式文件系统(DFS)。 它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡。主要解决了海量数据存储问题,特别适合以

    2023年04月16日
    浏览(49)
  • Nginx 学习(十)高可用中间件的配置与实现

    调度器出现单点故障,如何解决? Keepalived实现了高可用集群 Keepalived最初是为LVS设计的,专门监控各服务器节点的状态 Keepalived后来加入了VRRP功能,防止单点故障 Keepalived检测每个服务器节点状态,当服务器节点异常或工作出现故障, Keepalived将故障节点从集群系统中剔除,故

    2024年02月09日
    浏览(109)
  • 中间件安全IIS----文件解析漏洞利用

          IIS服务器主要存在两种解析缺陷:文件夹解析漏洞和分号截断漏洞。下面就来分别具体 了解一下。        在IS5x和6.0下对于录名称为“xasp”中的任何内容,包括“1.jpg”这样的图片文件,都会被当作ASP文件解析。例如“/example.asp/1.jpg”,这本来是一个图片资源,但是

    2024年01月18日
    浏览(43)
  • 小迪安全33WEB 攻防-通用漏洞&文件上传&中间件解析漏洞&编辑器安全

    # 知识点: 1 、中间件安全问题 2 、中间件文件上传解析 3 、 Web 应用编辑器上传 编辑器也就是第三方插件,一般都是文件上传漏洞 # 详细点: 1 、检测层面:前端,后端等 2 、检测内容:文件头,完整性,二次渲染等 3 、检测后缀:黑名单,白名单, MIME 检测等 4 、绕过技

    2024年03月16日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包