Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
eyeballer — Réseau de neurones convolutif pour analyser les captures d'écran de pentest | Kitploit
Outils/GitHubGitHub/bishopfox/eyeballer
ReconnaissanceAnalyse des VulnérabilitésCollecte d'InformationsTests d'IntrusionApprentissage Automatique
GitHubbishopfox/eyeballer

eyeballer

Réseau de neurones convolutif pour analyser les captures d'écran de pentest

Voir le dépôt
1.3k14816il y a 2 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Eyeballer

Logo

Jetez un coup d'œil rapide à vos captures d'écran.

Eyeballer est conçu pour les tests de pénétration réseau à grande échelle où vous devez trouver des cibles « intéressantes » parmi un vaste ensemble d'hôtes web. Utilisez votre outil de capture d'écran préféré comme d'habitude (EyeWitness ou GoWitness) puis passez-les dans Eyeballer pour vous indiquer ce qui contient probablement des vulnérabilités, et ce qui n'en contient pas.

Essayez-le en direct sur : https://eyeballer.bishopfox.com

Exemples d'étiquettes

Sites d'aspect ancienPages de connexion
Exemple de page d'aspect ancienExemple de page de connexion
Application webPages 404 personnalisées
Exemple d'application webExemple de page 404 personnalisée
Domaines stationnés
Exemple d'application web

Signification des étiquettes

Sites d'aspect ancien Cadres en blocs, CSS cassés, ce certain « je ne sais quoi » d'un site web qui semble avoir été conçu au début des années 2000. Vous le reconnaissez quand vous le voyez. Les vieux sites ne sont pas seulement laids, ils sont aussi généralement très vulnérables. Lorsque vous cherchez à pirater quelque chose, ces sites sont une mine d'or.

Pages de connexion Les pages de connexion sont précieuses pour les tests de pénétration : elles indiquent qu'il existe des fonctionnalités supplémentaires auxquelles vous n'avez pas encore accès. Cela signifie également qu'il existe un processus simple de suivi par des attaques d'énumération d'identifiants. Vous pourriez penser que vous pouvez définir une heuristique simple pour trouver les pages de connexion, mais en pratique c'est très difficile. Les sites modernes n'utilisent pas simplement une balise input que nous pourrions grep.

Application web Cela vous indique qu'il existe un groupe plus large de pages et de fonctionnalités disponibles qui peuvent servir de surface d'attaque. Cela contraste avec une simple page de connexion, sans autre fonctionnalité. Ou une page d'accueil IIS par défaut qui n'a pas d'autre fonctionnalité. Cette étiquette doit vous indiquer qu'il y a une application web à attaquer.

Pages 404 personnalisées Les sites modernes adorent avoir des pages 404 personnalisées mignonnes avec des images de robots cassés ou de chiens tristes. Malheureusement, ils aiment aussi renvoyer des codes de réponse HTTP 200 ce faisant. Le plus souvent, la page « 404 » ne contient même pas le texte « 404 ». Ces pages sont généralement sans intérêt, malgré leur richesse visuelle, et Eyeballer peut vous aider à les filtrer.

Domaines stationnés Les domaines stationnés sont des sites web qui ont l'air réels, mais qui ne constituent pas une surface d'attaque valide. Ce sont des pages de substitution, généralement dépourvues de toute fonctionnalité réelle, composées presque entièrement de publicités, et généralement pas gérées par notre cible réelle. C'est ce que vous obtenez lorsque le domaine spécifié est incorrect ou expiré. Trouver ces pages et les supprimer du périmètre est très précieux à long terme.

Configuration

Téléchargez les paquets requis avec pip :

sudo pip3 install -r requirements.txt

Ou si vous voulez le support GPU :

sudo pip3 install -r requirements-gpu.txt

REMARQUE : Configurer un GPU pour une utilisation avec TensorFlow dépasse largement le cadre de ce README. Il y a la compatibilité matérielle à considérer, des pilotes à installer... Il y a beaucoup de choses. Vous devrez donc vous débrouiller par vous-même pour cette partie si vous voulez un GPU. Mais du moins du point de vue des paquets Python, le fichier requirements ci-dessus couvre vos besoins.

Poids pré-entraînés

Pour les poids pré-entraînés les plus récents, consultez les releases ici sur GitHub.

Données d'entraînement Vous trouverez nos données d'entraînement ici :

https://www.kaggle.com/altf42600/pentest-screensots

Il y a deux choses dont vous avez besoin dans les données d'entraînement :

  1. le dossier images/, contenant toutes les captures d'écran (redimensionnées en 224x224)
  2. labels.csv qui contient toutes les étiquettes

Copiez les deux à la racine de l'arborescence du code Eyeballer.

De plus, vous pouvez trouver un fichier de poids pré-entraîné que vous pouvez utiliser directement sans entraînement.

  1. bishop-fox-pretrained-vN.h5

Il se trouve ici sur GitHub, regardez la section releases pour la version la plus récente.

Prédiction des étiquettes

REMARQUE : Pour de meilleurs résultats, assurez-vous de capturer vos sites web dans un format d'image natif de 1,6x. Par exemple : 1440x900. Eyeballer redimensionnera automatiquement l'image à la bonne taille, mais si le rapport hauteur/largeur est incorrect, elle sera compressée d'une manière qui affectera les performances de prédiction.

Pour examiner des captures d'écran, exécutez simplement le mode « predict » :

eyeballer.py --weights YOUR_WEIGHTS.h5 predict YOUR_FILE.png

Ou pour tout un répertoire de fichiers :

eyeballer.py --weights YOUR_WEIGHTS.h5 predict PATH_TO/YOUR_FILES/

Eyeballer vous renverra les résultats dans un format lisible par l'homme (un fichier results.html pour le parcourir facilement) et dans un format lisible par machine (un fichier results.csv).

Performances

Les performances d'Eyeballer sont mesurées sur un ensemble de données d'évaluation, qui représente 20 % de l'ensemble des captures d'écran choisies aléatoirement. Comme ces captures ne sont jamais utilisées dans l'entraînement, elles constituent un moyen efficace de voir comment le modèle se comporte. Voici les derniers résultats :

Précision binaire globale93.52%
Précision du tout-ou-rien76.09%

La précision binaire globale est probablement ce que vous considérez comme la « précision » du modèle. C'est la probabilité qu'une étiquette donnée soit correcte.

La précision du tout-ou-rien est plus stricte. Pour cela, nous considérons toutes les étiquettes d'une image et considérons qu'il y a un échec si UNE étiquette est erronée. Ce taux de précision correspond à la probabilité que le modèle prédise correctement toutes les étiquettes pour une image donnée.

ÉtiquettePrécisionRappel
404 personnalisée80.20%91.01%
Page de connexion86.41%88.47%
Application web95.32%96.83%
Aspect ancien91.70%62.20%
Domaine stationné70.99%66.43%

Pour une explication détaillée sur la précision et le rappel, consultez Wikipédia.

Entraînement

Pour entraîner un nouveau modèle, exécutez :

eyeballer.py train

Vous aurez besoin d'une machine avec un bon GPU pour que cela s'exécute dans un délai raisonnable. Toutefois, sa configuration dépasse le cadre de ce readme.

Cela produira un nouveau fichier de modèle (weights.h5 par défaut).

Évaluation

Vous venez d'entraîner un nouveau modèle, cool ! Voyons comment il se comporte face à des images qu'il n'a jamais vues auparavant, selon diverses métriques :

Télécharger l’outil