Apache HTTPd 2.4.49 路徑穿越漏洞(CVE-2021-41773)復現

雨筍教育發表於2021-12-13

0x00 漏洞概述

2021年10月5日,Apache官方釋出了一批漏洞資訊,其中Apache HTTP Server路徑穿越漏洞CVE-2021-41773。

滿足條件:

  • 版本等於2.4.49
  • 穿越的目錄允許被訪問,比如配置了 Require all granted。(預設情況下是不允許的)


0x01環境搭建

使用docker搭建Apache HTTPd 2.4.49版本伺服器:

Dockerfile

FROM vulhub/httpd:2.4.49
LABEL maintainer="phithon <root@leavesongs.com>"
RUN set -ex \
  && sed -i "s|#LoadModule cgid_module modules/mod_cgid.so|LoadModule cgid_module modules/mod_cgid.so|g" /usr/local/apache2/conf/httpd.conf \
  && sed -i "s|#LoadModule cgi_module modules/mod_cgi.so|LoadModule cgi_module modules/mod_cgi.so|g" /usr/local/apache2/conf/httpd.conf \
  && sed -i "s|#Include conf/extra/httpd-autoindex.conf|Include conf/extra/httpd-autoindex.conf|g" /usr/local/apache2/conf/httpd.conf \
  && cat /usr/local/apache2/conf/httpd.conf \
      | tr '\n' '\r' \
      | perl -pe 's|<Directory />.*?</Directory>|<Directory />\n   AllowOverride none\n   Require all granted\n</Directory>|isg' \
      | tr '\r' '\n' \
      | tee /tmp/httpd.conf \
  && mv /tmp/httpd.conf /usr/local/apache2/conf/httpd.conf

docker-compose.yml

version: '2'
services:
apache:
  build: .
  ports:
  - "8080:80"

環境啟動

docker-compose build
docker-compose up -d


0x02 漏洞復現

  • 訪問靶機環境
    環境啟動後,訪問 your-ip:8080 即可看到Apache預設的It works!頁面。



  • 檔案讀取復現

使用curl命令傳送payload( icons 必須存在且可訪問):



  • 命令執行復現

在服務端開啟了cgi或cgid這兩個mod的情況下,這個路徑穿越漏洞將可以執行任意命令:



0x03修復建議

升級至官方 ..最新版本


更多滲透相關技術經驗分享,學滲透來雨筍教育線上線下任你選擇,就業進大廠!


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70006652/viewspace-2847456/,如需轉載,請註明出處,否則將追究法律責任。

相關文章