
Веб-сканер, который обнаруживает версии CMS, плагины, уязвимые библиотеки JavaScript, адреса электронной почты и номера телефонов на целевых веб-сайтах, оценивая риск утечки информации.
Сначала выполните 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-библиотек.
Поиск адресов электронной почты. Интересно для спама и/или атак социальной инженерии.
Поиск номеров телефонов. Интересно для атак социальной инженерии и/или мошенничества.
| Находка | Оценка (0-100) |
|---------------------+---------------|
| CMS_ONLY | 100 |
| CMS_VERSION | 96 |
| CMS_VERSION_VULN | см. ниже |
| PLUGIN_ONLY | 99 |
| PLUGIN_VERSION | 96 |
| PLUGIN_VERSION_VULN | см. ниже |
| JS_LIB_ONLY | 99 |
| JS_LIB_VERSION | 96 |
| JS_LIB_VULN_VERSION | см. ниже |
| 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.
Также находка jQuery v1.12.4 на сайте WordPress не будет оцениваться как обычная уязвимая библиотека.
Такая находка приведёт к оценке 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 определяет ваш собственный user agent, который будет использоваться при сканировании.
Запуск сканера с помощью 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"
]
}
}
]
}
]
}