May 04 2009

fatti, non parole (cazzi vostri reprise).

Published by iRev at 4:55 pm under DarkApples,iPhone

Riceviamo e – volentieri – pubblichiamo:

gprace-skull

Come vedete dall’immagine qui sopra – tratta da una versione cracckata di GP Race 1.1, e che ci ha inviato un nostro lettore – qualcuno si è rotto le balle di tutti questi bimbiminkia pezzenti e ha già chiuso i rubinetti.

Abbiamo contattato i ragazzi di Minimal6, gli autori di GP Race, che ci hanno confermato, tra grasse risate, che solo in questo week-end hanno raccolto più di un centinaio di UDID (o DUID che dir si voglia) tra l’altro quasi tutti da IP provenienti dall’Italia.

Ma vediamo in dettaglio cos’è questa BlackList, come viene implementata e soprattutto quali sono le implicazioni che ne derivano dall’utilizzo.

La BlackList nasce da una “Developer Alliance”: per far fronte al dilagare di App cracckate, visto che Apple pur avendo gli strumenti pare decisa ad ignorare la questione, un gruppo di Developer ha deciso di mettere in piedi un sistema di BlackList che, pur rispettando i paletti imposti da Apple nella distribuzione delle App via AppStore, fosse in grado di garantire un sufficiente margine di “non-cracckabilità” delle proprie Applicazioni.

Questo risultato è stato raggiunto implementando un sistema ispirato ad ORBS/RBL, che è un servizio GRATUITO al quale si appoggia larga parte dei Mail Server che permette di avere in tempo reale una lista di IP “cattivi”, ovvero IP dai quali è stato registrato l’invio di SPAM.

In questo caso succede la stessa cosa: se uno è “cattivo”, ovvero ha cracckato o usato un’App cracckata, il sui DUID finisce in questa blacklist, insieme all’App crackata e alla versione dell’App. Questo significa, per fare un esempio pratico, se voi avete cracckato o usato la versione crackata di GP Race, gli autori lo sanno, e, oltre a non erogare il servizio offerto dall’App, se lo scrivono, e in caso voi lo rifacciate ancora con un’altra versione (un’ipotetica 1.2) loro sapranno anche quello, percui se volete “whitelistare” il vostro iPhone dovrete necessariamente comprare l’App, altrimenti il vostro iPhone rimarrà Blacklistato.

Ora ci sono diversi modi in cui questo sistema può essere implementato: uno può vedere se il DUID è blacklistato e anche se non lo è per la propria app, rifiutarsi di erogare il servizio a prescindere, mentre altri potrebbero scegliere di rifiutare di far funzionare l’App solo se il DUID risulta essere blacklistato per App della stesso autore. Insomma, c’è piena libertà di utilizzo da parte dei Developer.

Veniamo alla parte “sugosa”: in pratica l’App – che viene distribuita “monca” – non può funzionare fino a quando non contatta il server al momento dell’installazione o della prima esecuzione. il server ne verifica l’integrità e se è tutto OK, gli passa la parte mancante, che è DIFFERENTE per ogni iPhone, essendo crittografata con una chiave RSA generata dal server e univoca per ogni DUID.

