
CLI जो php2shell भेद्यता स्थिति निर्धारित करने के लिए किसी वेबसाइट के PHP संस्करण या स्थानीय PHP बाइनरी की जाँच अंतर्निहित पैच कटऑफ़ के विरुद्ध करता है, JSON आउटपुट और एग्ज़िट कोड के साथ।
किसी वेबसाइट या स्थानीय PHP बाइनरी की जाँच करें कि क्या वह php2shell के प्रति संवेदनशील है।
दोनों स्किल्स इंस्टॉल करने के लिए, Codex से कहें:
$skill-installer install both skills from https://github.com/openai/php2shell-checker
जब आपके पास सर्वर एक्सेस हो तो phpcheck-server का उपयोग करें, या जब आपके पास केवल एक URL हो तो phpcheck-url का:
$phpcheck-url check https://example.com
$phpcheck-server check the PHP version serving my site
किसी वेबसाइट की जाँच करें:
node phpcheck.js "https://example.com"
स्थानीय CLI PHP की जाँच करें
node phpcheck.js --local
| परिणाम | एक्ज़िट कोड | अर्थ |
|---|---|---|
OK | 0 | किसी सूचीबद्ध major/minor शाखा के लिए एम्बेडेड कटऑफ से ऊपर का स्थिर PHP पैच संस्करण। |
VULNERABLE | 1 | उस शाखा के लिए एम्बेडेड कटऑफ के बराबर या उससे नीचे का PHP संस्करण। |
UNKNOWN | 3 | कोई PHP संस्करण या प्रतिक्रिया नहीं, कोई अपरिचित संस्करण/शाखा, या कोई नया प्रीरिलीज़ बिल्ड। |
मशीन-पठनीय आउटपुट के लिए --json का उपयोग करें (patch_status का मान ok, vulnerable, या unknown होता है)। अमान्य आर्ग्युमेंट्स कोड 2 के साथ बाहर निकलते हैं।
node --test phpcheck.test.js
परीक्षण CLI को स्थानीय HTTP सर्वरों और एक नकली PHP एक्ज़ीक्यूटेबल के विरुद्ध चलाते हैं। किसी PHP इंस्टॉलेशन या बाहरी वेबसाइट की आवश्यकता नहीं है।
चेकर केवल उन संस्करणों का मूल्यांकन करता है जो HTTP प्रतिक्रिया हेडर में या php -v द्वारा उजागर होते हैं। यह X-Powered-By और Server को पढ़ता है, HEAD भेजता है, और केवल तब GET पर वापस जाता है जब HEAD 405 या 501 लौटाता है। यह रीडायरेक्ट का पालन नहीं करता और न ही प्रतिक्रिया बॉडी का निरीक्षण करता है। अनुपस्थित या छिपे हुए PHP हेडर UNKNOWN लौटाते हैं।
OK एक संस्करण तुलना है जो इस धारणा पर आधारित है कि प्रत्येक सूचीबद्ध शाखा में बाद के स्थिर पैच में फ़िक्स शामिल है। यह स्वतंत्र रूप से किसी सुरक्षा फ़िक्स का सत्यापन नहीं करता। संस्करणों को आधिकारिक PHP सुरक्षा रिलीज़ के विरुद्ध जाँचें। हेडर छिपाए या बदले जा सकते हैं, और डिस्ट्रीब्यूशन बैकपोर्ट अपस्ट्रीम संस्करण को नहीं बदल सकते। UNKNOWN का अर्थ यह नहीं है कि लक्ष्य पैच किया गया है!
OpenAI इस प्रोजेक्ट में बाहरी कोड योगदान स्वीकार नहीं कर रहा है। बग रिपोर्ट और गैर-कोड फ़ीडबैक GitHub issues के माध्यम से स्वागतयोग्य हैं। देखें CONTRIBUTING.md।
यह प्रोजेक्ट Apache License 2.0 के अंतर्गत लाइसेंस प्राप्त है।