
संभावित कमजोरियों की रिपोर्ट करने के लिए एक PHP संस्करण स्कैनर
Versionscan एक उपकरण है जो आपके वर्तमान में स्थापित PHP संस्करण का मूल्यांकन करने और इसे ज्ञात CVEs तथा उन संस्करणों से तुलना करने के लिए है जिनमें इन्हें ठीक किया गया था, ताकि संभावित समस्याओं की रिपोर्ट की जा सके।
कृपया ध्यान दें: इस उपकरण को लिनक्स वितरणों के अनुकूल बनाने का कार्य अभी भी जारी है जो सुरक्षा सुधारों को बैकपोर्ट करते हैं। अभी के लिए, यह केवल सीधे रिपोर्ट किए गए संस्करण के लिए ही परिणाम देता है।
{
"require": {
"psecio/versionscan": "dev-master"
}
}
एकमात्र वर्तमान निर्भरता Symfony कंसोल है।
अपने वर्तमान PHP संस्करण के विरुद्ध स्कैन चलाने के लिए, निम्नलिखित कमांड का उपयोग करें:
bin/versionscan
स्क्रिप्ट वर्तमान इंस्टेंस के लिए PHP_VERSION जांचेगी और पास/फेल परिणाम उत्पन्न करेगी। आउटपुट कुछ इस प्रकार दिखता है:
Executing against version: 5.4.24
+--------+---------------+------+------------------------------------------------------------------------------------------------------+
| Status | CVE ID | Risk | Summary |
+--------+---------------+------+------------------------------------------------------------------------------------------------------+
| FAIL | CVE-2014-3597 | 6.8 | Multiple buffer overflows in the php_parserr function in ext/standard/dns.c in PHP before 5.4.32 ... |
| FAIL | CVE-2014-3587 | 4.3 | Integer overflow in the cdf_read_property_info function in cdf.c in file through 5.19, as used in... |
परिणाम रंगीन रूप में भी रिपोर्ट किए जाएंगे, जिससे जांच के पास/फेल को आसानी से देखा जा सके।
उपकरण को इसके स्कैन और परिणामों को कॉन्फ़िगर करने के लिए कई पैरामीटर दिए जा सकते हैं:
यदि आप स्क्रिप्ट द्वारा स्वयं खोजे गए संस्करण के अलावा कोई अन्य PHP संस्करण जांचना चाहते हैं, तो आप php-version पैरामीटर का उपयोग कर सकते हैं:
bin/versionscan scan --php-version=4.3.2
आप versionscan को केवल विफलताओं की रिपोर्ट करने और सफल परीक्षणों को न दिखाने का भी निर्देश दे सकते हैं:
bin/versionscan scan --fail-only
आप परिणामों को CVE ID या गंभीरता (जोखिम रेटिंग) के अनुसार sort पैरामीटर और "cve" या "risk" मान के साथ क्रमबद्ध भी कर सकते हैं:
bin/versionscan scan --sort=risk
डिफ़ॉल्ट रूप से versionscan जानकारी को सीधे कंसोल पर मानव-पठनीय परिणाम के रूप में आउटपुट करता है। आप अन्य आउटपुट प्रारूप भी निर्दिष्ट कर सकते हैं जो प्रोग्रामेटिक रूप से पार्स करने में आसान हों (जैसे JSON)। आउटपुट बदलने के लिए --format विकल्प का उपयोग करें:
vendor/bin/versionscan scan --php-version=5.5 --format=json
समर्थित आउटपुट प्रारूप console, json, xml और html हैं।
HTML आउटपुट प्रारूप के लिए फ़ाइल लिखने हेतु एक --output विकल्प (निर्देशिका) की आवश्यकता होती है:
vendor/bin/versionscan scan --php-version=5.5 --format=html --output=/var/www/output
परिणाम versionscan-output-20150808.html जैसे फ़ाइल नाम से लिखा जाएगा।