0Pricing
Ethical Hacking Academy · Lezione

Individuazione dei bug comuni

IDOR, XSS, SSRF

Individuazione dei bug comuni è una lezione Ethical Hacking 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 Ethical Hacking Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Ethical Hacking Academy include 4 lezioni in totale.

Le vulnerabilità fondamentali

Alcune classi di vulnerabilità generano la maggior parte dei compensi dei bug bounty perché sono comuni e hanno un impatto significativo. Imparate prima a fondo queste tre:

  • IDOR — accesso ai dati di altri utenti tramite ID prevedibili
  • XSS — inserimento di script in una pagina
  • SSRF — costringere il server a recuperare URL scelti dall'attaccante

Questa lezione mostra come cercarle tutte in modo sistematico.

Capire IDOR

La Insecure Direct Object Reference (IDOR) si verifica quando un'app usa un identificatore fornito dall'utente per recuperare un oggetto senza verificare che l'utente ne sia il proprietario.

Basta cambiare l'ID per accedere ai dati di qualcun altro. È una vulnerabilità di controllo degli accessi, non un'iniezione.

# Your own invoice
GET /api/invoices/1001  Authorization: Bearer <your-token>

# Change the ID - do you get someone else's?
GET /api/invoices/1002  Authorization: Bearer <your-token>

Cercare efficacemente le IDOR

Per trovare una IDOR, create due account e confrontateli. Qualsiasi elemento che faccia riferimento a un oggetto tramite un ID è un potenziale candidato.

  • Acquisite una richiesta dall'account A che recupera i dati di A
  • Ripetetela usando la sessione dell'account B, ma l'ID dell'oggetto di A
  • Se B visualizza i dati di A, si tratta di una IDOR

Cercate gli ID negli URL, nei corpi JSON, negli header e persino nei formati base64/UUID.

# Original (account A)
POST /api/profile/update
{ "user_id": 5001, "email": "a@example.com" }

# Tamper: use account B's session, keep A's user_id
# If A's profile changes, broken object-level authorization.

Capire XSS

La Cross-Site Scripting (XSS) consiste nell'inserire JavaScript che viene eseguito nel browser di un altro utente. Esistono tre tipi principali:

  • Reflected — il payload viene restituito nella risposta immediata
  • Stored — il payload viene salvato e inviato ad altri utenti (impatto massimo)
  • Basata sul DOM — il JavaScript lato client inserisce in modo non sicuro l'input dell'attaccante nel DOM

Testare la presenza di XSS

Inserite prima un marcatore univoco per vedere dove e come viene riflesso il vostro input, quindi create un payload adatto al contesto (corpo HTML, attributo o script).

Il contesto determina quale payload permette di uscire dal contesto previsto ed eseguire il codice.

# Probe reflection with a unique canary
?q=xss7391canary

# Basic HTML-context payload
<script>alert(document.domain)</script>

# Attribute breakout
" onmouseover=alert(1) x="

Dimostrare l'impatto di una XSS

Un semplice alert(1) dimostra l'esecuzione, ma i revisori vogliono conoscere l'impatto. Dimostrate cosa potrebbe effettivamente sottrarre o fare un attaccante.

  • Leggere un token CSRF o informazioni sulla sessione accessibili a JavaScript
  • Mostrare document.domain per dimostrare l'origine
  • Per una XSS memorizzata, mostrarne l'esecuzione nell'account di una vittima

Non sottraete mai realmente le sessioni di utenti reali: dimostrate soltanto la capacità.

Capire SSRF nelle applicazioni

Nel contesto dei bug bounty, la SSRF consiste nell'individuare una funzionalità che recupera un URL sotto il vostro controllo. I candidati più probabili sono:

  • URL di webhook e URL di callback
  • Generatori di immagini/PDF che recuperano risorse remote
  • Funzionalità di anteprima degli URL o di espansione dei link
  • Funzionalità di importazione da URL

Indirizzateli verso endpoint interni o di metadati per dimostrare l'impatto.

