【Nginx】nginx目录遍历漏洞

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

前言

除了X-Forwarded-For伪造客户端IP漏洞,发现还要修改关于目录遍历的漏洞,这里简单记录一下。

1、介绍

Nginx 目录遍历(Nginx Directory Traversal)是一种安全漏洞,通常会影响 Nginx 服务器上的 Web 应用程序。该漏洞允许攻击者通过利用应用程序代码中的错误配置或代码漏洞,来访问系统中未经授权的文件和目录。

简单来说,当 Nginx 服务器上的 Web 应用程序允许用户通过 URL 访问目录和文件,同时将 URL 中的目录和文件名称注入到服务器端的响应中时,就可能存在目录遍历漏洞。攻击者可以通过注入特殊的字符序列来绕过应用程序的访问控制,以访问敏感文件或目录。

2、问题分析介绍

网上有很多描述的示例,可以看Nginx漏洞修复之目录穿越(目录遍历)漏洞复现及修复
注意: 该漏洞主要出现在alias访问静态资源文件的时候。

例如,Nginx配置如下:

location /static {
    alias /static/images/;
}

一个 web 应用程序允许用户通过 URL 访问静态文件,如下:

http://www.example.com/static/images/picture.jpg

如果攻击者能够使用目录遍历漏洞来访问应用程序中未授权的目录和文件,那么他们可能通过以下 URL 访问静态文件:

http://www.example.com/static../../../../etc/passwd

上述 URL 的作用是向上遍历至根目录,然后访问 /etc/passwd 文件,从而访问到包含用户凭据等敏感信息的文件。

注意:
/static../表示/static/images/..,因为/static被alias替换成了/static/images/

3、解决

根据上面问题说明,我们可以直观的明白问题,主要原因是攻击者可以通过加入..得到/static../,使得实际请求地址变为/static/images/..然后进行非法访问。

修改也很简单,只需要在location的URI末尾加上/就可以,如下:

location /static/ {
    alias /static/images/;
}

查了些资料,感觉都挺有道理的解释,如下:

3.1 解释:为什么加入/可以解决✨

原本问题出现在/static后面没有结束限制,前面只要匹配上就会被alias替换成相应的URI,然后后面接入的..就会形成新的路径被攻击。

现在加上/来解决,是因为/表示必须是目录,因此在该location中,只会响应/static/及其子目录的请求,而无法获取到网站目录之外的文件

此外,加上/后,URI需要/static/才能被alias替换,无法在里面加入..形成/static../来访问。

3.2 解释2:什么是目录,什么是文件

/结尾表示资源是一个目录,而不是文件。当在Nginx配置location时,如果使用了以斜杠结尾的URI,则Nginx会将其视为目录而不是文件,从而决定以何种方式呈现给客户端。

在Unix/Linux操作系统中,一个文件可以是文本文件、二进制文件、图片、音频等各种类型,而一个目录则是用来存放文件及其他目录的。类似于Windows操作系统中的文件夹,一个目录可以包含多个文件或其他目录,即使目录为空,也会占用一定的磁盘空间,显示为一个文件夹的图标。

在Nginx中,一个URI可以表示一个文件,也可以表示一个目录。如果一个URI以斜杠结尾,Nginx会认为它是一个目录而不是文件。此时就可以通过访问该URI下的Index文件来展示目录的内容了。例如,如果浏览器访问http://example.com/files/,则Nginx会自动在该URI下查找名为index.htmlindex.htmindex.php等文件,并将其展示出来。

4、补充

关于Nginx配置中对于location末尾的“/“的处理文章来源地址https://www.toymoban.com/news/detail-649374.html

