Benvenuto su Hackerpunk — Hacking News Live 24h, la fonte in tempo reale per tutte le news di cybersecurity, cybercrime e Deep AI. Aggiorniamo costantemente le nostre notizie 24 ore su 24 con report tecnici, indagini digitali e analisi sugli attacchi più recenti.
Introduzione
Nel mondo della sicurezza informatica, gli attacchi XSS (Cross-Site Scripting) e CSRF (Cross-Site Request Forgery) sono tra le vulnerabilità più comuni e insidiose. Sebbene molti li confondano, questi due attacchi sfruttano punti deboli diversi nelle applicazioni web. In questo articolo, esploreremo come funzionano entrambi, come identificarli e, soprattutto, come prevenirli utilizzando strumenti come Kali Linux e applicando best practice di sviluppo sicuro.Cos’è un attacco XSS?
L'attacco XSS consente a un malintenzionato di iniettare script dannosi all'interno di una pagina web visualizzata da altri utenti. Questi script possono rubare informazioni sensibili, come cookie o credenziali di accesso, o modificare il comportamento del sito. Esempio: Un attaccante inietta un particolare codice JavaScript in un modulo di commento vulnerabile. Quando altri utenti visualizzano il commento, il codice viene eseguito nei loro browser, questa esecuzione permetterebbe di sottrarre per esempio illecitamente le credenziali di autenticazione ma anche altro..Tipologie di XSS
Reflected XSS: Lo script viene eseguito immediatamente con la richiesta HTTP, senza essere salvato nel database. Stored XSS: Lo script malevolo viene salvato nel database e viene eseguito ogni volta che una pagina viene caricata da qualsiasi utente. DOM-based XSS: Lo script viene eseguito direttamente nel contesto del DOM della pagina e quindi nel browser.Cos’è un attacco CSRF?
Il CSRF è un tipo di attacco che induce l’utente autenticato a eseguire un'azione non intenzionale su un'applicazione web in cui è già loggato. L’attaccante forza l’utente a compiere operazioni come trasferimenti di denaro o modifiche a impostazioni di sicurezza, senza il suo consenso. Esempio: Un utente è autenticato in un'applicazione di e-banking online. L'attaccante invia un link malevolo che, una volta cliccato dalla vittima, invia una richiesta per trasferire fondi dal conto della vittima a quello dell'attaccante. Identificazione delle vulnerabilità con Kali Linux Strumenti utili in Kali Linux:- OWASP ZAP o Burp Suite per rilevare vulnerabilità XSS e CSRF.
- XSSer per testare automaticamente gli endpoint XSS vulnerabili.
- Csrf-tool per testare vulnerabilità CSRF.
Passaggi per rilevare XSS:
1. Carica Kali Linux e avvia un proxy come Burp Suite. 2. Naviga sul sito web target attraverso il proxy 127.0.0.1:8080 3. Inietta script JavaScript malevolo in campi di input, come moduli di login o commenti. Esempio di codice XSS da inniettare: <script>alert('XSS');</script> 4. Osserva la risposta nel browser o nel proxy per vedere se il codice viene eseguito, in caso visualizzi un popup co. Scritto "XSS" significa che il modulo è vulnerabile ad una xss reflected. 5. Se viene eseguito, segnala la vulnerabilità al responsabile e suggerisci di sanare il sito.Passaggi per rilevare CSRF:
1. Utilizza OWASP ZAP per scansionare i moduli del sito web e analizzare se le richieste includono token CSRF. 2. Prova a creare una richiesta dannosa in un’altra sessione per vedere se la vulnerabilità può essere sfruttata. Se la richiesta va a buon fine senza un token di protezione, allora il sito è vulnerabile a CSRF.Prevenzione di attacchi XSS
- Validazione e sanitizzazione dell’input
- Escaping: Assicurati che qualsiasi dato inserito dall'utente venga "escaped" prima di essere processato o visualizzato. Questo impedisce che caratteri speciali vengano interpretati come codice.
- Librerie di escaping: Usa librerie sicure come OWASP ESAPI per evitare XSS.
- Content Security Policy (CSP): Implementa una CSP per limitare le fonti di script eseguibili sul sito. Esempio di implementazione di CSP nel file di configurazione di un server: Content-Security-Policy: script-src 'self' https://trusted-scripts.example.com;
- HTTPOnly e Secure Flag sui cookie: Assicurati che i cookie di sessione abbiano l’attributo HTTPOnly, per impedire l’accesso tramite JavaScript.
Prevenzione di attacchi CSRF
- Token CSRF: Genera un token univoco per ogni richiesta sensibile. Questo token dovrebbe essere incluso nel corpo della richiesta o come intestazione e mai salvato nella pagina, Verifica il token su ogni richiesta per autenticare l'utente e prevenire attacchi.
- Verifica dell'origine delle richieste
- Controlla gli header HTTP Referer e Origin per garantire che le richieste provengano dalla tua applicazione e non da un sito esterno.
- Metodi HTTP sicuri: Limita le operazioni sensibili come modifiche o cancellazioni ai metodi HTTP POST (anziché GET) e usa token CSRF per convalidare le richieste.