Confermare una SSRF fuori banda

Quando la risposta non mostra il contenuto recuperato, usate un server fuori banda per confermare che l'obiettivo abbia effettuato una richiesta. Una callback di interazione dimostra una SSRF cieca.

Strumenti come Burp Collaborator o interactsh forniscono un URL univoco che registra gli accessi.

# Give the app your unique OOB URL
POST /api/webhook
{ "callback": "http://abc123.oast.fun/" }

# If abc123.oast.fun logs a DNS/HTTP hit, the server fetched it = SSRF.

Usare un proxy per la ricerca

Tutte e tre le classi di vulnerabilità si individuano intercettando e manomettendo le richieste. Un proxy di intercettazione è lo strumento fondamentale.

  • Burp Suite o OWASP ZAP per acquisire e modificare il traffico
  • Repeater per ripetere e modificare singole richieste
  • Intruder/fuzzer per testare molti ID o payload

Conoscere a fondo il vostro proxy vi sarà più utile di qualsiasi singola tecnica.

Collegare le vulnerabilità per ottenere un impatto maggiore

I compensi più elevati derivano dal concatenamento delle vulnerabilità. Una vulnerabilità di gravità media, combinata con un'altra, può diventare critica.

  • Una SSRF che raggiunge i metadati cloud può portare al furto di credenziali e alla compromissione dell'account
  • Una IDOR che espone token può portare alla compromissione completa dell'account
  • Una XSS memorizzata in un pannello di amministrazione può portare alla compromissione dell'account amministratore

Chiedetevi sempre: con cosa è possibile combinare questa vulnerabilità?

Testare con cautela e nell'ambito previsto

Queste vulnerabilità coinvolgono dati e utenti reali. Agite eticamente:

  • Usate i vostri account di test e non visualizzate dati di utenti reali oltre quanto necessario per dimostrare il problema
  • Evitate payload XSS memorizzati che potrebbero attivarsi per utenti reali; limitateli al vostro account
  • Per le SSRF, non addentratevi nei sistemi interni: dimostrate la funzionalità di base e fermatevi

Dimostrare l'impatto in modo responsabile vi mantiene nell'ambito del safe harbor.

Verifica rapida

Effettuate l'accesso come utente B, ripetete una richiesta usando la sessione di B ma l'ID dell'oggetto dell'utente A e ricevete i dati privati di A. Di quale vulnerabilità si tratta?

Riepilogo: individuare le vulnerabilità comuni

Avete imparato a cercare le tre classi di vulnerabilità di maggior valore.

  • IDOR: confrontare due account, manomettere gli ID degli oggetti e verificare l'applicazione dei controlli di proprietà
  • XSS: verificare la riflessione, adattare il payload al contesto e dimostrare l'impatto reale
  • SSRF: trovare le funzionalità che recuperano URL e confermare fuori banda i casi ciechi
  • Concatenate le vulnerabilità per ottenere un impatto critico (ad esempio, SSRF verso i metadati cloud)
  • Usate un proxy di intercettazione e rimanete nell'ambito previsto

Prossimo argomento: trasformare i risultati in report che ottengono un compenso.

Domande Frequenti

La lezione «Individuazione dei bug comuni» è gratuita?

Sì — il testo completo di «Individuazione dei bug comuni» è 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 Ethical Hacking Academy, passa a CoddyKit PRO. Il corso Ethical Hacking Academy include 4 lezioni in totale.

Cosa imparerò in «Individuazione dei bug comuni»?

IDOR, XSS, SSRF Eserciti Ethical Hacking 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 Ethical Hacking Academy?

Non è richiesta alcuna esperienza precedente. Ethical Hacking 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 «Individuazione dei bug comuni»?

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 Ethical Hacking Academy?

Sì. Ogni lezione Ethical Hacking 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. Scelta degli obiettivi
  2. Ricognizione su larga scala
  3. Individuazione dei bug comuni
  4. Scrivere report eccellenti
← Torna a Ethical Hacking Academy