
व्यावहारिक प्रयोगशाला जो nginx के पीछे CVE-2019-11043 PHP-FPM RCE को पुनरुत्पादित करती है, तथा रिवर्स-टनल स्थायित्व, मेमोरी फोरेंसिक्स और नेटवर्क ट्रैफिक विश्लेषण का प्रदर्शन करती है।
अक्टूबर 2019 में, Debian सुरक्षा सलाहकार शोधकर्ताओं Emil Lerner और Andrew Danau ने Debian समुदाय को PHP-FPM में एक गंभीर भेद्यता के बारे में चेतावनी देते हुए एक सूचना प्रकाशित की। PHP-FPM के पाथ हैंडलिंग कोड में अपर्याप्त सत्यापन के कारण, हमलावर कुछ विशेष NGINX + PHP-FPM कॉन्फ़िगरेशन में विशेष रूप से तैयार किए गए अनुरोधों में हेरफेर करके दूरस्थ मनमाना कोड निष्पादन प्राप्त कर सकते थे।
यह लैब निम्नलिखित के शोषण का प्रदर्शन करती है:
NGINX के पीछे चल रहे PHP-FPM को प्रभावित करने वाली एक भेद्यता, जो ट्रिगर होने पर हमलावरों को मनमाना कोड निष्पादित करने और रिवर्स टनलिंग के माध्यम से स्थायित्व स्थापित करने की अनुमति दे सकती है।
यह परियोजना एक भेद्य वातावरण का पुनर्निर्माण करती है, शोषण श्रृंखला को निष्पादित करती है, और मूल्यांकन करती है कि विरोधी वास्तविक दुनिया के परिदृश्यों में टनलिंग तकनीकों के माध्यम से स्थायित्व कैसे प्राप्त करते हैं।
यह अटैक श्रृंखला कई उच्च-प्रभाव वाली MITRE ATT&CK तकनीकों के साथ सीधे संरेखित होती है:
| MITRE ID | तकनीक का नाम |
|---|---|
| T1071 | एप्लिकेशन लेयर टनलिंग |
| T1572 | प्रोटोकॉल टनलिंग |
| T1090 | प्रॉक्सी / रिवर्स प्रॉक्सी |
| T1505 | सर्वर-साइड घटक (PHP-FPM) |
| T1574 | निष्पादन प्रवाह का अपहरण |
स्थायित्व के लिए रिवर्स टनलिंग एक उच्च-आवृत्ति TTP (रणनीति, तकनीक, प्रक्रिया) है जिसका उपयोग APT समूहों, बॉटनेट और रैनसमवेयर ऑपरेटरों द्वारा किया जाता है। PHP-FPM उत्पादन वातावरण में व्यापक रूप से तैनात बना हुआ है, और CVE-2019-11043 द्वारा शोषित गलत कॉन्फ़िगरेशन आज भी वास्तविक दुनिया में देखे जाते हैं।
ये सैद्धांतिक अमूर्तताएँ नहीं हैं — ये राष्ट्र-राज्य अभिनेताओं और रैनसमवेयर समूहों से जुड़े सक्रिय शोषण अभियानों में प्रलेखित सटीक व्यवहारों को प्रतिबिंबित करती हैं।
हालाँकि CVE-2019-11043 कई वर्ष पुराना है, फिर भी निम्नलिखित आधुनिक सुरक्षा वास्तविकताओं के कारण यह भेद्यता प्रासंगिक बनी हुई है:
लीगेसी PHP एप्लिकेशन अभी भी हर जगह हैं। कई संगठन दीर्घकालिक वेब एप्लिकेशन निर्भरताओं, तकनीकी ऋण, या उत्पादन प्रणालियों को तोड़ने के डर के कारण पुराने PHP 5.x/7.x स्टैक चलाना जारी रखते हैं। ये वातावरण अक्सर बिना पैच के और भेद्य बने रहते हैं।
NGINX + PHP-FPM विश्व स्तर पर सबसे आम होस्टिंग आर्किटेक्चर में से एक है। यह PHP-FPM में भेद्यताओं को उन हमलावरों के लिए अत्यंत आकर्षक बनाता है जो बड़े, लंबे समय तक चलने वाले शोषण सतहों की तलाश करते हैं।
रिवर्स टनलिंग आधुनिक खतरों में एक मुख्य स्थायित्व तकनीक है। Lazarus, APT29, FIN11 जैसे समूह और कई रैनसमवेयर ऑपरेटर खुले इनबाउंड पोर्ट पर निर्भर हुए बिना दीर्घकालिक पहुंच बनाए रखने के लिए रिवर्स SSH टनल, WebSocket टनल और यहाँ तक कि PHP-आधारित रिवर्स शेल का उपयोग करते हैं।
गलत कॉन्फ़िगरेशन उल्लंघनों का #1 कारण बना हुआ है। यहाँ तक कि जब पैच मौजूद होते हैं, तब भी गलत कॉन्फ़िगर किए गए NGINX "location" ब्लॉक और खराब तरीके से सत्यापित PATH_INFO वेरिएबल वातावरण को शोषण के लिए उजागर करते रहते हैं।
शोषण स्वचालन किट अभी भी इस CVE को लक्षित करते हैं। स्वचालित स्कैनर, बॉटनेट और IoT मैलवेयर जैसे उपकरण नियमित रूप से भेद्य PHP-FPM सेटअप की जांच करते हैं क्योंकि शोषण के परिणामस्वरूप विश्वसनीय कोड निष्पादन होता है।
क्लाउड वातावरण हमले की सतह का विस्तार कर रहे हैं। खराब सुरक्षित कंटेनर, साझा होस्टिंग सेटअप और पुरानी डॉकर बेस इमेज में अक्सर बिना पैच वाले PHP-FPM संस्करण होते हैं, जिससे क्लाउड नेटवर्क के अंदर तेजी से पार्श्व गति (lateral movement) होती है।
हमलावरों को "आसान शिकार" (low hanging fruit) पसंद है। एक भेद्यता जो न्यूनतम कौशल के साथ रिमोट कोड निष्पादन + टनल-आधारित स्थायित्व सक्षम करती है, हमेशा एक उच्च-मूल्य वाला लक्ष्य बनी रहेगी।
आज के खतरे के परिदृश्य में, जहाँ स्थायी पहुंच, गुप्त टनलिंग और आपूर्ति-श्रृंखला कमजोरियाँ साइबर सुरक्षा की सुर्खियों पर हावी हैं, CVE-2019-11043 का शोषण कैसे किया जाता है यह समझना और प्रदर्शित करना आधुनिक हमले के पैटर्न और रक्षात्मक अंतरालों में महत्वपूर्ण अंतर्दृष्टि प्रदान करता है।
इस लैब का उद्देश्य CVE‑2019‑11043 के वास्तविक-दुनिया के शोषण का अनुकरण करना था, जो कुछ विशेष कॉन्फ़िगरेशन का उपयोग करते हुए nginx के पीछे PHP‑FPM को प्रभावित करने वाली एक गंभीर रिमोट कोड निष्पादन भेद्यता है। लक्ष्य भेद्यता का विश्लेषण करना, नियंत्रित वर्चुअल वातावरण में शोषण को पुन: उत्पन्न करना और गलत कॉन्फ़िगर की गई वेब अवसंरचना से जुड़े जोखिमों को प्रदर्शित करना था।
दो वर्चुअल मशीनों का उपयोग किया गया: दोनों का उपयोगकर्ता नाम username और पासवर्ड password था।
| भूमिका | मशीन | IP पता | उद्देश्य |
|---|---|---|---|
| लक्ष्य / पीड़ित | Ubuntu Server | 192.168.56.102 | CVE-2019-11043 चला रहा भेद्य PHP-FPM सर्वर |
| हमलावर | Ubuntu Server | 192.168.56.103 | शोषण, रिवर्स शेल और स्थायित्व निष्पादित करता है |
apt अपडेट करें
sudo apt update && sudo apt -y upgrade
भेद्यता शोषण के लिए कंटेनर बनाना।
sudo apt install -y docker.io docker-compose git
git clone https://github.com/vulhub/vulhub.git
cd vulhub/php/CVE-2019-11043
sudo docker-compose up -d
Apt अपडेट करें, और बुनियादी php और python और अधिक पैकेज स्थापित करें
sudo apt update
sudo apt install nmap curl wget git python3 python3-pip \
netcat-traditional net-tools build-essential \
php ruby ruby-full
pip3 install requests
sudo apt install golang-go
प्रश्न में CVE का शोषण करने के लिए एक टूल डाउनलोड करता है और शोषण बनाने के लिए टर्मिनल को उस निर्देशिका में ले जाता है।
git clone https://github.com/neex/phuip-fpizdam.git
cd phuip-fpizdam
go build
यहाँ से सेटअप पूर्ण है, उदाहरण के लिए आप पहले क्या कर सकते हैं,