mobile application penetration testing tools service providers
Vodič korak po korak za testiranje olovke mobilne aplikacije (s alatima i dobavljačima usluga):
Prije deset godina, zahvaljujući evoluciji tehnologije, svi smo počeli razumjeti IT industriju i to je bilo vrijeme, svi smo upoznali kako i što se može učiniti pomoću računalnih sustava.
Polako je postalo moguće prenositi novac putem interneta putem interneta, umjesto da osobno posjetite banku i čekate u redu za obavljanje transakcije. Zbog takve potražnje sve su banke počele raditi putem interneta.
No, jesmo li se svi od početka osjećali ugodno i osigurano koristeći ovu značajku, odgovor za koji bi većina nas rekla je 'NE'.
Što se tiče novčanih pitanja, svi dobro razmislimo.
Kad je nešto novo pokrenuto, želimo osigurati da je osigurano u svim aspektima, sve web stranice koje danas koristimo prolaze kroz nekoliko slojeva sigurnosnih provjera prije nego što budu izložene javnosti. Sada se trend ponovno mijenja i želimo da se sve dogodi jednim klikom na gumb što je moguće samo putem mobilnih aplikacija.
Kako osiguravate da su sve mobilne aplikacije koje preuzmete iz trgovine za reprodukciju ili iStore sigurne za upotrebu? Svakim preuzimanjem dolazi rizik od zlonamjernih napada. Iz istog razloga i kako bi osigurali da njihova aplikacija bude preferirana u odnosu na druge, programeri aplikacija trebaju osigurati da njihove aplikacije budu uspješno testirane na sigurnosti prije nego što je stvarno objave za preuzimanje.
Ovaj će vas članak upoznati s vrstama mobilnih aplikacija, što se očekuje od testiranja penetracije mobilnih aplikacija, kako se može provesti testiranje, pružateljima usluga koji nude usluge testiranja mobilnih aplikacija i popisom nekih alata koji se mogu koristiti za testiranje.
Što ćete naučiti:
- Mobilne aplikacije i njihove vrste
- Davatelji usluga ispitivanja prodiranja u mobilne aplikacije
- Alati za testiranje prodiranja u mobilne aplikacije
- Nekoliko popularnih lutljivih ranjivih mobilnih aplikacija
- Što biste trebali očekivati od testa?
- Koraci za testiranje penetracije za mobilne aplikacije
- Zaključak
- Preporučena literatura
Mobilne aplikacije i njihove vrste
Prije nego što krenemo duboko kako da test olovke mobilna aplikacija , vrlo je važno osigurati da imate neko predznanje o mobilnim aplikacijama.
Razumijemo različite vrste mobilnih aplikacija.
osiguranje kvalitete i razlika u kontroli kvalitete
# 1) Izvorna mobilna aplikacija
Izvorna aplikacija znači aplikacije stvorene za određenu platformu kao što su iOS ili Android, posebno napisane na određenom programskom jeziku i mogu se instalirati iz odgovarajućih trgovina poput Googleove trgovine za igre ili Appleove trgovine aplikacija. Oni nude najprijatnije korisničko iskustvo i njima se može upravljati jednostavnim klikom na ikonu.
Neka dobra primjeri Native aplikacije su Facebook, Instagram, Angry Birds itd.
Jedini je problem što ove aplikacije ne rade sa svim vrstama uređaja, npr. Ako je aplikacija stvorena za Android, neće raditi na iOS-u i obrnuto. Izvorne aplikacije mogu raditi i bez internetske veze.
# 2) Mobilna aplikacija temeljena na pregledniku / mobilne web aplikacije
Mobilne web aplikacije u osnovi su aplikacije koje se pokreću u pregledniku i neovisne su o uređaju.
Ista se aplikacija može pokrenuti pomoću iOS uređaja ili Android pametnog telefona. Te su aplikacije uglavnom napisane u HTML5. Jednostavno ih je objaviti jer im nije potrebno dopuštenje Googlea ili Applea da bi ih se omogućilo u njihovoj trgovini.
Web aplikacije mogu se izravno preuzeti pomoću gumba za preuzimanje koji je dostupan na njihovim web mjestima. Tipičan primjer bi bile naše web stranice za kupnju poput Flipkarta, Amazona itd.
# 3) Mobilna hibridna aplikacija
To su aplikacije koje su djelomično izvorne, a dijelom strane. Mogu se preuzeti iz trgovina, kao i pokretati u pregledniku.
Prednost razvoja aplikacija ovog tipa je u tome što podržava razvoj više platformi i time smanjuje ukupne troškove razvoja, što znači da omogućuje ponovnu upotrebu iste komponente koda na drugom uređaju. Također, ove se aplikacije mogu brzo razviti.
Uz to, hibridne mobilne aplikacije omogućuju vam da dobijete značajke izvornih i web aplikacija.
Davatelji usluga ispitivanja prodiranja u mobilne aplikacije
Naša preporuka
# 1) Šifra
Šifra jedan je od najboljih pružatelja usluga testiranja olovaka za mobilne aplikacije. Poznata je kao globalna zaštitarska tvrtka koja nudi visoko učinkovite SOC I i SOC II Type 2 certificirane upravljane sigurnosne i savjetodavne usluge.
Zapovjedništvo: Miami, SAD
Osnovan: 2000
Zaposlenici: 300
Prihod: 20 - 50 američkih dolara
Osnovne usluge: Usluge testiranja prodora i etičkog hakiranja, procjene ranjivosti, rizika i procjene, PCI procjene i savjetovanja, osiguranje softverske sigurnosti, praćenje prijetnji itd.
Značajke:
- Pomaže sustavu u obrani od naprednih prijetnji dok istovremeno upravlja rizicima.
- Cipher nudi učinkovita i inovativna rješenja koja osiguravaju usklađenost sustava.
- Pruža vlasničke i specijalizirane sigurnosne usluge svim pridruženim organizacijama.
Malo drugih pružatelja usluga:
Alati za testiranje prodiranja u mobilne aplikacije
- Core Impact Pro (Android, iOS i Windows)
- zANTI (Android)
- Analizator (iOS)
- DVIA (iOS)
Ostali alati:
- Skener priključaka (Android)
- Fing (Android i iOS)
- DroidSheep (Android)
- Presretač-NG (Android)
- Nessus (Android)
- Droid SQLi (Android)
- Orweb (Android)
Nekoliko popularnih lutljivih ranjivih mobilnih aplikacija
Općenito, postoje neke dobro poznate ranjive mobilne aplikacije koje su stvorene kako bi korisnicima dale ideju o mobilnom testiranju. Ove aplikacije imaju ranjivosti koje namjerno pomažu korisnicima / testerima da vježbaju i poboljšaju svoje znanje o testiranju olovke.
Možete se pozvati na iMAS, GoatDroid, DVIA, MobiSec:
Što biste trebali očekivati od testa?
Razlog testiranja je otkriti što više problema i osigurati pronalaženje problema prije nego što to stvarno utječe na krajnje korisnike. Glavni razlog za problem s mobilnom sigurnošću je taj što programeri žele stvoriti korisnije aplikacije od zaštićenih aplikacija te postoje šanse za nedostatak sigurnosne svijesti tijekom razvoja aplikacija.
U ovom odjeljku provest ću vas kroz neke ranjivosti / sigurnosne nedostatke na koje biste trebali paziti kao dio testiranja.
Uobičajene sigurnosne pogreške koje treba potražiti:
1) Format za pohranu podataka :Sve ovisi o formatu u kojem se podaci pohranjuju. Bilo u običnom tekstu ili drugim formatima. Za Npr ., Android pohranjuje korisničko ime i lozinku u običnom tekstu, što ga pak čini ranjivijim.
2) Pohranjeni osjetljivi podaci :Ponekad programeri lozinke s tvrdim kodom ili pohranjuju osjetljive podatke koji se lako mogu ugroziti.
najbolji besplatni softver za baze podataka za Windows
3) Loše metode kodiranja: Korištenje otvorene SSL biblioteke koja je ranjiva na FREAK napad jedna je od stvari koje treba provjeriti.
4) Šifriranje podataka: Važno je osigurati da se prijenos podataka vrši na siguran način, a pohranjeni podaci su šifrirani.
5) Slabo stvaranje lozinke: Aplikacije bi trebale imati mehanizam za provjeru snage lozinke. Slabe lozinke uvijek su ranjive na napade.
6) Sinkronizacija podataka: Prijenos podataka ili sinkronizacija podataka treba obaviti sigurnom metodom. Način na koji se podaci prenose ili sinkroniziraju s oblakom može dovesti do napada, a time i do gubitka podataka.
Testiranje mobilne aplikacije i dalje ostaje izazov u usporedbi s web testiranjem jer su mobilne aplikacije prilično nova na tržištu i nemamo na raspolaganju nekoliko skenera kao na webu, a mi još uvijek stvaramo varalice ili smišljamo načine za skeniranje i imaju sigurnije mobilne aplikacije stvorene za krajnje korisnike.
Koraci za testiranje penetracije za mobilne aplikacije
Postoje određeni koraci uključeni u testiranje olovke za mobilne aplikacije.
Oni su:
# 1) Testiranje postavljanja okruženja
Postavljanje testnog okruženja proces je za sebe i može biti zasebna tema za čitanje :)
Ovdje nisam spomenuo mnogo detalja o postavljanju testnog okruženja, jer će se razlikovati ovisno o testiranju. Upravo sam ga ovdje uključio jer nisam želio u potpunosti propustiti ovaj korak.
Neka testiranja mogu se izvesti na stvarnom uređaju, dok se neka mogu obaviti na emulatorima. Također, razlikuje se ovisno o tome koju platformu planiramo testirati, za Android aplikacije možda ćemo trebati instalirati SDK-ove, a za iOS će nam trebati jailbreaking.
# 2) Otkrivanje / Razumijevanje aplikacija
Svaka će mobilna aplikacija raditi drugačije, pa bi prvi korak u testiranju trebao biti otkrivanje ili saznavanje više informacija o aplikaciji koja se testira. To bi također trebalo uključivati utvrđivanje načina povezivanja aplikacije s OS-om i pozadinskim poslužiteljem.
To bi trebalo uključivati provjeru korištenih knjižnica, bolje razumijevanje platforme i otkrivanje je li aplikacija izvornog / web / hibridnog tipa. Ovaj se korak može nazvati i Korak prikupljanja informacija .
# 3) Analiza / procjena aplikacije
Kao dio ovog koraka instalirajte aplikaciju na mobilni uređaj i napravite snimku datotečnog sustava i registra prije i nakon instalacije.
Analizirajte dostupne informacije kako biste identificirali područja slabosti i koja se mogu iskoristiti, poput razumijevanja kako se čuvaju osjetljivi podaci, kako se podaci prenose, kako se odvija interakcija s trećom stranom itd.
# 4) Obrnuti inženjering
To će biti potrebno ako ispitivač nema izvorni kod. Pregledi koda planirat će se kako bi se shvatilo kako aplikacija interno funkcionira. Namjera ovoga je traženje ranjivosti.
# 5) Presretanje prometa
U ovom koraku konfigurirajte uređaj za usmjeravanje putem proxyja, što bi zauzvrat trebalo pomoći u presretanju prometa i otkrivanju nedostataka poput problema s ubrizgavanjem ili autorizacijom.
# 6) Eksploatacija
Nakon završetka analize i proxyja može se izvršiti eksploatacija tamo gdje se ponašate poput hakera, simulirate napade i pokušajte ugroziti sustav.
Iskorištavajte sustav i izvodite zlonamjerne aktivnosti.
# 7) Izvještavanje
Gornji korak činio bi glavni korak ispitivanja, pa bi posljednji korak trebao biti sastavljanje izvještaja u kojem se spominju svi nalazi. Dobro izvješće trebalo bi se sastojati od pojedinosti svih pronađenih ranjivosti, zajedno s rezultatom procjene poslovnog i tehničkog rizika.
Još jedna važna točka koju možemo spomenuti je preporuka za popravak.
Zaključak
Nadam se da ste svi uživali čitajući ovaj članak o testiranju olovaka za mobilne aplikacije. Po mom mišljenju, testiranje mobilnosti još uvijek je područje koje nije u potpunosti istraženo.
Međutim, možemo smatrati da je ovo unijelo promjenu i pružiti nam priliku da preispitamo svoje mogućnosti i počnemo razmišljati izvan okvira i drugačije od našeg tradicionalnog pristupa testiranju. Programeri ulažu svoju kreativnost i smišljaju različite varijacije aplikacija, pa čak i mi kao testeri imamo još puno posla!
Nadam se da biste dobili sjajan uvid u alate za testiranje prodiranja u mobilne aplikacije i pružatelje usluga !!
Preporučena literatura
- Testiranje performansi u oblaku: davatelji usluga za testiranje opterećenja u oblaku
- TOP 10 tvrtki kojima se upravlja s ispitnim uslugama 2021
- Vodič za početnike za ispitivanje prodora web aplikacija
- Vodič za testiranje izvedbe mobilne aplikacije
- Testiranje mobilnih aplikacija zasnovanih na oblaku: cjelovit pregled
- 10 najboljih tvrtki koje pružaju usluge mobilnog testiranja
- Najbolji alati za testiranje softvera 2021. (Alati za automatizaciju ispitivanja kvalitete)
- Razlika između testiranja radne površine, klijentskog poslužitelja i web testiranja