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
CVE-2026-54356 — Exploit proof-of-concept et avis de sécurité pour CVE-2026-54356, une faille d'absence de contrôle d'autorisation dans Budibase qui permet aux utilisateurs à faibles privilèges de générer des URL de téléversement S3 pré-signées avec les identifiants AWS stockés. | Kitploit
Outils/GitHubGitHub/kovachvl/cve-2026-54356
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests de Sécurité des APITests d'IntrusionSécurité Cloud
GitHubkovachvl/cve-2026-54356

CVE-2026-54356

Exploit proof-of-concept et avis de sécurité pour CVE-2026-54356, une faille d'absence de contrôle d'autorisation dans Budibase qui permet aux utilisateurs à faibles privilèges de générer des URL de téléversement S3 pré-signées avec les identifiants AWS stockés.

Voir le dépôt
il y a 6 joursPas 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

CVE-2026-54356 — Budibase : émission authentifiée d'URL de téléversement signée S3 arbitraire

Un utilisateur authentifié à faibles privilèges (rôle BASIC) d'un espace de travail Budibase publié peut appeler POST /api/attachments/:datasourceId/url et obtenir une URL de téléversement pré-signée S3 signée avec les identifiants AWS côté serveur de la source de données de l'espace de travail, pour une clé d'objet contrôlée par l'attaquant (et, si la source de données n'a pas de bucket fixe, un bucket également contrôlé par l'attaquant).

CVECVE-2026-54356
AvisGHSA-6x9p-4r67-5gjx
Paquet@budibase/server
TypeCWE-862: Missing Authorization
Versions affectées< 3.41.3
Version corrigée3.41.3
SévéritéÉlevée — CVSS 3.1 7.1 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N)
Privilège requisUtilisateur d'application BASIC authentifié

Cause racine

packages/server/src/api/routes/static.ts :

root@kitploit:~
.post(
  "/api/attachments/:datasourceId/url",
  recaptcha,
  authorized(PermissionType.TABLE, PermissionLevel.WRITE), // too low, wrong resource
  controller.getSignedUploadURL
)

packages/server/src/api/controllers/static/index.ts (getSignedUploadURL) charge la source de données via :datasourceId, récupère ses accessKeyId/secretAccessKey stockés, et signe une requête PutObject pour le bucket/key fourni par l'attaquant :

root@kitploit:~
const { bucket, key } = ctx.request.body || {}
const s3 = new S3({
  credentials: {
    accessKeyId: datasource?.config?.accessKeyId as string,
    secretAccessKey: datasource?.config?.secretAccessKey as string,
  },
})
signedUrl = await getSignedUrl(s3, new PutObjectCommand({ Bucket: bucket, Key: key }))

La génération d'une URL signée adossée à des identifiants est une action privilégiée, mais la vérification n'exige qu'une permission générique d'écriture sur la table (que BASIC possède) et ne vérifie jamais que l'appelant est autorisé à utiliser cette source de données précise. Attendu : 403. Constaté : 200 avec signedUrl/publicUrl.

Impact

  • L'attaquant obtient des URL pré-signées PutObject valides, signées avec les identifiants AWS stockés de l'organisation.
  • Peut écrire/écraser des clés d'objets arbitraires dans le bucket de la source de données et — lorsqu'aucun bucket n'est fixé dans la configuration de la source de données — potentiellement tout bucket accessible avec ces identifiants.
  • L'URL signée fonctionne hors plateforme (curl/PUT simple).

PoC

Voir poc/ :

  • poc/exploit.sh — PoC curl (connexion → génération d'URL signée → téléversement du fichier de preuve).
  • poc/poc.py — même procédure en Python.
root@kitploit:~
python3 poc/poc.py \
  --target http://localhost:10000 \
  --app-id app_xxx --datasource-id datasource_xxx \
  --email [email protected] --password 'Password123!' \
  --bucket my-attachments --key poc/cve-2026-54356/proof.txt \
  --upload

Remédiation

Mettez à niveau vers Budibase 3.41.3+. Si vous ne pouvez pas mettre à niveau immédiatement, limitez les identifiants AWS de la source de données S3 au moindre privilège (politique IAM restreinte au bucket/préfixe) et surveillez toute activité PutObject inattendue.

Crédits

Découvert et signalé par @KovachVL.

Avertissement

Pour un usage éducatif/défensif et une divulgation coordonnée uniquement. Ne testez que les systèmes que vous possédez ou que vous êtes explicitement autorisé à tester.

Télécharger l’outil