docker复现nginx错误配置漏洞

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

目录

一、nginx环境搭建

1.1搭建步骤

 二、docker复现Nginx配置漏洞

 2.1安装docker

 2.2复现过程

2.1CRLF(carriage return/line feed)注入漏洞

 2.2.目录穿越


一、nginx环境搭建

1.1搭建步骤

1.先创建Nginx的目录并进入(命令如下)

mkdir /soft && mkdir /soft/nginx/
cd /soft/nginx/

2.下载Nginx的安装包,可以通过FTP工具上传离线环境包,也可通过wget命令在线获取安装包:(命令如下)

wget https://nginx.org/download/nginx-1.21.6.tar.gz

3.解压Nginx的压缩包:(命令如下)

tar -xvzf nginx-1.21.6.tar.gz

4.下载并安装Nginx所需的依赖库和包:(命令如下)

yum install --downloadonly --downloaddir=/soft/nginx/ gcc-c++
yum install --downloadonly --downloaddir=/soft/nginx/ pcre pcre-devel4
yum install --downloadonly --downloaddir=/soft/nginx/ zlib zlib-devel
yum install --downloadonly --downloaddir=/soft/nginx/ openssl openssl-devel

docker复现nginx错误配置漏洞,docker,nginx,java  

 5.通过rpm命令安装所有依赖包:

rpm -ivh --nodeps *.rpm

docker复现nginx错误配置漏洞,docker,nginx,java  

 6.进入解压后的nginx目录,安装其他依赖库,然后执行Nginx的配置脚本,为后续的安装提前配置好环境,默认位于/usr/local/nginx/目录下(可自定义目录):

cd nginx-1.21.6
yum install pcre-devel
yum install zlib-devel
./configure --prefix=/soft/nginx/

 7.编译并安装Nginx

make && make install

8.修改安装后生成的conf目录下的nginx.conf配置文件:(使用vim命令编辑)

server_name改成自己的ip   docker复现nginx错误配置漏洞,docker,nginx,java

 二、docker复现Nginx配置漏洞

 2.1安装docker

 1.这里以centos7为例

先更新一下 yum 包(这个命令不是必须执行的,看个人情况,后面出现不兼容的情况的话就必须update了)

注意​ 
yum -y update:升级所有包同时也升级软件和系统内核;​ 
yum -y upgrade:只升级所有包,不升级软件和系统内核

2.安装需要的软件包, yum-util 提供yum-config-manager功能,另两个是devicemapper驱动依赖

yum install -y yum-utils device-mapper-persistent-data lvm2

3.设置 yum 源

yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo(中央仓库)
 
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo(阿里仓库)
 

4.选择docker版本并安装
(1)查看可用版本有哪些

yum list docker-ce --showduplicates | sort -r

(2)选择一个版本并安装即可:yum install docker-ce-版本号

 2.2复现过程

2.1CRLF(carriage return/line feed)注入漏洞

这个漏洞产生的原因是请求重定向的错误配置,导致在url中输入回车换行符可以控制http响应头部

比如:

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

原本的目的是为了让http的请求跳转到https上,但是$uri参数是不包含查询参数的,于是当我们在url中输入%0d%0a时,$uri参数不会将回车换行符传入,这就导致用户可以控制http响应头部访问http://ip:8080,使用bp抓包,构造反射性xss

%0d%0a%0d%0a<img src=1 onerror=alert(1)>

 docker复现nginx错误配置漏洞,docker,nginx,java

 修复方法:把$url改为$request-uri,这个参数会传入完整的原始url请求,也就是说用户输入的所有内容都会被当做参数传入Location字段

 docker复现nginx错误配置漏洞,docker,nginx,java

 2.2.目录穿越

 这个漏洞产生的原因是alias别名配置错误,导致在url中拼接目录获取敏感数据

location /files {
        alias /home/;
    }

 原本的目的是想用户输入/files会跳转到/home目录下,但是/files并没有以"/"结尾,所以我们可以输入/files../,此时/files匹配上了,替换为/home/..,造成目录穿越

docker复现nginx错误配置漏洞,docker,nginx,java

 修复方法:将/files改为/files/,这样就算输入/files../也不会匹配上/files/

 再次尝试访问就不会出现上面的情况docker复现nginx错误配置漏洞,docker,nginx,java

 文章来源地址https://www.toymoban.com/news/detail-649485.html

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

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

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

