
वेब स्कैनर जो लक्ष्य वेबसाइटों पर CMS संस्करण, प्लगइन्स, कमजोर जावास्क्रिप्ट लाइब्रेरीज़, ईमेल पते और फ़ोन नंबर का पता लगाता है, सूचना लीक जोखिम का आकलन करते हुए।
सबसे पहले docker run --rm -p 8000:80 siwecos/infoleak-scanner चलाएँ।
अपना ब्राउज़र खोलें और स्कैनर का उपयोग करें: http://localhost/?url=<URL>
php5, curl और एक वेबसर्वर प्राप्त करें:
sudo apt-get install apache2 php5 php5-curl
एप्लिकेशन को वेबसर्वर में कॉपी करें:
cp -R . /var/www/html/
पहचाने गए CMS के लिए प्लगइन्स खोजता है। सबसे बड़ी सूची (WordPress) में 980 विभिन्न प्लगइन्स शामिल हैं।
कमजोर और सबसे अधिक उपयोग की जाने वाली JavaScript लाइब्रेरीज़ खोजता है।
ईमेल पते खोजता है। स्पैम और/या सोशल इंजीनियरिंग हमलों के लिए दिलचस्प।
फोन नंबर खोजता है। सोशल इंजीनियरिंग हमलों और/या स्कैम के लिए दिलचस्प।
| Finding | स्कोर (0-100) |
|---------------------+---------------|
| CMS_ONLY | 100 |
| CMS_VERSION | 96 |
| CMS_VERSION_VULN | see below |
| PLUGIN_ONLY | 99 |
| PLUGIN_VERSION | 96 |
| PLUGIN_VERSION_VULN | see below |
| JS_LIB_ONLY | 99 |
| JS_LIB_VERSION | 96 |
| JS_LIB_VULN_VERSION | see below |
| EMAIL_FOUND | 96 |
| NUMBER_FOUND | 98 |
यदि कोई खोज मिली जैसे:
CMS_VERSION_VULN
PLUGIN_VERSION_VULN
JS_LIB_VULN_VERSION
तो कुल स्कोर 20 तक सीमित हो जाएगा और प्रत्येक अतिरिक्त कमजोरी कुल स्कोर को 10 कम कर देगी। इसका मतलब है, कि यदि CMS_VERSION_VULN और PLUGIN_VERSION_VULN और JS_LIB_VULN_VERSION वापस आते हैं, तो कुल स्कोर 0 होगा।
इसके अलावा, किसी WordPress वेबसाइट पर jQuery v1.12.4 का खोज सामान्य कमजोर लाइब्रेरी की तरह नहीं मूल्यांकित किया जाएगा। इस खोज का परिणाम 90 का स्कोर होगा, लेकिन प्लेसहोल्डर अभी भी JS_LIB_VULN_VERSION रहेगा क्योंकि यह एक कमजोर लाइब्रेरी है।
आप स्कैनर को POST और GET अनुरोधों के माध्यम से चला सकते हैं।
यदि आप स्कैनर को POST अनुरोध के साथ चलाना चाहते हैं तो आपको पैरामीटर JSON एन्कोडेड प्रारूप में भेजने होंगे:
{
"url": "string",
"dangerLevel": 0,
"callbackurls": [
"string"
],
"userAgent": "string"
}
url वह URL परिभाषित करता है जिसे स्कैन किया जाना चाहिए।
dangerLevel प्रासंगिक नहीं है, बस इसे 0 परिभाषित करें।
callbackurls URL का एक सरणी है। ये URL स्कैनर का परिणाम प्राप्त करेंगे (POST के माध्यम से भेजा गया)।
userAgent आपके व्यक्तिगत उपयोगकर्ता एजेंट को परिभाषित करता है जिसे स्कैन करते समय भेजा जाना चाहिए।
GET अनुरोध के साथ स्कैनर चलाना बहुत सरल है। आपको बस एक दिए गए URL के साथ एप्लिकेशन चलाना है:
http://localhost/?url=<URL>
किसी भी स्कैन में कोई खोज नहीं:
{
"name": "InfoLeak-Scanner",
"version": "1.0.0",
"hasError": false,
"errorMessage": null,
"score": 100,
"tests": [
{
"name": "CMS",
"hasError": false,
"errorMessage": null,
"score": 100,
"scoreType": "info",
"testDetails": null
},
{
"name": "CMS_PLUGINS",
"hasError": false,
"errorMessage": null,
"score": 100,
"scoreType": "warning",
"testDetails": null
},
{
"name": "JS_LIB",
"hasError": false,
"errorMessage": null,
"score": 100,
"scoreType": "warning",
"testDetails": null
},
{
"name": "EMAIL_ADDRESS",
"hasError": false,
"errorMessage": null,
"score": 100,
"scoreType": "info",
"testDetails": null
},
{
"name": "PHONE_NUMBER",
"hasError": false,
"errorMessage": null,
"score": 100,
"scoreType": "info",
"testDetails": null
}
]
}
प्रत्येक स्कैन में कम से कम एक खोज:
{
"name": "InfoLeak-Scanner",
"version": "1.0.0",
"hasError": false,
"errorMessage": null,
"score": 20,
"tests": [
{
"name": "CMS",
"hasError": false,
"errorMessage": null,
"score": 96,
"scoreType": "info",
"testDetails": [
{
"placeholder": "CMS_VERSION",
"values": {
"cms": "wordpress",
"version": "4.9.6",
"node": "meta",
"node_content": "WordPress 4.9.6"
}
}
]
},
{
"name": "CMS_PLUGINS",
"hasError": false,
"errorMessage": null,
"score": 99,
"scoreType": "warning",
"testDetails": [
{
"placeholder": "PLUGIN_ONLY",
"values": {
"plugin": "contact-form-7",
"node": "href",
"node_content": "https://[...]/wp-content/plugins/contact-form-7/includes/css/styles.css?ver=5.0.2"
}
}
]
},
{
"name": "JS_LIB",
"hasError": false,
"errorMessage": null,
"score": 0,
"scoreType": "warning",
"testDetails": [
{
"placeholder": "JS_LIB_VULN_VERSION",
"values": {
"js_lib_name": "jquery",
"js_lib_version": "1.12.4",
"node": "src",
"node_content": "https://[...]/wp-includes/js/jquery/jquery.js?ver=1.12.4"
}
}
]
},
{
"name": "EMAIL_ADDRESS",
"hasError": false,
"errorMessage": null,
"score": 96,
"scoreType": "info",
"testDetails": [
{
"placeholder": "EMAIL_FOUND",
"values": {
"email_adress": [
[
"[email protected]"
]
]
}
}
]
},
{
"name": "PHONE_NUMBER",
"hasError": false,
"errorMessage": null,
"score": 98,
"scoreType": "info",
"testDetails": [
{
"placeholder": "NUMBER_FOUND",
"values": {
"number": [
"1234-12 11 22-3",
"123-11 22 333-4"
]
}
}
]
}
]
}