Vediamo cosa è successo con GP Race, sempre per usare con un esempio pratico: il Cracker ha patchato l’APP, si è fatto blacklistare il DUID, e poi, credendo che funzionasse (lui la chiave l’aveva ottenuta, perchè ha PAGATO l’App la prima volta, l’ha distribuita ai bimbiminkia pezzenti, che si sono fatti TUTTI BlackListare.

Ora, perchè questo sistema è “ragionevolmente sicuro” e rende vano qualsiasi tentativo di crack?

1 – intanto il Cracker ora si è fottuto il DUID, percui ormai per cracckarla e testarne il funzionamento o usa un altro iPhone, o ce l’ha al culo, perchè il suo DUID è blacklistato e non funzionerà MAI più.

2 – è il server, e non l’APP che invia la parte mancante dell’APP crittografata con una chiave univoca, percui valida per UN SOLO DUID. In questo modo uno può patchare fino a che gli pare, ma se gli manca una parte di codice ci fà ben poco.

3 – l’utilizzo del DB e il Framework di protezione utilizzano tecniche di “code obfuscation”, e l’implementazione all’interno dell’App è assolutamente discrezionale: ci sono DECINE di metodi di check all’interno dell’App, sono nascosti, e anche a patcharli tutti comunque rimane sempre il problema che senza la parte di programma crittografata con la chiave generata dal server e SUL SERVER non si fà una mazza.

4 – il sistema raccoglie SOLO i DUID che si presentano con l’App Cracckata. Ci sono 5 livelli di check, è virtualmente impossibile che un’App si presenti “male” e che venga dichiarata cracckata (leggasi: IP Blacklistato per errore), e in ogni caso basta contattare l’Autore e si viene whitelistati immediatamente, ovviamente a meno che nel DB non siano segnalati altre App utilizzate a sbafo, percui il famoso “debito regresso” indica proprio questo: se vuoi essere whitelistato devi pagare TUTTE i programmi per i quali sei blacklistato.

5 – evitiamo per cortesia di dire cagate riguardo alla privacy: come ho detto prima SOLO i DUID dei bimbiminkia pezzenti vengono blacklistati. Qualcuno di questi che hanno PALESEMENTE utilizzato un’App pirata, magari da 0.75 €, ha forse intenzione di andare a fare una denuncia per violazione della privacy?

6 – in ogni caso Apple autorizza gli sviluppatori a raccogliere informazioni sui device per fini statistici, e grazie a questo “statisticamente” lo prendi in culo se usi un’APP Cracckata.

7 – c’è chi farnetica dicendo che impedire all’APP di contattare i server con le blacklist e/o fare un programma che giri in background che fornisca un DUID “fake”: siamo sempre punto e a capo. se ti manca il pezzo di codice e la chiave RSA a 1024 bit la cui certification authority è sui server che non vuoi contattare, come pensi di farla funzionare l’App? Specie se poi impedisci all’App di contattare i server che ti erogano il servizio stesso… delirante, oltre che una tecnoputtanata.

8 – il sistema di BlackList è “silente”, e può venire attivato in qualsiasi momento sul server: in questo caso i ragazzi di Minimal6 ci hanno detto che hanno attivato il sistema 10 minuti prima dell’inizio delle gare della 125, così si sono divertiti a guastare la festa a chi voleva scroccargli il servizio. Non possiamo che applaudirli.

Boh, prima o poi doveva succedere che i Developer si incazzassero, no? Apple se ne è fottuta in modo che definire VERGOGNOSO è usare un eufemismo: Apple non solo non ha fatto NULLA per tutelare chi, con i propri investimenti, lavoro, passione e tempo ha contribuito a far diventare AppStore quello che è, ma gli ha messo fin dall’inizio i bastoni tra le ruote, costringendo i Developer a farsi “giustizia” da soli.

Era ora: adesso sapete che, se avete usato IPA Cracckate nell’ultimo mese, con tutta probabilità siete BlackListati, se non lo siete ritenetevi DAVVERO fortunati, e comunque, in ogni caso, finitela di dire “io prendo l’IPA cracckata per provarla, perchè non c’è la versione Trial”, perchè siete pezzenti DUE volte se dite così: se un’App che avete pagato non vi piace o non corrisponde alla descrizione, Apple vi rimborsa TUTTO quello che avete pagato. Stè cazzate è meglio se non le raccontate, perchè ci fate davvero una pessima figura.

iRev, on behalf of DarkApples Italian Hacking Team.

PS: per quelli di iphonehack.forumcommunity.net, ai fini MORALI non cambia nulla se voi recuperare le IPA cracckate e le girate ai vostri utenti invece che cracckarle voi: sempre monnezza siete, e tra l’altro monnezza per un’audience che vi meritate, visto che i vostri utenti manco sanno fare una ricerca su appulo.us

PPS: per i (numerosissimi) Developer che ci hanno richiesto informazioni per implementare il sistema di Blacklist nelle loro App, abbiamo girato le vostre richieste ai ragazzi di Minimal6, che avendo due app su due cracckate sono molto “motivati” e vi risponderanno al più presto con le informazioni necessarie.

PPS: molti sono andati a rivangare le vecchie storie sul Trusted Computing, il Killer Switch di Apple, il fatto che il Dev/Team diceva che un iPhone PWNED è indistinguibile da uno “regolare”, dimostrando che non solo hanno la memoria corta, ma che non vedono al di là del loro stupido livore. E noi intanto ce la ridiamo, perchè ad oggi ancora NESSUNA delle nostre affermazioni è stata smentita.

UPDATED: ci chiedono in tanto come funziona questa storia del rimborso su AppStore: qui http://store.apple.com/Catalog/US/Images/salespolicies.html trovate i dettagli, ma in soldoni funziona così:

usando il tasto “Segnala un problema” o “Report a Problem”, scrivete le ragioni per le quali volete il rimborso: da “ho acquistato per errore” a “l’App fà cagare” vanno bene. Per gli ammeregani il cliente è SACRO. Nel giro di 24 ore vi scriverà un addetto dell’iTunes Store segnalandovi che in 3/5 giorni lavorativi avrete l’accredito dei soldi spesi. Tutti i soldi spesi, fino all’ultimo centesimo.

Percui il prossimo che dice “io uso le IPA solo per provare” si ritenga sputtanato ed etichettato come “ladro bimbominkia pezzente.”

Comments Off

Comments are closed at this time.