Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-54356 — Exploit proof-of-concept e advisory per CVE-2026-54356, una vulnerabilità di autorizzazione mancante in Budibase che consente agli utenti con privilegi limitati di generare URL di upload pre-firmati S3 con le credenziali AWS memorizzate. | Kitploit
Strumenti/GitHubGitHub/kovachvl/cve-2026-54356
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebTest di Sicurezza delle APIPenetration TestingSicurezza Cloud
GitHubkovachvl/cve-2026-54356

CVE-2026-54356

Exploit proof-of-concept e advisory per CVE-2026-54356, una vulnerabilità di autorizzazione mancante in Budibase che consente agli utenti con privilegi limitati di generare URL di upload pre-firmati S3 con le credenziali AWS memorizzate.

Vedi Repository
7 giorni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2026-54356 — Budibase: emissione autenticata di URL di upload firmati S3 arbitrari

Un utente autenticato con privilegi bassi (ruolo BASIC) di un workspace Budibase pubblicato può chiamare POST /api/attachments/:datasourceId/url e ottenere un URL di upload pre-firmato S3 firmato con le credenziali AWS lato server del datasource del workspace, per una chiave oggetto controllata dall'attaccante (e, se il datasource non ha un bucket fisso, anche un bucket controllato dall'attaccante).

CVECVE-2026-54356
AvvisoGHSA-6x9p-4r67-5gjx
Pacchetto@budibase/server
TipoCWE-862: Autorizzazione mancante
Versioni affette< 3.41.3
Versione corretta3.41.3
GravitàAlta — CVSS 3.1 7.1 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N)
Privilegio richiestoUtente autenticato dell'app con ruolo BASIC

Causa principale

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) carica il datasource tramite :datasourceId, recupera le accessKeyId/secretAccessKey in esso memorizzate e firma una richiesta PutObject per bucket/key forniti dall'attaccante:

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 }))

Generare un URL firmato basato su credenziali è un'azione privilegiata, ma il controllo richiede solo l'autorizzazione generica di scrittura sulle tabelle (che BASIC possiede) e non verifica mai che il chiamante abbia il diritto di utilizzare quello specifico datasource. Atteso: 403. Reale: 200 con signedUrl/publicUrl.

Impatto

  • L'attaccante ottiene URL pre-firmati PutObject validi firmati con le credenziali AWS memorizzate dell'organizzazione.
  • Può scrivere/sovrascrivere chiavi oggetto arbitrarie nel bucket del datasource e — quando nessun bucket è fissato nella configurazione del datasource — potenzialmente qualsiasi bucket raggiungibile da quelle credenziali.
  • L'URL firmato funziona anche fuori dalla piattaforma (curl/PUT semplici).

PoC

Vedi poc/:

  • poc/exploit.sh — PoC in curl (login → generazione URL firmato → upload del file di prova).
  • poc/poc.py — stesso flusso in 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

Rimedio

Aggiorna a Budibase 3.41.3+. Se non puoi aggiornare subito, limita le credenziali AWS del datasource S3 al minimo privilegio (policy IAM vincolata a bucket/prefissi) e monitora l'attività PutObject inattesa.

Crediti

Scoperto e segnalato da @KovachVL.

Disclaimer

Solo per uso educativo/difensivo e divulgazione coordinata. Testa esclusivamente sistemi che possiedi o per i quali hai esplicita autorizzazione.

Scarica lo strumento