
Contrôle de progression Pentest/BugBounty avec modules de scan
Contrôle de périmètre, scanneur de périmètre et suivi de progression pour faciliter le travail sur un projet de bug bounty ou de pentest
Anatoly Ivanov de Positive Technologies
L'outil encourage un travail plus méthodique en pentest/bugbounty, en suivant la progression et les informations générales des scans.
Il peut lancer
contre le périmètre sur lequel vous travaillez et stocker les données sous une forme pratique. Effectuer un filtrage utile des données du projet, par exemple :
La configuration de base via docker-compose fonctionnera sur tout système ayant les dépendances docker et docker-compose
Si vous n'avez pas docker installé alors
sudo apt install docker.io
Si vous avez docker configuré, alors pour Ubuntu/Debian simplement
sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
git clone https://github.com/c0rvax/project-black
cd project-black
sudo docker-compose up
Si vous voyez des erreurs SQL, essayez d'arrêter docker-compose (Ctrl + C une fois et attendez un arrêt correct) puis exécutez docker-compose up
Cela peut prendre un certain temps mais c'est tout ! Les autres distributions devraient avoir des instructions très similaires.
Rendez-vous maintenant sur http://localhost:5000, saisissez les identifiants. Ils se trouvent dans https://github.com/c0rvax/project-black/blob/master/config/config_docker.yml sous application
Pour une configuration plus complexe ou en cas d'échec, consultez le wiki.
Aucun des conteneurs docker ne limite la quantité d'utilisation des ressources, vous êtes seul responsable ici, cependant, vous pouvez modifier le nombre de tâches parallèles pour chaque worker séparément. Consultez le wiki pour cela
Après la configuration, créez un projet et rendez-vous sur la page correspondante.

Nous allons maintenant suivre les étapes de base que vous pouvez effectuer dans l'application
Disons que nous évaluons hackerone.com et tous ses sous-domaine. Écrivez hackerone.com dans le champ add scope et appuyez sur Add to scope

Le point d'entrée a été ajouté.
Il existe d'autres moyens d'ajouter un périmètre, voir wiki
Toutes les tâches peuvent lire les paramètres de l'utilisateur, cependant, lancer avec certaines options n'affichera aucun nouveau résultat car il est assez difficile d'analyser toutes les sorties possibles d'un programme. Donc pour commencer, essayez de travailler en dupliquant les options de ce manuel.
Les options disponibles peuvent être trouvées sur cette page
Cliquez sur le bouton bleu Launch task.

Une fenêtre contextuelle avec des paramètres apparaîtra.

Il est recommandé de cocher la case All_top_level_domains et dans argv entrer -ip et cliquer sur le bouton Fire!.

Cela lancera amass -d hackerone.com -ip. Notez que dans ce cas nous n'avons spécifié aucun domaine. C'est parce que la case All_top_level_domains signifie chercher dans le périmètre qui est stocké dans la base de données. Donc le programme voit que hackerone.com a été ajouté au périmètre et lance amass contre celui-ci.
Une fois terminé, les nouvelles données sont automatiquement ajoutées au périmètre.
Rendez-vous maintenant dans l'onglet IPs. Cliquez sur le bouton déjà connu Launch task et choisissez masscan.
Nous allons lancer un scan rapide, en utilisant le bouton Top N ports. Cela complète automatiquement le paramètre argv. Appuyez sur Fire!

Les résultats sont automatiquement téléchargés depuis la base de données.

Maintenant cliquez sur Launch task et choisissez nmap only open. Cela trouvera tous les ports ouverts qui existent dans la base de données et exécutera nmap uniquement contre eux.
Cliquez sur Banner et Fire.

La bannière détectée apparaîtra automatiquement

Lancez dirsearch contre toutes les adresses IP et tous les ports ouverts (HTTP et HTTPS seront essayés)
Dans l'onglet IPs, cliquez sur Launch task et sélectionnez dirsearch. Remplissez les extensions que vous voulez essayer et cliquez sur Fire!
Vous pouvez lancer dirsearch contre les hôtes (pas les IPs) dans l'onglet Hosts.
S'il n'y a pas de ports, dirsearch ne démarrera même pas. Donc d'abord, assurez-vous d'avoir lancé nmap ou masscan pour découvrir les ports ouverts.
Il y a généralement trois façons de vérifier les résultats :
Ce sont deux onglets. Ils fonctionnent de la même manière, nous nous arrêterons donc sur Hôtes.

Vous pouvez voir une liste d'hôtes, leurs ports et fichiers. Vous pouvez également modifier un commentaire pour cet hôte.
La partie importante ici est la boîte de filtrage.

Vous pouvez agréger différents filtres en utilisant le champ affiché ci-dessus. Tapez le filtre souhaité (il y a une aide pour cela) et appuyez sur Shift + Enter

Vous pouvez également voir les détails d'un hôte ou d'une IP spécifique. Appuyez sur le bouton avec les lunettes

Vous y verrez le résultat de dirsearch pour chaque port ouvert sur cet hôte
Le bouton Dirsearch list ouvrira une nouvelle fenêtre montrant tous les fichiers trouvés pour chaque dirsearch qui a été lancé dans ce projet.
Les Launch task des IPs et des Hôtes sont différents ! Le bouton sur la page IPs démarrera contre toutes les IPs du projet en cours, tandis que le bouton sur la page Hôtes lancera contre les hôtes.
Pour lancer une tâche contre certains hôtes, vous devez
Exemple :

Certains filtres ont été appliqués. Si nous lançons maintenant dirsearch, il sera lancé contre les hôtes qui correspondent aux filtres utilisés.