0Pricing
Cyber Security Academy · Lezione

Test di autenticazione e sessione

Testate il brute force dei login, il session fixation, le debolezze dei JWT e i token remember-me non sicuri.

Test di autenticazione e sessione è una lezione Cyber Security Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Cyber Security Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cyber Security Academy include 4 lezioni in totale.

Ambito dei test di autenticazione

I test di autenticazione comprendono: brute force del login, credential stuffing, vulnerabilità nella gestione delle sessioni, vulnerabilità JWT, token remember-me non sicuri e difetti nella reimpostazione delle password. Questi problemi spesso consentono la compromissione completa dell'account.

Enumerazione degli username

Messaggi di errore diversi per uno username non valido e una password non valida possono rivelare gli username validi. Cerchi differenze nei tempi di risposta, nel testo dei messaggi, nei codici di stato HTTP e negli URL di reindirizzamento.

# Test login with:
# Valid user, wrong pass → "Incorrect password"
# Invalid user → "User not found"
# This confirms valid usernames!

# Time-based: longer response for valid users
# (bcrypt hash computed only for valid users)

Brute force del login con Burp Intruder

Utilizzi Intruder con un attacco Sniper o Pitchfork per eseguire il brute force del login. Contrassegni il campo della password come posizione del payload, carichi una wordlist e filtri le risposte in base al codice di stato o alle differenze nella lunghezza.

# In Burp Intruder:
# 1. Send login request to Intruder
# 2. Mark: username=admin&password=§PASS§
# 3. Attack type: Sniper
# 4. Payload: passwords.txt from SecLists
# 5. Filter: 302 redirects = success

Credential stuffing

Il credential stuffing utilizza coppie username:password provenienti da database violati (Have I Been Pwned) contro nuovi target. È efficace perché gli utenti riutilizzano le password su più servizi.

# Tools:
# Hydra for HTTP login forms
hydra -L users.txt -P passwords.txt \
  192.168.1.100 http-post-form \
  "/login:user=^USER^&pass=^PASS^:Invalid"

Analisi dei token di sessione

Catturi i token di sessione e ne analizzi: prevedibilità (ID sequenziali), lunghezza (breve = facilmente indovinabile), codifica (decodifichi Base64 per visualizzarne la struttura) ed entropia (analizzi il token con Burp Sequencer).

# Burp Sequencer:
# Proxy > HTTP History
# Right-click login response
# Send to Sequencer
# Start live capture → Analyze

Session fixation

La session fixation si verifica quando il server non rigenera l'ID di sessione dopo il login. Esegua il test annotando l'ID di sessione prima del login e verificando se rimane invariato dopo l'autenticazione.

Test dei JWT

I JSON Web Token contengono claim di autenticazione. Verifichi la presenza di: confusione dell'algoritmo (alg:none), brute force del segreto debole e injection nell'header. jwt.io decodifica i JWT per consentirne l'ispezione.

# Decode JWT
echo "eyJ..." | base64 -d

# None algorithm attack:
# Modify header: {"alg":"none"}
# Remove signature
# Encode and submit

# Brute force HS256 secret:
john --format=HMAC-SHA256 token.txt

Difetti nella reimpostazione della password

Difetti comuni nella reimpostazione: token facilmente indovinabili (brevi o sequenziali), injection nell'header Host (token inviato al dominio dell'attaccante), riutilizzo del token (lo stesso token valido più volte) e assenza di scadenza.

# Test host header injection:
# Modify Host: header in reset request:
Host: attacker.com

# If token arrives at attacker.com = vulnerability

# Test token entropy:
# Collect multiple tokens
# Check for patterns or short length

Sicurezza dei token remember-me

I token remember-me devono essere: crittograficamente casuali, lunghi (almeno 128 bit), memorizzati con hash sul server, monouso e associati all'account utente. Verifichi la prevedibilità e il riutilizzo.

Aggiramento dell'autenticazione a più fattori

Metodi comuni per aggirare l'MFA: manipolazione della risposta (modificare failed in success), accesso diretto all'URL dopo un'autenticazione parziale, brute force di OTP brevi senza limitazione della frequenza e SIM swapping (sociale, non tecnico).

Test del blocco dell'account

Verifichi se ripetuti tentativi di accesso falliti attivano il blocco dell'account. L'assenza di blocco comporta un rischio di brute force. Un blocco eccessivamente aggressivo comporta un rischio di denial of service. Controlli se il blocco viene rimosso dopo un timeout o se richiede l'intervento di un amministratore.

Verifica rapida

Quale attacco JWT modifica il campo dell'algoritmo in "none" per aggirare la verifica della firma?

Riepilogo: test di autenticazione e sessione

I test di autenticazione coprono l'intera catena, dal login iniziale alla gestione della sessione. Cerchi l'enumerazione degli username, l'assenza di blocco, i token prevedibili, la confusione dell'algoritmo JWT, l'injection nella reimpostazione della password e i metodi per aggirare l'MFA. Un singolo difetto in questa catena può consentire la compromissione completa dell'account di qualsiasi utente.

Domande Frequenti

La lezione «Test di autenticazione e sessione» è gratuita?

Sì — il testo completo di «Test di autenticazione e sessione» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Cyber Security Academy, passa a CoddyKit PRO. Il corso Cyber Security Academy include 4 lezioni in totale.

Cosa imparerò in «Test di autenticazione e sessione»?

Testate il brute force dei login, il session fixation, le debolezze dei JWT e i token remember-me non sicuri. Eserciti Cyber Security Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Cyber Security Academy?

Non è richiesta alcuna esperienza precedente. Cyber Security Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.

Quanto tempo richiede la lezione «Test di autenticazione e sessione»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Cyber Security Academy?

Sì. Ogni lezione Cyber Security Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Proxy di Burp Suite e intercettazione delle richieste
  2. Test delle vulnerabilità di injection
  3. Test di autenticazione e sessione
  4. Vulnerabilità di caricamento file e SSRF
← Torna a Cyber Security Academy