Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

फ़ीडसंपर्कगोपनीयता© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
php2shell-exposurehunt — PHP2Shell एक्सपोज़र हंटिंग और संबंधित विश्लेषण के लिए रिपॉज़िटरी | Kitploit
उपकरण/GitHubGitHub/deathbydata/php2shell-exposurehunt
रक्षात्मक उपकरणभेद्यता विश्लेषणकॉन्फ़िगरेशन ऑडिटिंगजानकारी एकत्र करनाखतरा खुफियाघटना प्रतिक्रियालॉग विश्लेषण
GitHubdeathbydata/php2shell-exposurehunt

php2shell-exposurehunt

PHP2Shell एक्सपोज़र हंटिंग और संबंधित विश्लेषण के लिए रिपॉज़िटरी

रिपॉजिटरी देखें
117घं 57मि पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

php2shell-exposurehunt

PHP2Shell (CVE-2026-109618 / CVE-2026-109619) के लिए Defender XDR एक्सपोज़र हंटिंग।

v3.3 · 22 अक्टूबर 2026

उद्देश्य: ऐसे ऑनबोर्ड किए गए डिवाइस खोजें जो सक्रिय रूप से PHP चला रहे हैं और जो PHP2Shell के संपर्क में आ सकते हैं।

दायरा: Defender XDR Advanced Hunting · ऑनबोर्ड किए गए Windows और Linux एंडपॉइंट · डिफ़ॉल्ट रूप से 30-दिन का लुकबैक · केवल सक्रिय PHP। शामिल नहीं: निष्क्रिय इंस्टॉल और अनमैनेज्ड डिवाइस। Sentinel में नहीं चलाया जा सकता, क्योंकि इंस्टॉल किए गए सॉफ़्टवेयर (TVM) तालिका केवल Defender XDR में क्वेरी की जा सकती है।

हंट्स (क्रम से चलाएँ, प्रति OS)

हंटWindowsLinuxप्रश्न
1windows/01-any-php.kqllinux/01-any-php.kqlकोई PHP? प्रति डिवाइस हाँ/नहीं।
2windows/02-evidence-breakout.kqllinux/02-evidence-breakout.kqlसंस्करणों के साथ साक्ष्य ब्रेकआउट।
3windows/03-safety-net.kqllinux/03-safety-net.kqlसेफ़्टी नेट: वेब पोर्ट पर सेवा देने वाले डिवाइस, लिसनिंग प्रोसेस, और PHP स्थिति।

किस चीज़ की हंटिंग की जाती है

सभी इवेंट जाँचें एक ही लुकबैक विंडो का उपयोग करती हैं, प्रत्येक हंट के शीर्ष पर let Lookback = 30d;। IP पते पिछले 7 दिनों में प्रति एडाप्टर की नवीनतम रिपोर्ट से आते हैं। इंस्टॉल किया गया सॉफ़्टवेयर वर्तमान TVM स्नैपशॉट है। केवल ऑनबोर्ड किए गए एंडपॉइंट की जाँच की जाती है (OnboardingStatus == "Onboarded", DeviceCategory == "Endpoint")।

PHP डिटेक्शन ब्लॉक (हंट्स 1, 2 और 3)

एक डिवाइस को PHP देखा गया माना जाता है यदि इनमें से कोई एक भी मेल खाता है।

नाम कैसे मिलाए जाते हैं:

  • फ़ाइल नाम रेगुलर एक्सप्रेशन से मिलाए जाते हैं, न कि निश्चित सूचियों से। प्रत्येक रेगेक्स केस-असंवेदनशील और एंकर्ड (^…$) है, इसलिए इसे पूरे फ़ाइल नाम से मेल खाना चाहिए, कभी भी उसके किसी भाग से नहीं।
  • पहले एक सस्ता नाम-प्रीफ़िक्स फ़िल्टर चलता है: startswith "php", साथ ही दोनों OSes पर frankenphp और Linux पर lsphp। फिर रेगेक्स केवल बचे हुए नामों पर चलता है।
  • नीचे दी गई तालिकाओं में नाम उदाहरण हैं कि प्रत्येक पैटर्न किससे मेल खाता है, और किसे अस्वीकार करता है। अन्य संस्करण संख्याएँ (उदाहरण के लिए भविष्य का php9.dll) स्वचालित रूप से मेल खाती हैं।
  • patterns.test.js प्रत्येक रेगेक्स को इन उदाहरणों के विरुद्ध चलाता है। यदि आप कोई रेगेक्स बदलते हैं, तो वहाँ के उदाहरण अपडेट करें।

