Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
witcher — Gérer les contrôles de GitHub Advanced Security (GHAS) à grande échelle | Kitploit
Outils/GitHubGitHub/mf-labs/witcher
Scanners de VulnérabilitésAnalyse de CodeAudit de ConfigurationDevSecOpsDétection de Secrets
GitHubmf-labs/witcher

witcher

Gérer les contrôles de GitHub Advanced Security (GHAS) à grande échelle

Voir le dépôt
101il y a 1 anPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Site web

witcher

Implémenter et surveiller les contrôles Appsec à grande échelle.

Prérequis

  • NodeJS 20.13

Testé sur

  • Mac
  • Ubuntu

Comment installer

root@kitploit:~
$ git clone [email protected]:mf-labs/witcher.git
$ cd witcher
$ npm i

Construire une image Docker

root@kitploit:~
$ git clone [email protected]:mf-labs/witcher.git
$ cd witcher
$ docker build -t witcher .

# Running docker image
$ docker run -e GITHUB_TOKEN=$GITHUB_TOKEN -e ORG=$ORG witcher -a status -m ghas -r offsec-sast-testing

Fonctionnalités de witcher

root@kitploit:~
➜  witcher git:(master) node witcher.js -h
usage: witcher.js [-h] -m MODULE -a ACTION [--daily-summary] [--mass-action] [--slack] [--siem] [--jira]
                  [--jira-ticket JIRATICKET] [--org ORG] [-r REPO] [-b BRANCH]
                  [--workflow-file WORKFLOW] [--repo-file REPOFILE]

witcher ....... you can't escape

optional arguments:
  -h, --help            show this help message and exit
  -m MODULE, --module MODULE
                        ghas, dependabot, secret-scanning, codeql, iac, workflows, ALL
  -a ACTION, --action ACTION
                        enable, disbale, status, alert, deploy, delete
  --daily-summary       Get the Daily Summary
  --mass-action         Perform action (enable, deploy, delete) at scale
  --slack               Post new alert(s) on Slack
  --siem                Log activities on SIEM
  --jira                Post new vulnerability ticket on Jira
  --jira-ticket JIRATICKET
                        Jira ticket ID (e.g. PROJECT-123)

Input:
  --org ORG             Organization Name
  -r REPO, --repo REPO  Repository Name, ALL
  -b BRANCH, --branch BRANCH
                        Branch Name
  --workflow-file WORKFLOW
                        Workflow File Name
  --repo-file REPOFILE  Repo File Name

Witcher GHAS Demo

Variable d'environnement requise

Définissez d'abord les variables d'environnement suivantes

root@kitploit:~
 export GITHUB_TOKEN=YOUR_GITHUB_TOKEN
 export GITHUB_USER=YOUR_GITHUB_USERNAME
 export ORG=YOUR_GITHUB_ORGANIZATION
 
 # Optional to configure slack
 export SLACK_BOT_TOKEN
 export SLACK_SIGNING_SECRET
 export SLACK_CHANNEL
 
 # Optional to send data to SIEM
 export SERVERLESS_APP_URL

 # Optional for Jira ticket creation
 export JIRA_API_TOKEN
 export JIRA_EMAIL
 export JIRA_URL
 export JIRA_PROJECT
 export JIRA_ISSUE_TYPE

Exclusion

Mettez à jour le fichier github/data/exclusion.json avec la liste des dépôts exclus des dépôts principaux / GHAS.

Aide-mémoire des commandes

root@kitploit:~
# List repositories where GHAS is disabled
$ node witcher.js -m ghas -a status --repo All

# Enable GHAS on certain repo
$ node witcher.js -m ghas -a enable --repo <repo-name>

# Disable GHAS on certain repo
$ node witcher.js -m ghas -a disable --repo <repo-name>

# Check GHAS status on certain repo
$ node witcher.js -m ghas -a status --repo <repo-name>

# Get latest code scanning vulnerability
$ node witcher.js -m codeql -a alert --slack   // --slack to post on slack

# Mass Action
$ node witcher.js --mass-action -a enable -m ghas --repo-file mass_action.txt --jira-ticket PROJECT-123

Witcher CodeQL Demo

Plus de commandes

More Command / Cheatsheet

Routine quotidienne

root@kitploit:~
# Run Daily Summary
$ node witcher.js --daily-summary -m ALL -a status --slack --jira

# Daily Summary includes the checking of
# 1. GHAS status on all repositories
# 2. Secret Scanning status on all repositories
# 3. Check for Depenabot status
# 4. Check for paused Dependabot
# 5. Code Scanning status on applicable repositories
# 6. IaC Scanning status on applicable repositories
# 7. Check alerts for any new vulnerability
# 8. Logged daily summary on SIEM and posted on Slack

Avertissement

root@kitploit:~
- All public repositories are excluded from witcher
- All archived repositories are excluded from witcher
- All deprecated repositories are excluded from witcher

Feuille de route

  • Surveillance personnalisée des contrôles de sécurité : Ajouter la prise en charge de la surveillance de contrôles personnalisés au-delà de CodeQL, IaC et Dependabot.
  • Résumé quotidien personnalisable : Permettre aux utilisateurs d'ajouter des statuts de contrôle supplémentaires aux rapports quotidiens.
  • Prise en charge des sorties CLI et JSON : Activer les options de sortie complètes via les arguments CLI pour les formats CLI et JSON.

Licence

Ce projet est sous licence Apache 2.0

Droits d'auteur (c) 2025 Moonfare.

Vous êtes libre d'utiliser, de modifier et de distribuer le projet, à condition d'inclure les attributions appropriées à Moonfare dans votre utilisation.

Contribution

Si vous souhaitez contribuer au projet, veuillez consulter notre CONTRIBUTING.md pour les directives.

Télécharger l’outil