Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-49869 — Kestra Auth-Bypass Vulnerability Checker | Kitploit
Outils/GitHubGitHub/ap0dexme0/cve-2026-49869
Scanners de VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionCommandement et ContrôleAuthentification
GitHubap0dexme0/cve-2026-49869

CVE-2026-49869

Kestra Auth-Bypass Vulnerability Checker

Voir le dépôt
1129il y a 3 moisPas 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

Scanneur Kestra CVE-2026-49869 / CVE-2026-53576

Scanne les instances Kestra pour le contournement du filtre d'authentification endsWith("/configs"). Le AuthenticationFilter.java de Kestra vérifie request.getPath().endsWith("/configs") au lieu de correspondre au chemin exact /api/v1/configs. Comme Kestra adresse les ressources via des segments de chemin choisis par l'appelant (namespace, flow ID), tout chemin se terminant par /configs contourne l'authentification de base, permettant la création non authentifiée de workflows et l'exécution de code à distance (RCE). (CVSS 10.0)

Références :

  • GHSA-5vc5-wxxq-3fjx
  • TP-2026-009
  • CVE-2026-49869 Authentification incorrecte / Injection de commande OS / Liste incomplète des entrées interdites
  • CVE-2026-53576

Logique de détection

  1. Vérification de disponibilité + version GET /api/v1/configs (doit retourner 200 ; le corps de la réponse est analysé pour la version de Kestra)
  2. Vérification d'authentification GET /api/v1/{tenant}/flows (doit retourner 401/403 si l'authentification est appliquée)
  3. Sondes de contournement 6 requêtes GET vers des chemins se terminant par /configs ; si l'une d'elles retourne autre chose que 401/403 alors que la vérification d'authentification est appliquée, l'instance est vulnérable
  4. Mode agressif (--aggressive) envoie également des requêtes PUT pour confirmer la capacité de contournement en écriture
  5. Vérification RCE (--rce) chaîne complète : créer un workflow shell/python → déclencher l'exécution → récupérer les logs → confirmer l'exécution de code → nettoyer
  6. Détection SSRF (--ssrf) crée un workflow avec le http() de Pebble ciblant les métadonnées cloud AWS/GCP/Azure et les points de terminaison internes, puis vérifie les logs pour trouver des preuves
  7. Sondes DELETE (--destructive) envoie des DELETE vers les chemins de contournement des flows, tableaux de bord et logs pour confirmer le contournement des opérations destructives

Points de terminaison des sondes

Sondes sûres (par défaut)

SondeMéthodeCheminDescription
Configs publiquesGET/api/v1/configsVérification de disponibilité + extraction de version
Normal protégéGET/api/v1/{tenant}/flowsBase de référence de l'application d'authentification
Contournement FlowsGET/api/v1/{tenant}/flows/{namespace}/configsContournement de liste des flows
Contournement ExécutionsGET/api/v1/{tenant}/executions/{namespace}/configsContournement d'exécutions
Contournement KV StoreGET/api/v1/{tenant}/namespaces/{namespace}/kv/configsContournement de lecture KV
Contournement Tableaux de bordGET/api/v1/{tenant}/dashboards/configsContournement de tableaux de bord
Contournement LogsGET/api/v1/{tenant}/logs/{namespace}/configsContournement d'accès aux logs
Contournement ModèlesGET/api/v1/{tenant}/templates/{namespace}/configsContournement de lecture des modèles

Sondes agressives (--aggressive)

SondeMéthodeCheminDescription
PUT Contournement FlowsPUTidentique au Contournement FlowsCrée un workflow minimal debug.Return
PUT Contournement KVPUTidentique au Contournement KVCrée une entrée KV {"scanned": true}

Sondes destructives (--destructive)

SondeMéthodeCheminDescription
DELETE Contournement FlowsDELETEidentique au Contournement FlowsSupprime une ressource nommée "configs"
DELETE Contournement Tableaux de bordDELETEidentique au Contournement Tableaux de bordSupprime un tableau de bord nommé "configs"
DELETE Contournement LogsDELETEidentique au Contournement LogsDétruit les logs d'audit

