GithubHelp home page GithubHelp logo

dashlord's Introduction

DashLord

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 :

Usage

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.yml si nécessaire
  • Lancer DashLord scans dans l'onglet Actions 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 fichier dashlord.yml
  • Le workflow DashLord report est lancé à la fin de chaque DashLord scans et produit le rapport sous forme de site web.

Ces workflows sont également déclenchables manuellement dans l'onglet "Actions"

Customisation

dashlord.yml

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:
      - presse

Outils

Chaque 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

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.

cf CONTRIBUTING.md

Dev

DashLord fonctionne en deux étapes :

  1. Acquisition des données : Pour chaque URL, chaque outil est executé et génère un fichier JSON qui sera versionné dans le repository
  2. 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

Related repos

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

dashlord's People

Contributors

arthurlutz avatar github-actions[bot] avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.