DashLord
Tableau de bord des données brutes aggrégées de plusieurs outils qui évaluent une URL.
L'acquisition des données ainsi que la génération du rapport sont automatisés par des GitHub actions
https://dashlord.incubateur.net
Usage
Pour déployer votre version de DashLord :
- Créer un nouveau repository à partir du template dashlord
- Éditer le fichier
dashlord.yml
- Lancer
DashLord scans
dans l'ongletActions
de votre projet GitHub
Une fois les scans terminés, un rapport sera généré dans la branche gh-pages
du repository. Vous devez aller dans l'onglet Settings
du repository pour activer la fonctionnalité "GitHub Pages" et choisir la source gh-pages
. Ceci permet de publier le rapport sur https://[organisation].github.io/[repository]
(publiquement).
GitHub actions
- Le workflow
DashLord scans
permet de lancer un scan sur les URLs, il est executé lors d'un changement dans le fichierdashlord.yml
- Le workflow
DashLord report
est lancé à la fin de chaqueDashLord scans
et produit le rapport sous forme de site web.
Ces workflows sont également déclenchables manuellement dans l'onglet "Actions"
Customisation
- Le fichier
dashlord.yml
permet de paramétrer les urls et quelques options du tableau de bord - Le workflow
scans.yml
permet d'activer/désactiver certains scanners - Le workflow
report.yml
permet de modifier le rapport généré en se basant sur SocialGouv/dashlord-report-action.
Outils
outil | description |
---|---|
Google Lighthouse | Audit automatique de page web (best-practices a11y, webperf, seo...) |
OWASP Zed Attack Proxy | Scan de vulnérabilités passif "baseline" |
testssl.sh | Évaluation du niveau de confiance d'un certificat SSL |
Mozilla HTTP observatory | Évalue le niveau de qualité/sécurité de la page web et de son serveur |
Third parties | Liste tous les cookies et scripts externes |
GeoIP2 | Géolocalisation des ressources de la page web |
Nuclei | Détection d'erreurs de configuration courantes |
Wappalyzer | Détection des technologies web, Javascript, CMS, outillage... |
Contribute
Vous pouvez contribuer en remontant des issues de qualité, en améliorant la documentation, ou en ajoutant du code.
🤗 Toutes les suggestions sont bienvenues.
Dev
DashLord fonctionne en deux étapes :
- Acquisition des données : Pour chaque URL, chaque outil est executé et génère un fichier JSON qui sera versionné dans le repository
- Génération du rapport : À partir des données existantes, l'action dashlord-report-action aggrège, compresse les résultats et produit un rapport web statique.
Related repos
Repo | desc |
---|---|
SocialGouv/dashlord-report-action | action to aggregate scanners data and produce a web report |
SocialGouv/dashlord-nuclei-action | Dump nuclei result |
SocialGouv/dashlord-httpobs-action | Dump Mozilla HTTP Observatory result |
SocialGouv/thirdparties-action | Dump third party scripts scan result |
SocialGouv/wappalyzer-action | Dump Wappalyzer scan result |
SocialGouv/thirdparties | thirdparty scripts database |
SocialGouv/dashlord-init-action | action that parse the configuration for a job matrix |
SocialGouv/dashlord-save-action | aggregate all scanners data and saves it locally |
Ajouter un scanner
- Créer une action github qui produit un JSON (cf exemple ci-dessus)
- Ajouter le support pour ce type de données dans dashlord-report-action repo