Chaîne de vérification RCE (--rce)

S'exécute uniquement lorsque le contournement d'authentification est confirmé. La chaîne complète issue de l'avis :

ÉtapeMéthodeCheminDescription
1. Créer un workflow RCEPUT/api/v1/{tenant}/flows/{namespace}/configsDéploie un workflow avec io.kestra.plugin.scripts.shell.Commands (echo <marker>, id, hostname). Recourt à io.kestra.plugin.scripts.python.Script en cas d'échec.
2. Déclencher l'exécutionPOST/api/v1/{tenant}/executions/{namespace}/configsDémarre le workflow via le chemin de contournement
3. Interroger les logsGET/api/v1/{tenant}/logs/search?executionId=<id>Interroge jusqu'à --poll-retries fois (par défaut 10) toutes les --poll-interval secondes (par défaut 3) à la recherche du marqueur RCE unique
4. NettoyageDELETEidentique à l'étape 1Supprime le workflow déployé

Chaîne de détection SSRF (--ssrf)

S'exécute uniquement lorsque le contournement d'authentification est confirmé :

ÉtapeMéthodeCheminDescription
1. Créer un workflow SSRFPUT/api/v1/{tenant}/flows/{namespace}/configsDéploie une tâche debug.Return avec des appels http() Pebble vers AWS (169.254.169.254/latest/meta-data/ami-id), GCP (metadata.google.internal), Azure (169.254.169.254/metadata/instance) et interne (127.0.0.1:8080/api/v1/configs)
2. Déclencher l'exécutionPOSTidentique à l'étape 2 RCEDéclenche le workflow
3. Interroger les logsGET/api/v1/{tenant}/logs/search?executionId=<id>Vérifie la présence d'indicateurs de métadonnées cloud (ami-, i-, 169.254.169.254, metadata.google.internal, etc.)
4. NettoyageDELETEidentique à l'étape 1Supprime le workflow déployé

Référence CLI

positionnel :
  target                          URL cible unique (ex. http://localhost:8080)

options :
  -f, --file                      Fichier contenant les cibles (une par ligne)
  -t, --timeout                   Délai d'attente de la requête en secondes (par défaut : 10)
  --verify-ssl                    Vérifier les certificats TLS
  -j, --json                      Sortie JSON sur stdout
  -o, --output                    Écrire le rapport JSON dans un fichier
  --tenant                        Nom du locataire (par défaut : "main")
  --namespace                     Espace de noms pour les chemins de contournement (par défaut : "tutorial")
  -w, --workers                   Nombre de threads pour les scans en masse (par défaut : 10)
  -a, --aggressive                Envoyer des requêtes PUT pour confirmer le contournement en écriture
  -P, --auto-ports                Ports pour l'expansion automatique (par défaut : 8080 8081 8088 8091 80 443)

sondes avancées :
  -r, --rce                       Activer la chaîne de vérification RCE (workflow shell + python,
                                   déclenchement d'exécution, récupération des logs, nettoyage automatique)
  -s, --ssrf                      Activer la détection SSRF (http() Pebble vers les points de terminaison
                                   de métadonnées cloud, collecte de preuves basée sur les logs)
  -d, --destructive               Activer les sondes DELETE sur les flows, tableaux de bord et logs
                                   (SUPPRIMERA des ressources sur les instances vulnérables)
  --poll-interval                 Secondes entre les interrogations des logs pour les chaînes RCE/SSRF (par défaut : 3)
  --poll-retries                  Nombre maximal de tentatives d'interrogation des logs pour les chaînes RCE/SSRF (par défaut : 10)

Sortie

Cible unique

Détail complet par sonde avec enrichissement (version, état RCE/SSRF/DELETE) et verdict :

Télécharger l’outil