Con un bypass del filtro e alcuni numeri esadecimali, i numeri delle carte di credito hackerati sono ancora compatibili con Google

Pubblicato: 2022-03-11

Una parola sull'hacking delle carte di credito

Se mi conosci, o hai letto il mio post precedente, sai che ho lavorato per un'azienda molto interessante prima di entrare in Toptal. In questa società, il nostro fornitore di servizi di pagamento ha elaborato transazioni nell'ordine di $ 500.000 al giorno. Parte del mio lavoro consisteva nel rendere il nostro provider conforme allo standard PCI-DSS, ovvero conforme al Payment Card Industry – Data Security Standard.

È sicuro dire che questo non era un lavoro per i deboli di cuore. A questo punto, sono abbastanza intimo con le carte di credito (CC), l'hacking delle carte di credito e la sicurezza web in generale. Dopotutto, il nostro compito era proteggere i dati dei nostri utenti, per evitare che venissero violati, rubati o utilizzati in modo improprio.

Potresti immaginare la mia sorpresa quando ho visto l'articolo del 2007 di Bennett Haselton su Slashdot: Perché i numeri CC sono ancora così facili da trovare?. In breve, Haselton è stato in grado di trovare i numeri di carta di credito tramite Google, in primo luogo cercando le prime otto cifre di una carta nel formato "nnnn nnnn" e successivamente utilizzando alcune query avanzate basate su intervalli di numeri. Ad esempio, potrebbe utilizzare "4060000000000000..40609999999999999" per trovare tutti i numeri di conto primario (PAN) a 16 cifre di CHASE (le cui carte iniziano tutte con 4060). A proposito: ecco un elenco completo dei numeri ID dell'emittente.

A quel tempo, non ci pensavo molto, poiché Google iniziò immediatamente a filtrare i tipi di query che Bennett stava utilizzando. Quando provavi a cercare su Google un intervallo del genere, Google mostrava una pagina che diceva qualcosa sulla falsariga di "Sei una persona cattiva".

Questa è la risposta di Google a coloro che cercano di capire come trovare i numeri di carta di credito online.

Circa sei mesi fa, mentre ricordavo con un vecchio amico, mi è tornato in mente questo hack del numero di carta di credito. Poco dopo, ho scoperto qualcosa di allarmante. Non molto allarmante, ma sicuramente allarmante, quindi ho avvisato Google e ho aspettato. Dopo un mese senza risposta, li ho avvisati di nuovo senza alcun risultato.

Con una piccola modifica al vecchio trucco di Haselton, sono stato in grado di cercare su Google numeri di carte di credito, numeri di previdenza sociale e qualsiasi altra informazione sensibile di interesse.

Quindi ho avvisato Google e ho aspettato. Dopo un mese senza risposta, li ho avvisati di nuovo senza alcun risultato. Con una piccola modifica al vecchio trucco di Haselton, sono stato in grado di cercare su Google numeri di carte di credito, numeri di previdenza sociale e qualsiasi altra informazione sensibile.

Bennett

Ieri, alcuni miei amici (buhera.blog.hu e _2501) hanno portato alla mia attenzione un post più recente su Slashdot: Numeri di carte di credito ancora compatibili con Google.

L'autore dell'articolo, ancora Bennett Haselton, che ha scritto l'articolo originale nel 2007, afferma che i numeri di carta di credito possono ancora essere cercati su Google. Non è possibile utilizzare l'hack della query dell'intervallo di numeri, ma è comunque possibile farlo. Invece di utilizzare intervalli semplici, è necessario applicare una formattazione specifica alla query. Qualcosa come: “1234 5678” (notare lo spazio al centro). Molti risultati emergono per questa query, ma pochissimi sono di reale interesse. Tra i concorrenti ci sono numeri di telefono, codici postali e simili. Non estremamente allarmante. Ma ecco che arriva la svolta dell'hacking della carta di credito.

La metodologia

Ero curioso di sapere se fosse ancora possibile ottenere i numeri di carta di credito online come avremmo fatto nel 2007. Da buon Ingegnere, di solito mi avvicino alle cose usando un piano ben costruito e intelligente che deve essere perfettamente eseguito con la massima precisione. Se hai provato quel metodo, potresti sapere che può fallire davvero duramente, nel qual caso la tua attenta pianificazione e il tuo sforzo vanno sprecati.

Nell'IT abbiamo la tendenza a intellettualizzare eccessivamente, anche quando non è esattamente giustificato. Ho visto i miei amici e colleghi interrompere completamente le applicazioni utilizzando input apparentemente casuali. Il loro tasso di successo è stato sbalorditivo e lo sforzo che ci hanno messo è stato vicino allo zero. È stato allora che ho imparato che per aprire una porta, a volte devi solo bussare.

L'hacking della carta di credito

Il paragrafo precedente è stato un tentativo abilmente camuffato di farmi sembrare meno idiota quando mostro le mie "capacità di hacking d'élite". Ops.

Innanzitutto, ho provato diversi approcci basati su query di intervallo. Quindi, ho esaminato le query avanzate e praticamente tutto ciò che potresti trovare in un'ora circa. Nessuno di loro ha prodotto risultati significativi.

E poi ho avuto un'idea pazza.

E se ci fosse una mancata corrispondenza tra il motore di filtraggio e il back-end effettivo? E se il messaggio che ho ricevuto da Google ("Sei una persona cattiva") non provenisse dal back-end stesso, ma invece da un motore di filtraggio designato che Google aveva implementato per censurare le query come la mia?