到了这里,关于【Nginx】nginx目录遍历漏洞的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 目录穿越/遍历漏洞及对其防御方法的绕过

      目录穿越(目录遍历)是一个Web安全漏洞,攻击者可以利用该漏洞读取运行应用程序的服务器上的任意文件。 这可能包括应用程序代码和数据,后端系统的登录信息以及敏感的操作系统文件。目录穿越不仅可以访问服务器中的任何目录,还可以访问服务器中任何文件的内

    2024年02月11日
    浏览(29)
  • WEB安全基础入门—目录遍历(路径遍历\路径穿越攻击)

    欢迎关注订阅专栏! WEB安全系列包括如下三个专栏: 《WEB安全基础-服务器端漏洞》 《WEB安全基础-客户端漏洞》 《WEB安全高级-综合利用》 知识点全面细致,逻辑清晰、结合实战,并配有大量练习靶场,让你读一篇、练一篇,掌握一篇,在学习路上事半功倍,少走弯路! 欢

    2024年02月02日
    浏览(38)
  • 网络&信息安全:nginx漏洞收集(升级至最新版本)

    💖The Begin💖点点关注,收藏不迷路💖 漏洞名称: nginx 越界写入漏洞(CVE-2022-41742) 风险等级: 高 高可利用: 否 CVE编号: CVE-2022-41742 端口(服务): 8000(nginx) 风险描述: NGINX 在 ngx_http_mp4_module 中存在漏洞,这可能允许攻击者激发 worker 进程的崩溃,或者通过使用特制的 mp4 文

    2024年04月11日
    浏览(34)
  • 网络安全--linux下Nginx安装以及docker验证标签漏洞

    目录 一、Nginx安装  二、docker验证标签漏洞 1.首先创建 Nginx 的目录并进入: 2.下载 Nginx 的安装包,可以通过 FTP 工具上传离线环境包,也可通过 wget 命令在线获取安装包: 没有 wget 命令的可通过 yum 命令安装: 3.解压 Nginx 的压缩包: 4.下载并安装 Nginx 所需的依赖库和包:

    2024年02月11日
    浏览(36)
  • JAVA安全之目录遍历漏洞

    路径(目录)遍历是攻击者能够访问或存储应用程序运行位置之外的文件和目录的漏洞。这可能会导致从其他目录读取文件,并且在文件上传覆盖关键系统文件的情况下。 例如,假设我们有一个托管一些文件的应用程序,并且可以按以下格式请求它们:http://example.com/file=re

    2024年02月08日
    浏览(33)
  • 【burpsuite安全练兵场-服务端3】目录遍历漏洞-6个实验(全)

       博主:网络安全领域狂热爱好者(承诺在CSDN永久无偿分享文章)。 殊荣:CSDN网络安全领域优质创作者,2022年双十一业务安全保卫战-某厂第一名,某厂特邀数字业务安全研究员,edusrc高白帽,vulfocus、攻防世界等平台排名100+、高校漏洞证书、cnvd原创漏洞证书等。 擅长:

    2024年02月03日
    浏览(31)
  • 051-WEB攻防-前后台功能点&文件下载&文件读取&文件删除&目录遍历&目录穿越

    1、文件安全-前后台功能点-下载读取删除 2、目录安全-前后台功能点-目录遍历目录穿越 演示案例: ➢文件安全-下载删除-案例黑白盒 ➢目录安全-遍历穿越-案例黑白盒 1、下载=读取(获取源码) 文件下载 利用:下载敏感文件(数据库配置,中间件配置,系统密匙等文件信息

    2024年03月10日
    浏览(55)
  • Nginx 安全漏洞

    CVE-2021-23017 nginx存在安全漏洞,该漏洞源于一个离一错误在该漏洞允许远程攻击者可利用该漏洞在目标系统上执行任意代码。受影响版本:0.6.18-1.20.0 CVE-2019-9511,CVE-2019-9513,CVE-2019-9516 Nginx 1.9.51 至 16.0版本及1.17.2.版本中的HTTP/2实现中存在拒绝服务漏洞,攻击者以多个数据流请

    2024年02月04日
    浏览(29)
  • 中间件安全—Nginx常见漏洞

      在上篇中间件安全—Apache常见漏洞中,并未对中间件漏洞进行解释,这里补充一下。   所谓的中间件漏洞就是并非是由于代码程序上设计存在缺陷而导致的漏洞,而是属于应用部署中环境配置不当或使用不当而导致的漏洞,同时这方面的漏洞也是最容易被管理员忽略的

    2024年02月09日
    浏览(31)
  • 使用nginx处理的一些安全漏洞

    HTTP X-Permitted-Cross-Domain-Policies 响应头缺失 Nginx的nginx.conf中location下配置: HTTP Referrer-Policy 响应头缺失 Nginx的nginx.conf中location下配置: HTTP X-Content-Type-Options 响应头缺失 Nginx的nginx.conf中location下配置: HTTP X-Download-Options 响应头缺失 Nginx的nginx.conf中location下配置: HTTP Content-Security-Po

    2023年04月08日
    浏览(27)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包