
Scanner Web qui détecte les versions de CMS, les plugins, les bibliothèques JavaScript vulnérables, les adresses e-mail et les numéros de téléphone sur les sites web cibles, en évaluant le risque de fuite d'informations.
Exécutez d'abord docker run --rm -p 8000:80 siwecos/infoleak-scanner.
Ouvrez votre navigateur et utilisez le scanner : http://localhost/?url=<URL>
Obtenez php5, curl et un serveur web :
sudo apt-get install apache2 php5 php5-curl
Copiez l'application dans le serveur web :
cp -R . /var/www/html/
Recherche des plugins pour le CMS détecté. La plus grande liste (WordPress) contient 980 plugins différents.
Recherche les bibliothèques JavaScript vulnérables et les plus utilisées.
Recherche des adresses e-mail. Utile pour le spam et/ou les attaques d'ingénierie sociale.
Recherche des numéros de téléphone. Utile pour les attaques d'ingénierie sociale et/ou les arnaques.
| Résultat | Score (0-100) |
|----------------------+---------------|
| CMS_ONLY | 100 |
| CMS_VERSION | 96 |
| CMS_VERSION_VULN | voir ci-dessous |
| PLUGIN_ONLY | 99 |
| PLUGIN_VERSION | 96 |
| PLUGIN_VERSION_VULN | voir ci-dessous |
| JS_LIB_ONLY | 99 |
| JS_LIB_VERSION | 96 |
| JS_LIB_VULN_VERSION | voir ci-dessous |
| EMAIL_FOUND | 96 |
| NUMBER_FOUND | 98 |
Si un résultat tel que :
CMS_VERSION_VULN
PLUGIN_VERSION_VULN
JS_LIB_VULN_VERSION
alors le score global sera plafonné à 20 et chaque vulnérabilité supplémentaire diminuera le score global de 10. Ce qui signifie que si CMS_VERSION_VULN et PLUGIN_VERSION_VULN et JS_LIB_VULN_VERSION sont retournés, le score global sera de 0.
De plus, la détection de jQuery v1.12.4 sur un site WordPress ne sera pas évaluée comme une bibliothèque vulnérable habituelle. Ce résultat donnera un score de 90, mais le placeholder restera JS_LIB_VULN_VERSION car il s'agit d'une bibliothèque vulnérable.
Vous pouvez exécuter le scanner via des requêtes POST et GET.
Si vous souhaitez exécuter le scanner avec une requête POST, vous devez envoyer les paramètres dans un format encodé en JSON :
{
"url": "string",
"dangerLevel": 0,
"callbackurls": [
"string"
],
"userAgent": "string"
}
url définit l'URL à scanner.
dangerLevel n'est pas pertinent, définissez-le simplement à 0.
callbackurls est un tableau d'URL. Ces URLs recevront le résultat du scanner (envoyé via POST).
userAgent définit votre user agent individuel que vous souhaitez envoyer lors du scan.
Exécuter le scanner avec une requête GET est beaucoup plus simple. Il vous suffit d'exécuter l'application avec une URL donnée :
http://localhost/?url=<URL>
Aucun résultat dans aucun scan :
{
"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
}
]
}
Au moins un résultat dans chaque scan :
{
"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"
]
}
}
]
}
]
}