Avrebbe molto senso dal punto di vista architettonico. E bug del genere sono piuttosto comuni: li vediamo sempre in ITSEC, in particolare nelle soluzioni IDS/IPS, ma anche nei software comuni. Esiste una procedura di filtraggio che elabora i dati e li fornisce al back-end solo se ritiene che i dati siano accettabili/non dannosi. Tuttavia, il back-end e il server di filtraggio non analizzano quasi mai l'input esattamente allo stesso modo. Pertanto, un input apparentemente valido può passare attraverso il filtro e devastare il back-end, bypassando di fatto il filtro.

Di solito puoi attivare questo tipo di comportamento fornendo il tuo input in varie codifiche. Ad esempio: invece di usare numeri decimali (0-9), che ne dici di convertirli in esadecimali, ottali o binari? Bene, indovina un po'...

Cerca questo e Google ti dirà che sei una persona cattiva: "40600000000000000..4060999999999999"

Cerca questo e Google sarà felice di obbligare: "0xe6c8c69c9c000..0xe6d753e6ecfff".

L'unica cosa che devi fare è convertire i numeri delle carte di credito da decimali a esadecimali. Questo è tutto.

I risultati includono...

  • Enormi file CSV pieni di informazioni potenzialmente sensibili.

Con questo semplice hack della carta di credito, è in attesa che si verifichi un'importante invasione della privacy.

  • File di registro dell'e-commerce difettosi.

Questi file di registro di e-commerce difettosi semplificano la ricerca della carta di credito.

  • Informazioni sensibili condivise su siti di hacker (e persino Facebook).

Come hackerare le carte di credito è semplice come usare l'esadecimale.

È roba davvero spaventosa.

So che questo bug non ispirerà alcuna ricerca sulla sicurezza, ma il gioco è fatto. Google ha fatto questo boo-boo e ha persino trascurato di rispondermi. Bene, succede. Tuttavia, non invidio gli addetti alla sicurezza del Big G. Devono avere un sacco di cose a cui prestare attenzione. Sto postando su questo numero di carta di credito hack qui perché:

  1. Ha un impatto relativamente basso.
  2. Chiunque sia interessato e motivato lo avrà ormai capito.
  3. Per citare Haselton, se i big non si assumono responsabilità e non agiscono in base a questi exploit, allora “la cosa giusta da fare è fare luce sul problema e insistere affinché lo risolvano il prima possibile”.

Questo trucco può essere utilizzato per cercare numeri di telefono, SSN, TFN e altro. E, come ha scritto Bennett, questi numeri sono molto più difficili da cambiare rispetto alla tua carta di credito, per la quale puoi semplicemente chiamare la tua banca e annullare la carta.

Query di esempio

ATTENZIONE: NON cercare su Google il tuo numero di carta di credito per intero!

Cerchi qualsiasi CC PAN che inizi con 4060: 4060000000000000..4060999999999999 ? 0xe6c8c69c9c000..0xe6d753e6ecfff

Alcuni numeri di telefono ungheresi del provider "Telenor"? Nessun problema: 36200000000..36209999999 ? 0x86db02a00..0x86e48c07f

Cerca i SSN. Per fortuna, questi non restituiscono molti risultati significativi: 100000000..999999999 ? 0x5f5e100..0x3b9ac9ff

Ce ne sono molti, molti di più.

Se trovi qualcosa di molto allarmante, o se sei curioso dell'hacking delle carte di credito, lascialo nei commenti o contattami via e-mail all'indirizzo [email protected] o su Twitter all'indirizzo @synsecblog. Chiamare la polizia di solito è inutile in questi casi, ma potrebbe valere la pena provare. Il commerciante o il fornitore della carta di solito è più desideroso di affrontare il problema.

Dove andare da qui

Ebbene, Google ovviamente deve risolvere questo problema, possibilmente con l'aiuto di grandi giocatori come Visa e Mastercard. In effetti, Haselton fornisce una serie di suggerimenti interessanti nei due articoli collegati sopra.

Quello che devi fare, tuttavia (e perché ho scritto questo post), è spargere la voce. La frode con carta di credito è una grande industria e la semplice consapevolezza può salvarti dal diventare una vittima. Inoltre, se hai un sito di e-commerce o gestisci l'elaborazione di carte di credito, assicurati di essere sicuro. PCI-DSS è una buona linea guida, ma è tutt'altro che perfetta. Inoltre, è sempre una buona idea cercare su Google il tuo sito con la query avanzata "site:mysite.com", cercando numeri sensibili. C'è una possibilità molto, molto sottile che tu possa trovare qualcosa, ma se lo fai, devi agire immediatamente.

Inoltre, un piccolo consiglio amichevole: non dovresti mai fornire i dati della tua carta di credito a nessuno. Il mio consiglio sarebbe di utilizzare PayPal o un servizio simile quando possibile. Puoi controllare questi link per ulteriori informazioni:

  • I consigli di Visa sulla sicurezza delle carte di credito
  • I consigli di Citi per la sicurezza delle carte di credito

E qualche consiglio generale: non scaricare cose che non hai chiesto, non aprire e-mail di spam e ricorda che la tua banca non chiederà mai la tua password.

A proposito: se pensi che nessuno sia così stupido da innamorarsi di queste tecniche di hacking delle carte di credito o da divulgare i dati della propria carta di credito su Internet, dai un'occhiata a @NeedADebitCard.

State al sicuro gente!