相关文章

  • Apache nginx解析漏洞复现

    将nginx解压后放到c盘根目录下: 运行startup.bat启动环境: 在HTML文件夹下有它的主页文件: nginx在遇到后缀名有php的文件时,会将该文件给php解释器处理,在读取文件时如果遇到00时就读取结束

    2024年02月09日
    浏览(32)
  • Nginx/OpenResty目录穿越漏洞复现

    2020年03月18日, 360CERT监测发现 openwall oss-security 邮件组披露了两枚漏洞。在特定配置下 nginx/openresty 存在 内存泄漏漏洞/目录穿越漏洞。 Nginx 是异步框架的网页服务器,也可以用作反向代理、负载平衡器和HTTP缓存。 OpenResty是一个基于nginx的Web平台,它对nginx增加LuaJIT引擎使其

    2023年04月10日
    浏览(27)
  • Nginx漏洞修复之目录穿越(目录遍历)漏洞复现及修复

    前言 Nginx是一个高性能的HTTP和反向代理服务器,经常被做为反向代理,动态的部分被proxy_pass传递给后端端口,而静态文件需要Nginx来处理。 漏洞出现在服务器的静态文件中。如果静态文件存储在/home/目录下,而该目录在url中名字为files,那么就需要用alias设置目录的别名 。

    2024年02月04日
    浏览(32)
  • 中间件安全-CVE复现&IIS&Apache&Tomcat&Nginx漏洞复现

    中间件及框架列表: IIS,Apache,Nginx,Tomcat,Docker,Weblogic,JBoos,WebSphere, Jenkins ,GlassFish,Jira,Struts2,Laravel,Solr,Shiro,Thinkphp, Spring,Flask,jQuery等 1、中间件-IIS-短文件解析蓝屏等 2、中间件-Nginx-文件解析命令执行等 3、中间件-Apache-RCE目录遍历文件解析等 4、中间件

    2024年02月07日
    浏览(38)
  • 服务攻防-中间件安全&CVE复现&IIS&Apache&Tomcat&Nginx漏洞复现

    目录 一、导图 二、ISS漏洞 中间件介绍 1、短文件 2、文件解析 3、HTTP.SYS 4、cve-2017-7269 三、Nignx漏洞 中间件介绍 1、后缀解析漏洞 2、cve-2013-4547 3、cve-2021-23017 无 EXP 4、cve-2017-7529 意义不大 四、Apache漏洞 中间件介绍 1、漏洞版本简介 2、cve-2021-42013 3、cve-2021-41773 4、cve-2017-1571

    2024年02月10日
    浏览(50)
  • Docker 容器逃逸漏洞 (CVE-2020-15257)复现

    漏洞概述 containerd是行业标准的容器运行时,可作为Linux和Windows的守护程序使用。在版本1.3.9和1.4.3之前的容器中,容器填充的API不正确地暴露给主机网络容器。填充程序的API套接字的访问控制验证了连接过程的有效UID为0,但没有以其他方式限制对抽象Unix域套接字的访问。这

    2024年02月10日
    浏览(29)
  • 漏洞复现-docker-unauthorized-rce

    目录 一、漏洞介绍 1.1漏洞成因 2.2环境准备 二、漏洞检测 三、漏洞利用 1.脚本利用 2.定时任务反弹shell 3. 写ssh公钥获取shell 1.1漏洞成因         docker remote API未授权访问漏洞,此API主要目的是取代命令执行页面,开放2375监听容器时,会调用这个API。方便docker集群管理和扩展

    2024年02月09日
    浏览(30)
  • CVE漏洞复现-CVE-2019-5736 Docker逃逸

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口 Docker环境和普通生产环境的差异在哪呢?举个列子,

    2024年02月12日
    浏览(32)
  • wazhu配置以及漏洞复现

    目录 1.wazhu配置 进入官网下载  部署wazhu  修改网络适配器  重启 本地开启apache  wazhu案例复现 前端页面 执行 进入官网下载 Virtual Machine (OVA) - Installation alternatives (wazuh.com)  部署wazhu  修改网络适配器  重启 本地开启apache  wazhu案例复现 当我们使用本地的cmd通过ssh一直连接

    2024年02月10日
    浏览(23)
  • wazuh环境配置和漏洞复现

    虚拟机 (OVA) - 替代安装 (wazuh.com)在官方网页安装ova文件  打开VMware选择打开虚拟机,把下载好的ova文件放入在设置网络改为NAT模式 账号:wazuh-user       密码:wazuh 启动小皮 远程连接    账号admin   密码admin 当我们使用本地的cmd通过ssh一直连接wazuh的时候会出现十级报错,

    2024年02月11日
    浏览(27)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包