Windows

जाँचतालिकामेल खाता हैयह क्यों मायने रखता है
PHP एक्ज़ीक्यूटेबल्स शुरू हुएDeviceProcessEventsरेगेक्स ^(php(-cgi|-win)?|frankenphp)\.exe$, जो ठीक चार नामों की अनुमति देता है: php.exe (CLI), php-cgi.exe (FastCGI वर्कर), php-win.exe (CLI, बिना कंसोल), frankenphp.exe (वेब सर्वर में एम्बेडेड PHP)। phpstorm64.exe और अन्य php* टूल मेल नहीं खातेसिद्ध करता है कि PHP चला। हंट 2 बाइनरी की संस्करण जानकारी (ProcessVersionInfoProductVersion) से संस्करण दिखाता है
PHP इंजन DLLs लोड हुएDeviceImageLoadEventsरेगेक्स ^php\d*(ts|isapi|apache[\w_]*)?\.dll$: php, कोई भी संस्करण संख्या, एक वैकल्पिक ts / isapi / apache… सफ़िक्स, फिर .dll। उदाहरण नीचे DLL तालिका में हैं। एक्सटेंशन DLLs (php_curl.dll और अन्य php_*.dll) मेल नहीं खाते, क्योंकि php के ठीक बाद अंडरस्कोर की अनुमति नहीं हैकिसी अन्य प्रोसेस, जैसे IIS या Apache, के अंदर चल रहे PHP को देखने का यही एकमात्र तरीका है, जहाँ कोई php*.exe शुरू नहीं होता। हंट 2 DLL और उसे लोड करने वाली प्रोसेस दिखाता है
इंस्टॉल किया गया सॉफ़्टवेयरDeviceTvmSoftwareInventoryरेगेक्स नहीं: SoftwareName has "php" (नाम में php एक पूरे शब्द के रूप में) या SoftwareVendor =~ "php" (सटीक, केस-असंवेदनशील)पंजीकृत इंस्टॉल को पकड़ता है। Zip इंस्टॉल (Windows का सामान्य तरीका) आमतौर पर पंजीकृत नहीं होते

Windows पैटर्न जिन PHP इंजन DLLs से मेल खाता है, उनके उदाहरण

DLLयह क्या हैविशिष्ट होस्ट प्रक्रिया (hunt 2 में दिखाई गई)
php8.dll, php7.dllइंजन, नॉन-थ्रेड-सेफ बिल्डphp-cgi.exe (IIS, nginx या Apache mod_fcgid के अंतर्गत FastCGI), php.exe
php8ts.dll, php7ts.dll, php5ts.dllइंजन, थ्रेड-सेफ बिल्डhttpd.exe (Apache मॉड्यूल), php.exe
php8apache2_4.dll, php7apache2_4.dll, php5apache2_2.dllApache मॉड्यूल लोडरhttpd.exe
php5isapi.dllलीगेसी IIS ISAPI मॉड्यूल (PHP 5.2 और पहले, असमर्थित)w3wp.exe

तालिका सामान्य नामों को सूचीबद्ध करती है, अनुमति-सूची नहीं: पैटर्न से मेल खाने वाला कोई भी नाम मेल खाता है। DLL नाम केवल प्रमुख संस्करण देता है। सटीक संस्करण उसी डिवाइस पर php-cgi.exe या php.exe प्रक्रिया पंक्ति से, या इंस्टॉल किए गए सॉफ़्टवेयर से आता है।

Linux

