背景

nginx之前被发现alias配置指令使用不当,会导致目录穿越漏洞,参考:https://github.com/yandex/gixy/blob/master/docs/en/plugins/aliastraversal.md

本文针对对此问题进行分析

复现及分析

版本信息:nginx/1.17.10 (Ubuntu)

nginx配置文件增加内容:

location /hd {alias /var/www/html/dd/;
}

然后访问http://test.com/hd../sql.conf,会返回服务器上/var/www/html/sql.conf的内容

原因分析:

nginx对request_uri中的/hd进行替换,替换之后为[http://test.com]/var/www/html/dd/../sql.conf,于是发生了目录穿越

若改为alias /var/www/html/dd,删除了最后的斜杠,替换之后为[http://test.com]/var/www/html/dd../sql.conf,访问会出错,不会出现穿越漏洞

危害程度:

1、实测发现仅能向上穿越一级目录,且可能跳出文档根目录(取决于alias是否指向根目录)

访问/hd../..%2f..%2ft.txt会出现400 error

2、文件内容会先解析一遍然后返回,不会出现譬如php源码泄露的问题。主要会泄露敏感的配置信息

意外发现

测试过程发现rewrite规则编写不当,也会导致目录穿越,如下,规则的本意是为了去掉sectest目录(与使用alias类似)

rewrite ^/sectest/?(.*)?$ /$1 last;

访问http://test.com/sectest../sql.conf,会返回服务器上/var/www/html/../sql.conf的内容

原因分析:

^/sectest/?(.*)?$ 匹配之后$1 = ../sql.conf,拼接之后为/var/www/html/../sql.conf(rewrite使用相对路径,从文档根目录),出现穿越

若改为^/sectest/(.*)?$  匹配/sectest/,访问会出现404,不会出现穿越漏洞

其他错误配置

location / { try_files $uri$args $uri$args/ /index.html; }

同样会出现目录穿越

nginx配置错误导致的目录穿越漏洞相关推荐

  1. nginx配置错误而导致目录遍历漏洞

    漏洞版本:nginx(Tested at 1.1.10) 漏洞描述:nginx是一款高性能的web服务器,使用非常广泛,其不仅经常被用作反向代理,也是一个 IMAP/POP3/SMTP 代理服务器. ...

  2. Nginx目录穿越漏洞

    Nginx目录穿越漏洞 影响版本:全版本 影响说明:信息泄漏 环境说明:Nginx 1.13.0 漏洞复现: Nginx的目录穿越漏洞严格定义的话,并非是漏洞,而是Nginx的特性,由于运维人员或者开 ...

  3. Winrar目录穿越漏洞复现

    Winrar目录穿越漏洞复现 1.漏洞概述 WinRAR 是一款功能强大的压缩包管理器,它是档案工具RAR在Windows环境下的图形界面.2019年 2 月 20 日Check Point团队爆出了 ...

  4. CVE-2021-41773 CVE-2021-42013 Apache HTTPd最新RCE漏洞复现 目录穿越漏洞

    给个关注?宝儿! 给个关注?宝儿! 给个关注?宝儿! 关注公众号:b1gpig信息安全,文章推送不错过 CVE-2021-41773漏洞描述: Apache HTTPd是Apache基金会开源的一款流 ...

  5. 实录:menu.1st配置错误导致从多路径启动失败

    现场环境: 华为刀片服务器+suse9sp3+华赛S2300 磁盘阵列,刀片服务器和存储采用多路径冗余方式连接. 现象描述: 存储配置完成后,在服务器通过fdisk -l 查看有冗余路径,存储映射卷有 ...

  6. MT6795平台CUSTOM_KERNEL_SSW配置错误导致sim卡不识别或者CTA测试fail

    MT6795平台CUSTOM_KERNEL_SSW配置错误导致sim卡不识别或者CTA测试fail [DESCRIPTION] MT6795平台如果客户hw上没有接外部sim switch,代码中的C ...

  7. DNS配置错误导致无法访问网络

    DNS配置错误导致无法访问网络 背景 今天居家办公,发现vbox上的centos无法访问到yum仓库.以为是vbox的配置有问题.yum源的问题,折腾了大半天,最后才发现的DNS的问题. 问题复现 使 ...

  8. nginx配置错误页面,处理tomat版本号泄露问题

    一.问题描述 项目做安全扫描时,Tomcat报错页面泄漏Apache Tomcat/7.0.52相关版本号信息,安全策略要求去掉版本号信息. 二.解决方法 网上搜了下,大多都是简单粗暴的处理,直接去掉 ...

  9. 【热点】因这个配置错误导致全球互联网流量下降了 3.5%

    近日,美国互联网服务提供商 CenturyLink 因数据中心的错误配置导致多个网站受到影响.据了解,这次事故是 BGP 路由配置错误引起的连锁反应,受到影响的服务包括 Cloudflare.AWS. ...

最新文章

  1. Modeling System Behavior with Use Case(2)
  2. [Spring入门学习笔记][静态资源]
  3. python3中urllib库的使用
  4. Oracle 外连接和 (+)号的用法
  5. python六角形的绘制 编程_利用Python的turtle重复画六边形
  6. Python很简单,你一定能学会【加油!】
  7. ubuntn 16.04 安装fabric 1.0
  8. AcWing292.炮兵阵地(状压DP)题解
  9. 数据结构与算法(一):概论
  10. Android studio 老虎机小游戏
  11. 软件测试简历职业规划怎么写,职业规划测试
  12. ocm认证年薪多少_年薪 100 万在 IT 行业中,属于什么水平 ?
  13. BiSET: Bi-directional Selective Encoding with Template for Abstractive Summarization翻译
  14. iOS 15:如何翻译照片中的文本-「实况文本」
  15. .net rar zip压缩包解压
  16. Windows10:CIFS服务的开启
  17. python小爬虫—抓取pixabay网站的图片资源
  18. 软件开发人员的个人成长与发展
  19. 小程序中监听input中的拼音是否已经输完
  20. java并发编程实战wwj----------第二阶段-------------Two Phase Termination------------------34-35

热门文章

  1. 上善若水 (9月18日)
  2. Python+PEP8 | VSCode自动格式化代码
  3. Android百度语音集成——文字转语音
  4. UbuntuNAT内网穿透实现远程访问
  5. 第十章:动态组件,插槽,自定义指令
  6. Dubbo中文官方文档
  7. solidworks批量图号分离_SolidWorks2014基于宏实现快速图号名称分离.docx
  8. 一首好听的英文歌lemon tree(柠檬树)的中文歌词
  9. 计算机笔记--【Redis高级】
  10. Unity得到屏幕宽度