Tableau de bord des bonnes pratiques techniques
L'acquisition des donnÃĐes ainsi que la gÃĐnÃĐration du rapport sont automatisÃĐs par des GitHub actions
Exemples :
- https://dashlord.incubateur.net
- https://socialgouv.github.io/dashlord-fabrique
- https://mtes-mct.github.io/dashlord
- https://socialgouv.github.io/dnum-dashboard
Pour dÃĐployer votre version de DashLord :
- CrÃĐer un nouveau repository à partir du template dashlord
- Ãditer le fichier
dashlord.yml - Ãditer le fichier
.github/workflows/scans.ymlsi nÃĐcessaire - Lancer
DashLord scansdans l'ongletActionsde 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).
- Le workflow
DashLord scanspermet de lancer un scan sur les URLs, il est executÃĐ lors d'un changement dans le fichierdashlord.yml - Le workflow
DashLord reportest lancÃĐ Ã la fin de chaqueDashLord scanset produit le rapport sous forme de site web.
Ces workflows sont ÃĐgalement dÃĐclenchables manuellement dans l'onglet "Actions"
- Le fichier
dashlord.ymlpermet de paramÃĐtrer les urls et quelques options du tableau de bord - Le workflow
.github/workflows/scans.ymlpermet de customiser certains scanners - Le workflow
.github/workflows/report.ymlpermet de gÃĐnÃĐrer le rapport web en se basant sur SocialGouv/dashlord-actions/report.
title: Dashboard title
# `tools` allows to activate only some of the tools in the report
tools:
screenshot: true
nmap: true
zap: true
wappalyzer: true
httpobs: true
testssl: true
lighthouse: true
thirdparties: true
nuclei: false
updownio: true
dependabot: true
codescan: true
urls:
- url: https://www.free.fr
title: Homepage free.fr
tags:
- telecom
- provider
repositories:
- free/free-ui
- free/free-css
tools:
nmap: false
- url: https://www.lemonde.fr
title: Homepage lemonde.fr
tags:
- presseChaque outil peut Être activÃĐ/dÃĐsactivÃĐ dans le rapport avec la clÃĐ tools de dashlord.yml.
| id | outil | description |
|---|---|---|
| lighthouse | Google Lighthouse | Audit automatique de page web (best-practices a11y, webperf, seo...) |
| zap | OWASP Zed Attack Proxy | Scan de vulnÃĐrabilitÃĐs passif "baseline" |
| testssl | testssl.sh | Ãvaluation du niveau de confiance d'un certificat SSL |
| http | Mozilla HTTP observatory | Ãvalue le niveau de qualitÃĐ/sÃĐcuritÃĐ de la page web et de son serveur |
| thirdparties | Third parties | Liste tous les cookies et scripts externes |
| - | GeoIP2 | GÃĐolocalisation des ressources de la page web |
| nuclei | Nuclei | DÃĐtection d'erreurs de configuration courantes |
| wappalyzer | Wappalyzer | DÃĐtection des technologies web, Javascript, CMS, outillage... |
| updownio | UpDown.io | Monitoring d'uptime et performance |
| dependabot | Dependabot security alerts | Alertes de vulnerabilitÃĐs |
| nmap | nmap + vulner port scan | Ports ouverts et vulnÃĐrabilitÃĐs |
Vous pouvez contribuer en remontant des issues de qualitÃĐ, en amÃĐliorant la documentation, ou en ajoutant du code.
ðĪ Toutes les suggestions sont bienvenues.
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 report aggrÃĻge, compresse les rÃĐsultats et produit un rapport web statique.
Voir aussi : SocialGouv/dashlord-actions
| Repo | desc |
|---|---|
| SocialGouv/dashlord-actions | Dashlord specific actions |
| SocialGouv/dashlord-nuclei-action | Dump nuclei result |
| SocialGouv/httpobs-action | Dump Mozilla HTTP Observatory result |
| SocialGouv/thirdparties-action | Dump third party scripts scan result |
| SocialGouv/wappalyzer-action | Dump Wappalyzer scan result |
| MTES-MCT/dependabotalerts-action | Dump Github dependabot security alerts |
| MTES-MCT/codescanalerts-action | Dump Github CodeQL security alerts |
| MTES-MCT/updownio-action | Dump updown.io stats |
| MTES-MCT/nmap-action | Dump nmap port scan stats |
| SocialGouv/thirdparties | thirdparty scripts database |
| swinton/screenshot-website | grab website screenshot |