Finansijske Android aplikacije prepune ranjivosti

White hat hakerka tehnikom obrnutog inženjeringa otkrila niz bezbednosnih propusta kod velikog broja testiranih aplikacija!

Finansijske Android aplikacije prepune ranjivosti

U nedavno sprovedenom istraživanju, testirano je ukupno 30 finansijskih aplikacija tehnikom obrnutog inženjeringa, a na gotovo svima su pronađeni osetljivi podaci u samom kodu. Kada bi do ovih informacija došao maliciozni haker, mogao bi da povrati API ključeve i da pomoću njih napadne backend servere vendora i kompromituje podatke korisnika.

U pitanju su finansijske aplikacije za Android iz 8 privrednih sektora, među kojima su bankarstvo i osiguranje. Radi se o aplikacijama koje pripadaju kompanijama različite veličine, među kojima su i Fortune 100 kompanije.

Mnoga otkrića ovog istraživanja su zabrinjavajuća. Neke finansijske institucije su u kod ubacile privatne ključeve, API ključeve i privatne sertifikate ili ih čuvaju u poddirektorijumima. Kod nekih aplikacija pronađeni su URL-ovi koji se koriste za komunikaciju i koji napadaču daju mogućnost da napadne API i na backend serverima. Pored toga, otkriveno je da 97% testiranih Android aplikacija nema zaštitu binarnog koda. Zbog toga je moguće izvršiti obrnuti inženjering ili dekompilaciju aplikacija, a izvorni kod je izložen analiziranju i može se menjati. Autorka istraživanja nije objavila imena testiranih aplikacija.

Kako izbeći ovakve propuste? Potrebno je da developeri implementiraju mere bezbednosti kao što su application shielding, application binding, repackaging detection, tamper detection, data-at-rest encryption, key protection itd.

Još jedno otkriće koje mora da zabrine javnost je da čak 83% testiranih aplikacija čuva podatke na nebezbedan način, van svoje kontrole. Na primer, u lokal fajl sistemu uređaja ili na eksternom skladištu gde može da se kopira na clipboard, što omogućava deljenje pristupa sa drugim aplikacijama. Dalje, 80% aplikacija koristi slabe algoritme za enkripciju ili nije dobro implementirala jake. To znači da napadači mogu da dekriptuju osetljive podatke, da ih izmene ili ukradu. 70% aplikacija koristi nebezbedni generator nasumičnih brojeva, zbog čega napadači mogu lako da pogode vrednosti i hakuju aplikaciju. Aplikacije za mobilni se oslanjaju na generator nasumičnih brojeva i za funkciju i za enkripciju.

Ono što je zaista zastrašujuće u celoj priči je činjenica da je White Hat hakerki trebalo u proseku 8,5 minuta da hakuje aplikacije i dobije pristup kodu, identifikuje API-je, pročita imena fajlova, pristupi osetljivim podacima itd.

Nedostatak binarne zaštite omogućio je da se otkrije 11 jedinstvenih ranjivosti - nebezbedno čuvanje podataka, nenamerno curenje podataka, ubacivanje malicioznog koda sa strane klijenta, slaba enkripcija, implicitno poverenje svim sertifikatima, izvršenje aktivnosti preko roota, izloženost privatnih ključeva itd.

Izvor: Threat Post