
Scanner automatizzato di vulnerabilità white-hat che monitora le risorse di HackerOne e Bugcrowd, esegue enumerazione di sottodomini, crawling, fingerprinting e scansione con Nuclei/Xray, quindi genera report e invia notifiche.
GitHub stars
tweet
Twitter
Github
Inglese | Cinese
DarkAngel è uno scanner di vulnerabilità white hat completamente automatico, in grado di monitorare gli asset di Hackerone e Bugcrowd, generare report di vulnerabilità, acquisire screenshot degli URL vulnerabili e inviare notifiche tramite messaggi.
Indirizzo di download di DarkAngel: github.com/Bywalks/DarkAngel
Funzionalità attualmente supportate:
Benvenuti a inviare alcuni template di vulnerabilità a questo progetto.
Genera automaticamente report di vulnerabilità - formato MarkDown - indirizzo di archiviazione /root/DarkAngel/vulscan/results/report
Supporto per l'aggiunta personalizzata di template di report di vulnerabilità. Attualmente, sono stati aggiunti i seguenti template di report di vulnerabilità. Il nome della vulnerabilità può essere configurato come nome del file del template nuclei.
Formato personalizzato del template del report di vulnerabilità
Puoi prima visualizzare come ottenere la configurazione: Tutorial di configurazione TG
Dopo aver ottenuto i parametri, configurali in /root/markup/vconfig/config.ini per abilitare le notifiche TG aziendali.
Notifica TG - Risultati delle vulnerabilità
Notifica TG - processo di scansione
Puoi prima visualizzare come ottenere la configurazione: Documento dell'interfaccia di sviluppo WeChat Enterprise
Dopo aver ottenuto i parametri, configurali in /root/markup/vconfig/config.ini per abilitare le notifiche WeChat Enterprise.
Notifica WeChat - Risultati delle vulnerabilità
Notifica WeChat - processo di scansione
L'architettura complessiva del progetto è ES+Kibana+scanner, quindi l'installazione richiede tre parti.
Immagine ES:
Pull ES image
docker pull bywalkss/darkangel:es7.9.3
Deploy ES image
docker run -e ES_JAVA_OPTS="-Xms1024m -Xms1024m" -e "discovery.type=single-node" -d -p 9200:9200 -p 9300:9300 --name elasticsearch elasticsearch:7.9.3
view log
docker logs -f elasticsearch
If there is a problem, execute the command
sysctl -w vm.max_map_count=262144
Restart Docker
docker restart elasticsearch
Immagine Kibana:
Pull Kibana image
docker pull bywalkss/darkangel:kibana7.9.3
Deploy Kibana image (modify the es ip)
docker run --name kibana -e ELASTICSEARCH_ URL= http://es-ip:9200 -p 5601:5601 -d docker.io/bywalkss/darkangel:kibana7.9.3
view log
docker logs -f kibana
If there is a problem, execute the command
sysctl -w vm.max_map_count=262144
Restart Docker
docker start kibana
Immagine scanner:
Pull Scanner Image
docker pull bywalkss/darkangel:v0.0.5
Deployment Scanner
docker run -it -d -v /root/DarkAngel:/root/DarkAngel --name darkangel bywalkss/darkangel:v0.0.5
Enter the scanner docker
docker exec -it docker_id /bin/bash
Enter the root directory
cd root
Download source code
git clone https://github.com/Bywalks/DarkAngel.git
Add execution permissions
chmod 777 /root/DarkAngel/vulscan/tools/*
chmod 777 /root/DarkAngel/vulscan/tools/whatweb/*
You can use it after into the DarkAngel directory
La directory montata nel container docker non ha i permessi: Soluzione 1. Quando si esegue il container: --privileged=true; Soluzione 2. L'host esegue il comando: setenforce 0
usage: darkangel.py [-h] [--add-new-domain]
[--scan-domain-by-time SCAN_DOMAIN_BY_TIME SCAN_DOMAIN_BY_TIME]
[--scan-new-domain]
[--add-domain-and-scan ADD_DOMAIN_AND_SCAN [ADD_DOMAIN_AND_SCAN ...]]
[--offer-bounty {yes,no}] [--nuclei-file-scan]
[--nuclei-file-scan-by-new-temp NUCLEI_FILE_SCAN_BY_NEW_TEMP]
[--nuclei-file-scan-by-new-add-temp NUCLEI_FILE_SCAN_BY_NEW_ADD_TEMP]
[--nuclei-file-scan-by-temp-name NUCLEI_FILE_SCAN_BY_TEMP_NAME]
[--nuclei-file-polling-scan]
DarkAngel is a white hat scanner. Every user makes the Internet more secure.
--------------------------------------------------------------------------------
optional arguments:
-h, --help show this help message and exit
--add-new-domain add new domain from h1 and bc
--scan-domain-by-time SCAN_DOMAIN_BY_TIME SCAN_DOMAIN_BY_TIME
scan h1 and bc domain by launched time
--scan-new-domain add and scan new domain from h1 and bc
--add-domain-and-scan ADD_DOMAIN_AND_SCAN [ADD_DOMAIN_AND_SCAN ...]
add and scan new domain self added
--offer-bounty {yes,no}
set add domain is bounty or no bounty
--nuclei-file-scan scan new domain from h1 and bc
--nuclei-file-scan-by-new-temp NUCLEI_FILE_SCAN_BY_NEW_TEMP
use new template scan five file by nuclei
--nuclei-file-scan-by-new-add-temp NUCLEI_FILE_SCAN_BY_NEW_ADD_TEMP
add new template scan five file by nuclei
--nuclei-file-scan-by-temp-name NUCLEI_FILE_SCAN_BY_TEMP_NAME
use template scan five file by nuclei
--nuclei-file-polling-scan
five file polling scan by nuclei
$ python3 darkangel.py --add-new-domain
$ python3 darkangel.py --scan-domain-by-time begin-time end-time
$ python3 darkangel.py --scan-new-domain
$ python3 darkangel.py --add-domain-and-scan program-file-name1 program-file-name2 --offer-bounty yes/no
Dopo la scansione, i risultati dei sottodomini verranno salvati nella directory /root/DarkAngel/vulscan/results/urls, rispettivamente nei file bounty_temp_urls_output.txt e nobounty_temp_urls_output.txt.
$ python3 darkangel.py --nuclei-file-scan
Posizione di archiviazione dell'elenco URL
$ python3 darkangel.py --nuclei-file-polling-scan
$ python3 darkangel.py --nuclei-file-scan-by-new-temp nuclei-template-version
La versione corrente del template nuclei è 9.3.1.
Esegui il comando per monitorare l'aggiornamento della versione 9.3.2.
Notifica WeChat Enterprise
Posizione di archiviazione dell'elenco URL
$ python3 darkangel.py --nuclei-file-scan-by-new-add-temp nuclei-template-id
Controlla l'ID del singolo template di Nuclei, qui è 6296.
Esegui il comando per scansionare il template.
Posizione di archiviazione dell'elenco URL
$ python3 darkangel.py --nuclei-file-scan-by-temp-name nuclei-template-name
Front end - scansione dei programmi
Front end - scansione del dominio
Front end - risultati della scansione
Notifica TG - Risultati delle vulnerabilità
Notifica TG - Processo di scansione
Notifica WeChat - Processo di scansione
Notifica WeChat - Risultati delle vulnerabilità
Prima di tutto, grazie per aver dedicato del tempo a migliorare DarkAngel.
Segnalazione bug, suggerimenti e invio di template di vulnerabilità: il tuo ID Github sarà divulgato nel seguente elenco di ringraziamenti:
https://github.com/Bywalks/DarkAngel/blob/main/THANKS.md
Segnalazione bug
Per favore invia il messaggio di errore o screenshot di DarkAngel in GitHub Issues, e descrivi in dettaglio i tuoi passaggi di replica.
Suggerimenti di funzionalità
In GitHub Discussions, puoi parlare liberamente e discutere le funzionalità che desideri con gli sviluppatori.
Invio di template di vulnerabilità
Benvenuti a inviare template di vulnerabilità in GitHub Discussions. I progetti open source richiedono il contributo di tutti.
Aggiornamento
Aggiornamento
Aggiornamento
Aggiornamento
Aggiornamento
Aggiornamento
Aggiornamento
Aggiornamento
Funzione