जाँचतालिकामेलयह क्यों मायने रखता है
PHP बाइनरी प्रारंभ हुईंDeviceProcessEventsRegex ^(php[\d.]*|php-(fpm|cgi)[\d.]*|lsphp[\d.]*|frankenphp)$: php, php-fpm, php-cgi या lsphp (LiteSpeed), प्रत्येक में अंकों और बिंदुओं से बना वैकल्पिक संस्करण, साथ ही frankenphp। उदाहरण: php, php8.3, php83, php-fpm8.3, php-cgi8.2, lsphp83। phpunit, phpize और php-config जैसे टूल मेल नहीं खाते, क्योंकि आधार नाम के बाद केवल अंक और बिंदु ही आ सकते हैंसिद्ध करता है कि PHP चला। Hunt 2 एक major.minor संकेत दिखाता है, जो नाम, पथ या कमांड लाइन से दूसरे regex, php-?(?:fpm|cgi)?/?(\d+\.\d+) द्वारा निकाला जाता है (उदाहरण के लिए php-fpm8.3 या /etc/php/8.3/ से 8.3.x मिलता है)
इंस्टॉल किए गए पैकेजDeviceTvmSoftwareInventoryRegex नहीं: SoftwareName contains "php" (सबस्ट्रिंग, इसलिए php8.3-fpm और libapache2-mod-php8.3 जैसे संस्करणयुक्त नाम मेल खाते हैं) या SoftwareVendor =~ "php"Apache mod_php और विंडो से पहले से चल रहे php-fpm के लिए एकमात्र जाँच: Linux में यहाँ कोई लाइब्रेरी-लोड जाँच नहीं है, और फोर्क किए गए php-fpm वर्कर प्रक्रिया प्रारंभ नहीं बनाते

Hunt 3 सुरक्षा-जाल जाँचें

जाँचतालिकामेलयह क्यों मायने रखता है
सक्रिय वेब सर्विंगDeviceNetworkEventsपोर्ट की एक निश्चित सूची पर InboundConnectionAccepted: 80, 443, 8080, 8443। लूपबैक बाहर रखा गया है (RemoteIPType != "Loopback")। विशिष्ट और सार्वजनिक स्रोत, साथ ही स्वीकार करने वाली प्रक्रिया (via <process>) दिखाता हैसिद्ध करता है कि कोई डिवाइस सर्विंग कर रहा है, भले ही उसका वेब सर्वर लुकबैक विंडो से पहले शुरू हुआ हो। ntoskrnl.exe = HTTP.sys (IIS, ADFS, RD Gateway, Windows Admin Center, SSTP)
वेब सर्वर प्रारंभ हुआDeviceProcessEventsRegex नहीं: सटीक नामों की एक निश्चित सूची, केस-असंवेदनशील (in~)। Windows: w3wp.exe, httpd.exe, nginx.exe, caddy.exe, lighttpd.exe, frankenphp.exe। Linux: httpd, apache2, nginx, lshttpd, litespeed, openlitespeed, caddy, lighttpd, frankenphpविंडो में शुरू हुआ और कोई PHP लोड न करने वाला वेब सर्वर उच्च विश्वास के साथ "Not seen" देता है। Windows w3wp.exe कमांड लाइन से regex -ap\s+"?([^"\s]+) द्वारा निकाले गए IIS ऐप पूल नाम भी दिखाता है

hunt 3 में PHP कॉलम मान

मानअर्थ
PHP seen (see hunt 2)कम से कम एक PHP डिटेक्शन जाँच मेल खाई।
Not seenकोई PHP साक्ष्य नहीं, और या तो विंडो में कोई वेब सर्वर शुरू हुआ (उच्च विश्वास) या डिवाइस वेब सर्विंग नहीं कर रहा।
Not seen - no web server start in <N>d (N = Lookback)वेब पोर्ट पर सर्विंग, लेकिन निरीक्षण के लिए कोई वेब-सर्वर प्रक्रिया प्रारंभ नहीं। यह अवशिष्ट ब्लाइंड स्पॉट है: होस्ट पर via प्रक्रिया की जाँच करें।

उपयोग

टूल डाउनलोड करें