.. | ||
drozer-tutorial | ||
frida-tutorial | ||
adb-commands.md | ||
android-applications-basics.md | ||
android-task-hijacking.md | ||
apk-decompilers.md | ||
avd-android-virtual-device.md | ||
bypass-biometric-authentication-android.md | ||
content-protocol.md | ||
exploiting-a-debuggeable-applciation.md | ||
google-ctf-2018-shall-we-play-a-game.md | ||
install-burp-certificate.md | ||
intent-injection.md | ||
make-apk-accept-ca-certificate.md | ||
manual-deobfuscation.md | ||
react-native-application.md | ||
README.md | ||
reversing-native-libraries.md | ||
smali-changes.md | ||
spoofing-your-location-in-play-store.md | ||
tapjacking.md | ||
webview-attacks.md |
Android Aplikacije Pentesting
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!
Drugi načini podrške HackTricks-u:
- Ako želite da vidite vašu kompaniju reklamiranu na HackTricks-u ili preuzmete HackTricks u PDF formatu Pogledajte SUBSCRIPTION PLANS!
- Nabavite zvanični PEASS & HackTricks swag
- Otkrijte The PEASS Family, našu kolekciju ekskluzivnih NFT-ova
- Pridružite se 💬 Discord grupi ili telegram grupi ili nas pratite na Twitter-u 🐦 @carlospolopm.
- Podelite svoje hakovanje trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Pridružite se HackenProof Discord serveru kako biste komunicirali sa iskusnim hakerima i lovcima na bagove!
Hakerski uvidi
Uključite se u sadržaj koji istražuje uzbuđenje i izazove hakovanja
Hakerske vesti u realnom vremenu
Budite u toku sa brzim svetom hakovanja kroz vesti i uvide u realnom vremenu
Najnovije objave
Ostanite informisani o najnovijim pokretanjima nagrada za pronalaženje bagova i važnim ažuriranjima platforme
Pridružite nam se na Discord-u i počnite da sarađujete sa vrhunskim hakerima danas!
Osnove Android Aplikacija
Visoko se preporučuje da počnete čitati ovu stranicu kako biste saznali o najvažnijim delovima vezanim za Android bezbednost i najopasnijim komponentama u Android aplikaciji:
{% content-ref url="android-applications-basics.md" %} android-applications-basics.md {% endcontent-ref %}
ADB (Android Debug Bridge)
Ovo je glavni alat koji vam je potreban za povezivanje sa Android uređajem (emuliranim ili fizičkim).
ADB omogućava kontrolu uređaja preko USB-a ili Mreže sa računara. Ova alatka omogućava kopiranje fajlova u oba smera, instalaciju i deinstalaciju aplikacija, izvršavanje shell komandi, bekapovanje podataka, čitanje logova, među ostalim funkcijama.
Pogledajte sledeću listu ADB Komandi kako biste naučili kako koristiti adb.
Smali
Ponekad je interesantno izmeniti kod aplikacije kako biste pristupili skrivenim informacijama (možda dobro obfuskirane lozinke ili zastavice). Zatim, može biti interesantno dekompajlirati apk, izmeniti kod i rekompajlirati ga.
U ovom tutorijalu možete naučiti kako dekompajlirati APK, izmeniti Smali kod i rekompajlirati APK sa novom funkcionalnošću. Ovo može biti veoma korisno kao alternativa za nekoliko testova tokom dinamičke analize koji će biti predstavljeni. Zatim, uvek imajte na umu ovu mogućnost.
Ostali interesantni trikovi
- Lažiranje vaše lokacije u Play Store-u
- Preuzmite APK-ove: https://apps.evozi.com/apk-downloader/, https://apkpure.com/es/, https://www.apkmirror.com/, https://apkcombo.com/es-es/apk-downloader/
- Izvucite APK sa uređaja:
adb shell pm list packages
com.android.insecurebankv2
adb shell pm path com.android.insecurebankv2
package:/data/app/com.android.insecurebankv2-Jnf8pNgwy3QA_U5f-n_4jQ==/base.apk
adb pull /data/app/com.android.insecurebankv2- Jnf8pNgwy3QA_U5f-n_4jQ==/base.apk
Statička analiza
Prvo, za analizu APK datoteke trebali biste pogledati Java kod koristeći dekompajler.
Molimo, pročitajte ovdje kako biste pronašli informacije o dostupnim dekompajlerima.
Traženje zanimljivih informacija
Samo pogledom na stringove APK datoteke možete tražiti lozinke, URL-ove (https://github.com/ndelphit/apkurlgrep), API ključeve, enkripciju, Bluetooth UUID-ove, tokene i bilo što zanimljivo... čak tražite i stražnje ulazne vrata za izvršavanje koda ili stražnje ulazne vrata za autentifikaciju (unaprijed zadane administratorske vjerodajnice za aplikaciju).
Firebase
Posebno obratite pažnju na Firebase URL-ove i provjerite je li loše konfiguriran. Više informacija o tome što je Firebase i kako ga iskoristiti ovdje.
Osnovno razumijevanje aplikacije - Manifest.xml, strings.xml
Pregled Manifest.xml i strings.xml datoteka aplikacije može otkriti potencijalne sigurnosne ranjivosti. Do ovih datoteka može se pristupiti pomoću dekompajlera ili preimenovanjem ekstenzije APK datoteke u .zip i zatim raspakiranjem.
Ranjivosti identificirane iz Manifest.xml uključuju:
-
Aplikacije u debug načinu: Aplikacije postavljene kao debuggable (
debuggable="true"
) u Manifest.xml datoteci predstavljaju rizik jer omogućuju veze koje mogu dovesti do iskorištavanja. Za daljnje razumijevanje kako iskoristiti aplikacije u debug načinu, pogledajte vodič o pronalaženju i iskorištavanju aplikacija u debug načinu na uređaju. -
Postavke sigurnosne kopije: Atribut
android:allowBackup="false"
treba biti eksplicitno postavljen za aplikacije koje se bave osjetljivim informacijama kako bi se spriječilo neovlašteno sigurnosno kopiranje podataka putem adb-a, posebno kada je omogućeno USB ispravljanje pogrešaka. -
Sigurnost mreže: Prilagođene konfiguracije sigurnosti mreže (
android:networkSecurityConfig="@xml/network_security_config"
) u res/xml/ mogu specificirati sigurnosne pojedinosti poput certifikatnih pinova i postavki HTTP prometa. Primjer je dopuštanje HTTP prometa za određene domene. -
Izložene aktivnosti i usluge: Identifikacija izloženih aktivnosti i usluga u manifestu može ukazivati na komponente koje mogu biti zloupotrijebljene. Daljnja analiza tijekom dinamičkog testiranja može otkriti kako iskoristiti ove komponente.
-
Provajderi sadržaja i FileProvideri: Izloženi provajderi sadržaja mogu omogućiti neovlašten pristup ili izmjenu podataka. Također treba provjeriti konfiguraciju FileProvidera.
-
Broadcast prijemnici i URL sheme: Ove komponente mogu se iskoristiti za iskorištavanje, posebno obratite pažnju na upravljanje URL shemama za ranjivosti unosa.
-
SDK verzije: Atributi
minSdkVersion
,targetSDKVersion
imaxSdkVersion
ukazuju na podržane verzije Androida, naglašavajući važnost ne podržavanja zastarjelih, ranjivih verzija Androida iz sigurnosnih razloga.
Iz strings.xml datoteke mogu se otkriti osjetljive informacije poput API ključeva, prilagođenih shema i drugih bilješki razvijatelja, što naglašava potrebu za pažljivim pregledom ovih resursa.
Tapjacking
Tapjacking je napad u kojem se zlonamjerna aplikacija pokreće i pozicionira iznad aplikacije žrtve. Kada vidljivo prekrije aplikaciju žrtve, njen korisnički sučelje je dizajnirano na način da prevari korisnika da s njom interagira, dok prenosi interakciju na aplikaciju žrtve.
U suštini, zaslijepljuje korisnika da zna da zapravo izvršava radnje na aplikaciji žrtve.
Pronađite više informacija u:
{% content-ref url="tapjacking.md" %} tapjacking.md {% endcontent-ref %}
Preuzimanje zadatka
Aktivnost s postavljenim launchMode
na singleTask
bez definirane taskAffinity
ranjiva je na preuzimanje zadatka. To znači da se aplikacija može instalirati i ako se pokrene prije prave aplikacije, može preuzeti zadatak prave aplikacije (tako da će korisnik interagirati s zlonamjernom aplikacijom misleći da koristi pravu).
Više informacija u:
{% content-ref url="android-task-hijacking.md" %} android-task-hijacking.md {% endcontent-ref %}
Nesigurno pohranjivanje podataka
Interna pohrana
U Androidu, datoteke pohranjene u internoj pohrani dizajnirane su da budu dostupne isključivo od strane aplikacije koja ih je stvorila. Ova sigurnosna mjera provodi se putem Android operativnog sustava i općenito je dovoljna za sigurnosne potrebe većine aplikacija. Međutim, razvijatelji ponekad koriste načine poput MODE_WORLD_READABLE
i MODE_WORLD_WRITABLE
kako bi omogućili dijeljenje datoteka između različitih aplikacija. Ipak, ovi načini ne ograničavaju pristup tim datotekama drugim aplikacijama, uključujući potencijalno zlonamjerne.
- Statička analiza:
- Provjerite je li upotreba
MODE_WORLD_READABLE
iMODE_WORLD_WRITABLE
pažljivo pregledana. Ovi načini mogu potencijalno izložiti datoteke neželjenom ili neovlaštenom pristupu.
- Dinamička analiza:
- Provjerite dozvole postavljene na datoteke koje je aplikacija stvorila. Posebno provjerite jesu li neke datoteke postavljene da budu čitljive ili pisive svugdje. To može predstavljati značajan sigurnosni rizik jer bi to omogućilo bilo kojoj aplikaciji instaliranoj na uređaju, bez obzira na njezinu svrhu ili podrijetlo, da čita ili mijenja te datoteke.
Vanjska pohrana
Kada se radi s datotekama na vanjskoj pohrani, poput SD kartica, treba poduzeti određene mjere opreza:
- Dostupnost:
- Datoteke na vanjskoj pohrani su globalno čitljive i pisive. To znači da bilo koja aplikacija ili korisnik može pristupiti tim datotekama.
- Sigurnosne brige:
- S obzirom na jednostavan pristup, savjetuje se ne pohranjivati osjetljive informacije na vanjsku pohranu.
- Vanjska pohrana može se ukloniti ili pristupiti bilo kojoj aplikaciji, što je manje sigurno.
- Obrada podataka s vanjske pohrane:
- Uvijek provjeravajte valjanost unosa podataka koji se dohvaćaju s vanjske pohrane. To je ključno jer podaci dolaze iz nepouzdanih izvora.
- Spremanje izvršnih datoteka ili klasnih datoteka na vanjsku pohranu za dinamičko učitavanje snažno se ne preporučuje.
- Ako vaša aplikacija mora dohvaćati izvršne datoteke s vanjske pohrane, provjerite jesu li te datoteke potpisane i kriptografski provjerene prije
SSLSocketFactory sf = new cc(trustStore);
sf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
Dobar način da testirate ovo je da pokušate da uhvatite saobraćaj koristeći neki proxy kao što je Burp, bez autorizacije Burp CA unutar uređaja. Takođe, možete generisati sertifikat za drugi naziv hosta i koristiti ga.
Slomljena kriptografija
Loši procesi upravljanja ključevima
Neki programeri čuvaju osetljive podatke u lokalnom skladištu i šifruju ih ključem koji je unapred definisan/predvidljiv u kodu. Ovo ne bi trebalo raditi jer neko ko vrši reverzno inženjerstvo može izvući poverljive informacije.
Korišćenje nesigurnih i/ili zastarelih algoritama
Programeri ne bi trebali koristiti zastarele algoritme za izvršavanje provere autorizacije, skladištenje ili slanje podataka. Neki od ovih algoritama su: RC4, MD4, MD5, SHA1... Ako se koriste heševi za skladištenje lozinki, na primer, treba koristiti heševe koji su otporni na napade brute force uz upotrebu soli.
Ostale provere
- Preporučuje se obfuskacija APK datoteke kako bi se otežalo reverzno inženjerstvo napadačima.
- Ako je aplikacija osetljiva (kao što su bankovne aplikacije), trebalo bi da izvrši sopstvene provere da vidi da li je mobilni uređaj rutovan i da deluje u skladu sa tim.
- Ako je aplikacija osetljiva (kao što su bankovne aplikacije), trebalo bi da proveri da li se koristi emulator.
- Ako je aplikacija osetljiva (kao što su bankovne aplikacije), trebalo bi da proveri svoju celovitost pre izvršavanja kako bi se utvrdilo da li je izmenjena.
- Koristite APKiD da biste proverili koji je kompajler/paker/obfuskator korišćen za izgradnju APK datoteke.
React Native aplikacija
Pročitajte sledeću stranicu da biste saznali kako lako pristupiti JavaScript kodu React aplikacija:
{% content-ref url="react-native-application.md" %} react-native-application.md {% endcontent-ref %}
Xamarin aplikacije
Pročitajte sledeću stranicu da biste saznali kako lako pristupiti C# kodu Xamarin aplikacija:
{% content-ref url="../xamarin-apps.md" %} xamarin-apps.md {% endcontent-ref %}
Superpacked aplikacije
Prema ovom blog postu, superpacked je meta algoritam koji komprimuje sadržaj aplikacije u jednu datoteku. Blog govori o mogućnosti kreiranja aplikacije koja dekompresuje ovakve vrste aplikacija... i bržem načinu koji uključuje izvršavanje aplikacije i prikupljanje dekompresovanih datoteka iz fajl sistema.
Automatizovana statička analiza koda
Alat mariana-trench je sposoban da pronađe ranjivosti skeniranjem koda aplikacije. Ovaj alat sadrži niz poznatih izvora (koji alatu pokazuju mesta gde je ulaz kontrolisan od strane korisnika), izvorišta (koja alatu pokazuju opasna mesta gde zlonamerni unos korisnika može izazvati štetu) i pravila. Ova pravila ukazuju na kombinaciju izvora-izvorišta koja ukazuje na ranjivost.
Na osnovu ovog znanja, mariana-trench će pregledati kod i pronaći moguće ranjivosti.
Procureli tajni podaci
Aplikacija može sadržati tajne podatke (API ključeve, lozinke, skrivene URL-ove, poddomene...) unutar sebe koje biste mogli otkriti. Možete koristiti alat kao što je https://github.com/dwisiswant0/apkleaks
Zaobilaženje biometrijske autentifikacije
{% content-ref url="bypass-biometric-authentication-android.md" %} bypass-biometric-authentication-android.md {% endcontent-ref %}
Ostale interesantne funkcije
- Izvršavanje koda:
Runtime.exec(), ProcessBuilder(), native code:system()
- Slanje SMS poruka:
sendTextMessage, sendMultipartTestMessage
- Nativne funkcije deklarisane kao
native
:public native, System.loadLibrary, System.load
- Pročitajte ovo da biste naučili kako da reverzujete nativne funkcije
Ostali trikovi
{% content-ref url="content-protocol.md" %} content-protocol.md {% endcontent-ref %}
Pridružite se HackenProof Discord serveru kako biste komunicirali sa iskusnim hakerima i lovcima na bagove!
Hacking Insights
Uključite se u sadržaj koji istražuje uzbuđenje i izazove hakovanja
Vesti o hakovanju u realnom vremenu
Budite u toku sa brzim svetom hakovanja kroz vesti i uvide u realnom vremenu
Najnovije objave
Budite informisani o najnovijim pokretanjima bagova i važnim ažuriranjima platforme
Pridružite nam se na Discordu i počnite da sarađujete sa vrhunskim hakerima danas!
Dinamička analiza
Prvo, trebate okruženje u kojem možete instalirati aplikaciju i sve potrebne alate (Burp CA sertifikat, Drozer i Frida). Stoga, preporučuje se korišćenje rutiranog uređaja (emuliranog ili ne).
Online dinamička analiza
Možete kreirati besplatan nalog na: https://appetize.io/. Ova platforma vam omogućava da uploadujete i izvršite APK datoteke, pa je korisna za praćenje ponašanja APK datoteke.
Čak možete videti logove vaše aplikacije na vebu i povezati se preko adb.
Zahvaljujući ADB vezi, možete koristiti Drozer i Frida unutar emulatora.
Lokalna dinamička analiza
Korišćenje emulatora
- Android Studio (Možete kreirati x86 i arm uređaje, a prema ovom najnovijem x86 verzije podržavaju ARM biblioteke bez potrebe za sporim ARM emulatorom).
- Naučite kako ga podesiti na ovoj stranici:
{% content-ref url="avd-android-virtual-device.md" %} avd-android-virtual-device.md {% endcontent-ref %}
- Genymotion (Besplatna verzija: Personal Edition, trebate kreirati nalog. Preporučuje se preuzimanje verzije SA VirtualBoxom da biste izbegli moguće greške.)
- Nox (Besplatno, ali ne podržava Fridu ili Drozer).
{% hint style="info" %} Prilikom kreiranja novog emulatora na bilo kojoj platformi, zapamtite da će emulator sporije raditi što je veći ekran. Stoga odaberite manje ekrane ako je moguće. {% endhint %}
Da biste instalirali Google usluge (poput AppStore-a) u Genymotionu, trebate kliknuti na crveno označeno dugme na sledećoj slici:
Koristite fizički uređaj
Potrebno je aktivirati opcije za debugiranje, a bilo bi dobro ako ga možete rootovati:
- Postavke.
- (Od Android 8.0) Odaberite Sistem.
- Odaberite O telefonu.
- Pritisnite Broj izgradnje 7 puta.
- Vratite se nazad i pronaći ćete Opcije za razvoj.
Nakon što ste instalirali aplikaciju, prva stvar koju trebate uraditi je da je isprobate i istražite šta radi, kako radi i da se s njom osjećate ugodno.
Predlažem da izvršite ovu početnu dinamičku analizu koristeći MobSF dinamičku analizu + pidcat, tako da ćemo moći saznati kako aplikacija radi dok MobSF snima mnogo zanimljivih podataka koje možete kasnije pregledati.
Neželjeno curenje podataka
Logovanje
Razvojni programeri trebaju biti oprezni prilikom javnog izlaganja informacija za debugiranje, jer to može dovesti do curenja osjetljivih podataka. Preporučuje se korištenje alata pidcat i adb logcat
za praćenje logova aplikacije kako bi se identifikovali i zaštitili osjetljivi podaci. Pidcat je preferiran zbog svoje jednostavnosti upotrebe i čitljivosti.
{% hint style="warning" %}
Imajte na umu da od kasnijih verzija Androida 4.0, aplikacije mogu pristupiti samo svojim vlastitim logovima. Dakle, aplikacije ne mogu pristupiti logovima drugih aplikacija.
U svakom slučaju, i dalje se preporučuje ne logovati osjetljive informacije.
{% endhint %}
Keširanje kopiranja/lepljenja između aplikacija
Android-ov okvir zasnovan na clipboard-u omogućava funkcionalnost kopiranja i lepljenja u aplikacijama, ali predstavlja rizik jer druge aplikacije mogu pristupiti clipboard-u, potencijalno otkrivajući osjetljive podatke. Važno je onemogućiti funkcije kopiranja/lepljenja za osjetljive dijelove aplikacije, poput podataka o kreditnim karticama, kako bi se spriječilo curenje podataka.
Logovi o rušenju aplikacije
Ako se aplikacija ruši i snima logove, ti logovi mogu pomoći napadačima, posebno kada se aplikacija ne može reverzno inženjerisati. Da biste smanjili ovaj rizik, izbjegavajte logovanje prilikom rušenja, a ako logovi moraju biti preneseni preko mreže, pobrinite se da se šalju putem SSL kanala radi sigurnosti.
Kao pentester, pokušajte pogledati ove logove.
Podaci o analitici poslati trećim stranama
Aplikacije često integrišu usluge poput Google Adsense-a, što može nenamjerno procuriti osjetljive podatke zbog nepravilne implementacije od strane programera. Da biste identifikovali potencijalno curenje podataka, preporučuje se presretanje saobraćaja aplikacije i provjera da li se šalju osjetljive informacije trećim stranama.
SQLite baze podataka
Većina aplikacija će koristiti interne SQLite baze podataka za čuvanje informacija. Tokom pentesta, pogledajte kreirane baze podataka, imena tabela i kolona i sve podatke sačuvane jer biste mogli pronaći osjetljive informacije (što bi predstavljalo ranjivost).
Baze podataka trebaju se nalaziti u /data/data/naziv.paketa/baze
kao što je /data/data/com.mwr.example.sieve/baze
Ako baza podataka čuva povjerljive informacije i enkriptovana je, ali možete pronaći lozinku unutar aplikacije, to i dalje predstavlja ranjivost.
Nabrajajte tabele koristeći .tables
i nabrajajte kolone tabela koristeći .schema <ime_tabele>
Drozer (Exploit aktivnosti, pružatelja sadržaja i usluga)
Iz Drozer Dokumentacije: Drozer vam omogućava da preuzmete ulogu Android aplikacije i da komunicirate s drugim aplikacijama. Može raditi sve što i instalirana aplikacija može, kao što je korištenje Android-ovog mehanizma za međuprocesnu komunikaciju (IPC) i interakcija s osnovnim operativnim sistemom.
Drozer je koristan alat za eksploataciju izvezenih aktivnosti, izvezenih usluga i pružatelja sadržaja, kako ćete naučiti u narednim sekcijama.
Eksploatacija izvezenih aktivnosti
Pročitajte ovo ako želite osvježiti šta je Android aktivnost.
Takođe zapamtite da kod aktivnosti počinje u metodi onCreate
.
Bypass autorizacije
Kada je aktivnost izvezena, možete je pozvati sa vanjske aplikacije. Dakle, ako je aktivnost sa osjetljivim informacijama izvezena, mogli biste zaobići mehanizme autentifikacije kako biste joj pristupili.
Saznajte kako eksploatisati izvezene aktivnosti pomoću Drozera.
Takođe možete pokrenuti izvezenu aktivnost putem adb-a:
- PackageName je com.example.demo
- Izvezeno ime aktivnosti je com.example.test.MainActivity
adb shell am start -n com.example.demo/com.example.test.MainActivity
NAPOMENA: MobSF će otkriti kao zlonamjernu upotrebu singleTask/singleInstance kao android:launchMode
u aktivnosti, ali zbog ovoga, očigledno je da je ovo opasno samo na starim verzijama (API verzije < 21).
{% hint style="info" %} Imajte na umu da zaobilaženje autorizacije nije uvijek ranjivost, to bi zavisilo o tome kako zaobilaženje radi i koje informacije su izložene. {% endhint %}
Curenje osjetljivih informacija
Aktivnosti također mogu vratiti rezultate. Ako uspijete pronaći izloženu i nezaštićenu aktivnost koja poziva metodu setResult
i vraća osjetljive informacije, to je curenje osjetljivih informacija.
Tapjacking
Ako se tapjacking ne spriječi, možete zloupotrijebiti izloženu aktivnost da korisnik izvrši neočekivane radnje. Za više informacija o šta je Tapjacking slijedite link.
Iskorištavanje pružatelja sadržaja - Pristupanje i manipulacija osjetljivim informacijama
Pročitajte ovo ako želite osvježiti šta je pružatelj sadržaja.
Pružatelji sadržaja se uglavnom koriste za dijeljenje podataka. Ako aplikacija ima dostupne pružatelje sadržaja, možda ćete moći izvući osjetljive podatke iz njih. Također je zanimljivo testirati moguće SQL ubrizgavanje i putne traversale jer bi mogli biti ranjivi.
Naučite kako iskoristiti pružatelje sadržaja pomoću Drozera.
Iskorištavanje usluga
Pročitajte ovo ako želite osvježiti šta je usluga.
Zapamtite da se radnje usluge pokreću u metodi onStartCommand
.
Usluga je u osnovi nešto što može primiti podatke, obraditi ih i vratiti (ili ne) odgovor. Zatim, ako aplikacija izvozi neke usluge, trebali biste provjeriti kod da biste razumjeli što radi i testirati je dinamički kako biste izvukli povjerljive informacije, zaobišli mjere autentifikacije...
Naučite kako iskoristiti usluge pomoću Drozera.
Iskorištavanje prijemnika emitiranja
Pročitajte ovo ako želite osvježiti šta je prijemnik emitiranja.
Zapamtite da se radnje prijemnika emitiranja pokreću u metodi onReceive
.
Prijemnik emitiranja će čekati određenu vrstu poruke. Ovisno o tome kako prijemnik obrađuje poruku, može biti ranjiv.
Naučite kako iskoristiti prijemnike emitiranja pomoću Drozera.
Iskorištavanje shema / dubokih veza
Možete ručno tražiti duboke veze koristeći alate poput MobSF-a ili skripte poput ove.
Možete otvoriti deklariranu shemu koristeći adb ili preglednik:
{% code overflow="wrap" %}
adb shell am start -a android.intent.action.VIEW -d "scheme://hostname/path?param=value" [your.package.name]
{% endcode %}
Napomena da možete izostaviti ime paketa i mobilni uređaj će automatski pozvati aplikaciju koja treba otvoriti taj link.
{% code overflow="wrap" %}
<!-- Browser regular link -->
<a href="scheme://hostname/path?param=value">Click me</a>
<!-- fallback in your url you could try the intent url -->
<a href="intent://hostname#Intent;scheme=scheme;package=your.package.name;S.browser_fallback_url=http%3A%2F%2Fwww.example.com;end">with alternative</a>
{% endcode %}
Izvršeni kod
Da biste pronašli kod koji će se izvršiti u aplikaciji, idite na aktivnost koju poziva dubinska veza i potražite funkciju onNewIntent
.
Osetljive informacije
Svaki put kada pronađete dubinsku vezu, proverite da ne prima osetljive podatke (kao što su lozinke) putem URL parametara, jer bilo koja druga aplikacija može preuzeti identitet dubinske veze i ukrasti te podatke!
Parametri u putanji
Takođe morate proveriti da li dubinska veza koristi parametar unutar putanje URL-a kao što je: https://api.example.com/v1/users/{username}
, u tom slučaju možete izazvati putanju pretrage pristupom nečemu poput: example://app/users?username=../../unwanted-endpoint%3fparam=value
.
Imajte na umu da ako pronađete ispravne krajnje tačke unutar aplikacije, možete izazvati Preusmeravanje otvorenih veza (ako se deo putanje koristi kao ime domena), preuzimanje naloga (ako možete izmeniti detalje korisnika bez CSRF tokena i ranjiva krajnja tačka koristi ispravnu metodu) i bilo koju drugu ranjivost. Više informacija o tome ovde.
Još primera
Interesantan izveštaj o otkrivanju grešaka o vezama (/.well-known/assetlinks.json).
Pregled i neuspeh provere sloja transportnog sloja
- Sertifikati se ne uvek pravilno proveravaju u Android aplikacijama. Često se dešava da ove aplikacije ignorišu upozorenja i prihvataju samopotpisane sertifikate ili, u nekim slučajevima, prelaze na korišćenje HTTP veza.
- Pregovori tokom SSL/TLS handshake-a ponekad su slabi, koristeći nesigurne kriptografske algoritme. Ova ranjivost čini vezu podložnom napadima "man-in-the-middle" (MITM), omogućavajući napadačima da dešifruju podatke.
- Curenje privatnih informacija je rizik kada aplikacije koriste sigurne kanale za autentifikaciju, ali zatim komuniciraju preko nesigurnih kanala za druge transakcije. Ovaj pristup ne štiti osetljive podatke, poput sesijskih kolačića ili detalja korisnika, od presretanja od strane zlonamernih entiteta.
Provera sertifikata
Fokusiraćemo se na proveru sertifikata. Integritet serverskog sertifikata mora biti proveren kako bi se poboljšala bezbednost. Ovo je ključno jer nesigurne TLS konfiguracije i prenos osetljivih podataka preko nešifrovanih kanala mogu predstavljati značajne rizike. Za detaljne korake o proveri serverskih sertifikata i rešavanju ranjivosti, ovaj resurs pruža sveobuhvatno uputstvo.
SSL Pinning
SSL Pinning je sigurnosna mera u kojoj aplikacija proverava serverski sertifikat prema poznatoj kopiji koja se čuva unutar same aplikacije. Ova metoda je ključna za sprečavanje napada "man-in-the-middle" (MITM). Snažno se preporučuje implementacija SSL Pinninga za aplikacije koje obrađuju osetljive informacije.
Inspekcija saobraćaja
Da biste pregledali HTTP saobraćaj, neophodno je instalirati sertifikat alata za proxy (npr. Burp). Bez instaliranja ovog sertifikata, šifrovani saobraćaj možda neće biti vidljiv kroz proxy. Uputstvo za instaliranje prilagođenog CA sertifikata možete pronaći ovde.
Aplikacije koje ciljaju API nivo 24 i više zahtevaju izmene u konfiguraciji mrežne sigurnosti kako bi prihvatile CA sertifikat proksija. Ovaj korak je ključan za pregledanje šifrovanog saobraćaja. Uputstva za izmenu konfiguracije mrežne sigurnosti možete pronaći ovde.
Zaobilaženje SSL Pinninga
Kada je implementiran SSL Pinning, neophodno je zaobići ga kako biste pregledali HTTPS saobraćaj. Za ove svrhe dostupne su različite metode:
- Automatski izmenite apk da biste zaobišli SSL Pinning pomoću apk-mitm. Najveća prednost ove opcije je da vam nije potreban root za zaobilaženje SSL Pinninga, ali će biti potrebno da obrišete aplikaciju i ponovo je instalirate, i ovo neće uvek raditi.
- Možete koristiti Frida (opisano u nastavku) da biste zaobišli ovu zaštitu. Ovde imate vodič za korišćenje Burp+Frida+Genymotion: https://spenkk.github.io/bugbounty/Configuring-Frida-with-Burp-and-GenyMotion-to-bypass-SSL-Pinning/
- Takođe možete pokušati automatski zaobići SSL Pinning korišćenjem objection:
objection --gadget com.package.app explore --startup-command "android sslpinning disable"
- Takođe možete pokušati automatski zaobići SSL Pinning korišćenjem MobSF dinamičke analize (objašnjeno u nastavku)
- Ako i dalje mislite da postoji neki saobraćaj koji ne snimate, možete pokušati da prosledite saobraćaj burp-u korišćenjem iptables. Pročitajte ovaj blog: https://infosecwriteups.com/bypass-ssl-pinning-with-ip-forwarding-iptables-568171b52b62
Pretraga uobičajenih ranjivosti veb aplikacija
Važno je takođe pretraživati uobičajene ranjivosti veb aplikacija unutar same aplikacije. Detaljne informacije o identifikaciji i otklanjanju ovih ranjivosti su van opsega ovog sažetka, ali se detaljno obrađuju drugde.
Frida
Frida je alat za dinamičku instrumentaciju namenjen programerima, inženjerima za reverzno inženjerstvo i istraživačima bezbednosti.
Možete pristupiti pokrenutoj aplikaciji i povezati se sa metodama tokom izvršavanja kako biste promenili ponašanje, vrednosti, izvukli vrednosti, izvršili drugačiji kod...
Ako želite da testirate Android aplikacije, morate znati kako koristiti Fridu.
- Naučite kako koristiti Fridu: Frida tutorial
- Neke "GUI" opcije za rad sa Fridom: https://github.com/m0bilesecurity/RMS-Runtime-Mobile-Security
- Ojection je odličan za automatizaciju upotrebe Frida: https://github.com/sensepost/objection , https://github.com/dpnishant/appmon
- Ovde možete pronaći neke sjajne Frida skripte: https://codeshare.frida.re/
Ispisivanje memorije - Fridump
Proverite da li aplikacija čuva osetljive informacije u memoriji koje ne bi trebala čuvati, poput lozinki ili mnemonika.
Koristeći Fridump3, možete ispisati memoriju aplikacije sa:
# With PID
python3 fridump3.py -u <PID>
# With name
frida-ps -Uai
python3 fridump3.py -u "<Name>"
Ovo će izbaciti memoriju u ./dump folderu, a tamo možete koristiti grep sa nečim kao što je:
{% code overflow="wrap" %}
strings * | grep -E "^[a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+$"
{% endcode %}
Osetljivi podaci u Keystore-u
U Androidu je Keystore najbolje mesto za čuvanje osetljivih podataka, međutim, sa dovoljno privilegija i dalje je moguće pristupiti njima. Pošto aplikacije često čuvaju ovde osetljive podatke u čistom tekstu, pentesteri bi trebali da provere da li je to slučaj, jer korisnik sa root pristupom ili neko ko ima fizički pristup uređaju može da ukrade ove podatke.
Čak i ako aplikacija čuva podatke u keystore-u, podaci bi trebali biti enkriptovani.
Da biste pristupili podacima unutar keystore-a, možete koristiti ovaj Frida skript: https://github.com/WithSecureLabs/android-keystore-audit/blob/master/frida-scripts/tracer-cipher.js
frida -U -f com.example.app -l frida-scripts/tracer-cipher.js
Bypassiranje otiska prsta/biometrije
Korišćenjem sledećeg Frida skripta moguće je bypass-ovati autentifikaciju otiska prsta koju Android aplikacije mogu koristiti kako bi zaštitile određene osetljive oblasti:
{% code overflow="wrap" %}
frida --codeshare krapgras/android-biometric-bypass-update-android-11 -U -f <app.package>
{% endcode %}
Pozadinske slike
Kada stavite aplikaciju u pozadinu, Android čuva snimak aplikacije tako da kada se vrati na prednji plan, počinje učitavanje slike pre aplikacije kako bi izgledalo da je aplikacija učitana brže.
Međutim, ako ovaj snimak sadrži osetljive informacije, neko ko ima pristup snimku može ukrasti te informacije (napomena: potreban je root pristup).
Snimci se obično čuvaju na lokaciji: /data/system_ce/0/snapshots
Android pruža način da onemogući snimanje ekrana postavljanjem FLAG_SECURE parametra izgleda. Korišćenjem ovog parametra, sadržaj prozora se tretira kao siguran, sprečavajući prikazivanje na snimcima ekrana ili na nebezbednim prikazima.
getWindow().setFlags(LayoutParams.FLAG_SECURE, LayoutParams.FLAG_SECURE);
Analizator Android aplikacija
Ovaj alat može vam pomoći u upravljanju različitim alatima tokom dinamičke analize: https://github.com/NotSoSecure/android_application_analyzer
Injekcija namera
Razvojni programeri često stvaraju proxy komponente poput aktivnosti, servisa i prijemnika emitovanja koji obrađuju ove namere i prosleđuju ih metodama poput startActivity(...)
ili sendBroadcast(...)
, što može biti rizično.
Opasnost leži u tome što se napadačima omogućava pokretanje neizloženih komponenti aplikacije ili pristup osetljivim pružaocima sadržaja preusmeravanjem ovih namera. Značajan primer je komponenta WebView
koja konvertuje URL-ove u objekte Intent
putem Intent.parseUri(...)
i zatim ih izvršava, što može dovesti do zlonamernih injekcija namera.
Ključne tačke
- Injekcija namera je slična problemu otvorenog preusmeravanja na vebu.
- Eksploatacija uključuje prosleđivanje objekata
Intent
kao dodatnih podataka, koji mogu biti preusmereni da izvrše nesigurne operacije. - Može otkriti neizložene komponente i pružaoce sadržaja napadačima.
- Konverzija URL-a u
Intent
uWebView
-u može olakšati neželjene radnje.
Injekcije na klijentskoj strani Androida i ostale
Verovatno ste upoznati sa ovom vrstom ranjivosti na vebu. Morate biti posebno oprezni sa ovim ranjivostima u Android aplikaciji:
- SQL Injection: Prilikom rukovanja dinamičkim upitima ili pružaocima sadržaja, proverite da li koristite parametrizovane upite.
- JavaScript Injection (XSS): Proverite da li je podrška za JavaScript i dodatke onemogućena za sve WebView-ove (podrazumevano onemogućeno). Više informacija ovde.
- Uključivanje lokalnih datoteka: WebView-ovi bi trebalo da nemaju pristup sistemu datoteka (podrazumevano omogućeno) -
(webview.getSettings().setAllowFileAccess(false);)
. Više informacija ovde. - Večni kolačići: U nekoliko slučajeva, kada se Android aplikacija završi, kolačić nije opozvan ili čak može biti sačuvan na disku.
- Sigurna oznaka u kolačićima
Pridružite se HackenProof Discord serveru kako biste komunicirali sa iskusnim hakerima i lovcima na bagove!
Uvidi u hakovanje
Uključite se u sadržaj koji istražuje uzbuđenje i izazove hakovanja
Hakovanje u realnom vremenu
Budite u toku sa brzim svetom hakovanja putem vesti i uvida u realnom vremenu
Najnovije objave
Budite informisani o najnovijim pokretanjima nagrada za pronalaženje bagova i važnim ažuriranjima platforme
Pridružite nam se na Discord-u i počnite da sarađujete sa vrhunskim hakerima danas!
Automatska analiza
MobSF
Statička analiza
Procena ranjivosti aplikacije korišćenjem lepog veb baziranog korisničkog interfejsa. Takođe možete izvršiti dinamičku analizu (ali morate pripremiti okruženje).
docker pull opensecurity/mobile-security-framework-mobsf
docker run -it -p 8000:8000 opensecurity/mobile-security-framework-mobsf:latest
Primetite da MobSF može analizirati Android (apk), IOS (ipa) i Windows (apx) aplikacije (Windows aplikacije se moraju analizirati sa MobSF instaliranim na Windows hostu).
Takođe, ako napravite ZIP fajl sa izvornim kodom Android ili IOS aplikacije (idite u korenski folder aplikacije, izaberite sve i napravite ZIP fajl), MobSF će moći da ga analizira.
MobSF takođe omogućava diff/Upoređivanje analize i integraciju sa VirusTotal (morate postaviti svoj API ključ u MobSF/settings.py i omogućiti ga: VT_ENABLED = TRUE
VT_API_KEY = <Vaš API ključ>
VT_UPLOAD = TRUE
). Takođe možete postaviti VT_UPLOAD
na False
, tada će se hash uploadovati umesto fajla.
Pomoćna dinamička analiza sa MobSF
MobSF takođe može biti veoma koristan za dinamičku analizu na Androidu, ali u tom slučaju morate instalirati MobSF i genymotion na svom hostu (VM ili Docker neće raditi). Napomena: Prvo morate pokrenuti VM u genymotionu a zatim MobSF.
MobSF dinamički analizator može:
- Izvući podatke aplikacije (URL-ove, logove, clipboard, screenshotove koje ste napravili, screenshotove koje je napravio "Exported Activity Tester", emailove, SQLite baze podataka, XML fajlove i druge kreirane fajlove). Sve ovo se radi automatski osim screenshotova, morate pritisnuti kada želite screenshot ili pritisnuti "Exported Activity Tester" da biste dobili screenshotove svih izvezenih aktivnosti.
- Snimiti HTTPS saobraćaj
- Koristiti Frida da dobije informacije o izvršavanju
Od verzije 5 Androida, automatski će pokrenuti Fridu i postaviti globalne proxy podešavanja za snimanje saobraćaja. Snimaće samo saobraćaj iz testirane aplikacije.
Frida
Podrazumevano, takođe će koristiti neke Frida skripte za bypass SSL pinning, detekciju root-a i detekciju debugger-a i za praćenje interesantnih API-ja.
MobSF takođe može pokrenuti izvezene aktivnosti, uhvatiti screenshotove i sačuvati ih za izveštaj.
Da biste pokrenuli dinamičko testiranje, pritisnite zeleno dugme: "Start Instrumentation". Pritisnite "Frida Live Logs" da biste videli logove generisane od strane Frida skripti i "Live API Monitor" da biste videli sve pozive kukačkih metoda, prosleđene argumente i vraćene vrednosti (ovo će se pojaviti nakon pritiskanja "Start Instrumentation").
MobSF vam takođe omogućava da učitate svoje Frida skripte (da biste poslali rezultate svojih Frida skripti u MobSF koristite funkciju send()
). Takođe ima nekoliko unapred napisanih skripti koje možete učitati (možete dodati više u MobSF/DynamicAnalyzer/tools/frida_scripts/others/
), samo ih izaberite, pritisnite "Load" i pritisnite "Start Instrumentation" (moći ćete videti logove te skripte unutar "Frida Live Logs").
Osim toga, imate neke pomoćne Frida funkcionalnosti:
- Enumerate Loaded Classes: Ispisuje sve učitane klase
- Capture Strings: Ispisuje sve uhvaćene stringove prilikom korišćenja aplikacije (veoma bučno)
- Capture String Comparisons: Može biti veoma korisno. Pokazuje dva upoređivana stringa i da li je rezultat bio Tačno ili Netačno.
- Enumerate Class Methods: Unesite ime klase (kao što je "java.io.File") i ispisuje sve metode klase.
- Search Class Pattern: Pretražuje klase po obrascu
- Trace Class Methods: Prati celu klasu (vidi ulaze i izlaze svih metoda klase). Zapamtite da MobSF podrazumevano prati nekoliko interesantnih Android Api metoda.
Kada ste izabrali pomoćni modul koji želite da koristite, trebate pritisnuti "Start Intrumentation" i videćete sve izlaze u "Frida Live Logs".
Shell
Mobsf takođe pruža shell sa nekim adb komandama, MobSF komandama i uobičajenim shell komandama na dnu stranice dinamičke analize. Neke interesantne komande:
help
shell ls
activities
exported_activities
services
receivers
HTTP alati
Kada se uhvati http saobraćaj, možete videti ružan prikaz uhvaćenog saobraćaja na dnu "HTTP(S) Traffic" ili lepši prikaz na zelenom dugmetu "Start HTTPTools". Iz druge opcije, možete poslati uhvaćene zahteve na proxy servere poput Burp-a ili Owasp ZAP-a.
Da biste to uradili, uključite Burp --> isključite Intercept --> u MobSB HTTPTools izaberite zahtev --> pritisnite "Send to Fuzzer" --> izaberite adresu proxy servera (http://127.0.0.1:8080\).
Nakon završetka dinamičke analize sa MobSF-om, možete pritisnuti "Start Web API Fuzzer" da biste fuzz-ovali http zahteve i tražili ranjivosti.
{% hint style="info" %} Nakon izvršavanja dinamičke analize sa MobSF-om, postavke proxy servera mogu biti pogrešno konfigurisane i nećete moći da ih popravite putem korisničkog interfejsa. Možete popraviti postavke proxy servera na sledeći način:
adb shell settings put global http_proxy :0
{% endhint %}
Asistirana dinamička analiza pomoću Inspeckage-a
Možete preuzeti alat sa Inspeckage.
Ovaj alat koristi neke Hooks kako bi vam omogućio da saznate šta se dešava u aplikaciji dok vršite dinamičku analizu.
Yaazhini
Ovo je odličan alat za izvođenje statičke analize sa grafičkim korisničkim interfejsom
Qark
Ovaj alat je dizajniran da pronađe nekoliko bezbednosno vezanih ranjivosti Android aplikacija, bilo u izvornom kodu ili pakovanom APK-u. Alat je takođe sposoban da kreira "Proof-of-Concept" APK i ADB komande, kako bi iskoristio neke od pronađenih ranjivosti (izložene aktivnosti, namere, tapjacking...). Kao i sa Drozer-om, nije potrebno rutovati testni uređaj.
pip3 install --user qark # --user is only needed if not using a virtualenv
qark --apk path/to/my.apk
qark --java path/to/parent/java/folder
qark --java path/to/specific/java/file.java
ReverseAPK
- Prikazuje sve izvučene datoteke radi lakšeg referenciranja
- Automatski dekompilira APK datoteke u Java i Smali format
- Analizira AndroidManifest.xml za uobičajene ranjivosti i ponašanje
- Statička analiza izvornog koda za uobičajene ranjivosti i ponašanje
- Informacije o uređaju
- i još mnogo toga
reverse-apk relative/path/to/APP.apk
SUPER Android Analyzer
SUPER je aplikacija za komandnu liniju koja se može koristiti u Windows-u, MacOS X-u i Linux-u, a koja analizira .apk fajlove u potrazi za ranjivostima. To radi dekompresijom APK fajlova i primenom niza pravila za otkrivanje tih ranjivosti.
Sva pravila su smeštena u rules.json
fajlu, i svaka kompanija ili tester može kreirati svoja pravila za analizu onoga što im je potrebno.
Preuzmite najnovije binarne fajlove sa stranice za preuzimanje
super-analyzer {apk_file}
StaCoAn
StaCoAn je univerzalni alat koji pomaže programerima, lovcima na bagove i etičkim hakerima da izvrše statičku analizu koda mobilnih aplikacija.
Koncept je da prevučete i ispustite datoteku vaše mobilne aplikacije (apk ili ipa datoteku) na StaCoAn aplikaciju i ona će generisati vizuelni i prenosivi izveštaj za vas. Možete prilagoditi podešavanja i liste reči da biste dobili prilagođeno iskustvo.
Preuzmite najnovije izdanje:
./stacoan
AndroBugs
AndroBugs Framework je sistem za analizu ranjivosti Androida koji pomaže programerima ili hakerima da pronađu potencijalne sigurnosne ranjivosti u Android aplikacijama.
Windows izdanja
python androbugs.py -f [APK file]
androbugs.exe -f [APK file]
Androwarn
Androwarn je alat čiji je glavni cilj da otkrije i upozori korisnika na potencijalno zlonamerne radnje razvijene od strane Android aplikacije.
Detekcija se vrši statističkom analizom Dalvik bajtkoda aplikacije, koji je predstavljen kao Smali, pomoću biblioteke androguard
.
Ovaj alat traži uobičajeno ponašanje "loših" aplikacija kao što su: izvlačenje telefonskih identifikatora, presretanje audio/video tokova, modifikacija PIM podataka, izvršavanje proizvoljnog koda...
python androwarn.py -i my_application_to_be_analyzed.apk -r html -v 3
MARA Framework
MARA je okvir za obrnuti inženjering i analizu mobilnih aplikacija. To je alat koji objedinjuje često korištene alate za obrnuti inženjering i analizu mobilnih aplikacija, kako bi pomogao u testiranju mobilnih aplikacija protiv OWASP mobilnih sigurnosnih prijetnji. Cilj mu je olakšati ovaj zadatak i učiniti ga prijateljskim prema razvojnim programerima mobilnih aplikacija i sigurnosnim stručnjacima.
Može:
- Izvući Java i Smali kod koristeći različite alate
- Analizirati APK datoteke koristeći: smalisca, ClassyShark, androbugs, androwarn, APKiD
- Izvući privatne informacije iz APK datoteka koristeći regexps.
- Analizirati Manifest datoteke.
- Analizirati pronađene domene koristeći: pyssltest, testssl i whatweb
- Deobfuskirati APK putem apk-deguard.com
Koodous
Korisno za otkrivanje zlonamjernog softvera: https://koodous.com/
Obfuskacija/deobfuskacija koda
Imajte na umu da ovisno o usluzi i konfiguraciji koju koristite za obfuskaciju koda, tajne se mogu ili ne moraju završiti obfuskirane.
ProGuard
Prema Wikipediji: ProGuard je alat za obrnuti inženjering otvorenog koda koji smanjuje, optimizira i obfuskira Java kod. Može optimizirati bajtkod kao i otkriti i ukloniti nekorištene instrukcije. ProGuard je besplatan softver i distribuira se pod GNU General Public License, verzija 2.
ProGuard se distribuira kao dio Android SDK-a i pokreće se prilikom izgradnje aplikacije u načinu rada za objavljivanje.
DexGuard
Pronađite vodič korak po korak za deobfuskaciju APK datoteke na https://blog.lexfo.fr/dexguard.html
(Iz tog vodiča) Posljednji put kad smo provjerili, način rada Dexguarda bio je:
- učitavanje resursa kao InputStream;
- rezultat se prosljeđuje klasi koja nasljeđuje FilterInputStream za dešifriranje;
- obavljanje beskorisne obfuskacije kako bi se gubilo nekoliko minuta vremena od osobe koja pokušava obrnuti inženjering;
- dešifrirani rezultat se prosljeđuje ZipInputStreamu kako bi se dobio DEX datoteka;
- konačno se rezultirajući DEX učitava kao resurs koristeći metodu
loadDex
.
DeGuard
DeGuard vraća postupak obfuskacije koji su izvršili alati za obfuskaciju Androida. To omogućuje brojne sigurnosne analize, uključujući inspekciju koda i predviđanje biblioteka.
Možete prenijeti obfuskiranu APK datoteku na njihovu platformu.
Simplify
To je generički deobfuskator za Android. Simplify virtuelno izvršava aplikaciju kako bi razumio njezino ponašanje, a zatim pokušava optimizirati kod tako da se ponaša identično, ali je lakši za razumijevanje čovjeka. Svaka vrsta optimizacije je jednostavna i generička, pa nije važno koja se specifična vrsta obfuskacije koristi.
APKiD
APKiD vam pruža informacije o načinu izrade APK datoteke. Identificira mnoge kompajlere, pakere, obfuskatore i druge čudne stvari. To je PEiD za Android.
Ručno
Pročitajte ovaj tutorial da biste naučili neke trikove o kako obrnuti prilagođenu obfuskaciju
Laboratorije
Androl4b
AndroL4b je virtualna mašina za sigurnost Androida bazirana na ubuntu-mate koja uključuje kolekciju najnovijih okvira, tutorijala i laboratorija od različitih sigurnosnih stručnjaka i istraživača za obrnuti inženjering i analizu zlonamjernog softvera.
Reference
- https://owasp.org/www-project-mobile-app-security/
- https://appsecwiki.com/#/ To je odličan popis resursa
- https://maddiestone.github.io/AndroidAppRE/ Brzi tečaj za Android
- https://manifestsecurity.com/android-application-security/
- https://github.com/Ralireza/Android-Security-Teryaagh
- https://www.youtube.com/watch?v=PMKnPaGWxtg&feature=youtu.be&ab_channel=B3nacSec
Još nije isprobano
Pridružite se HackenProof Discord serveru kako biste komunicirali s iskusnim hakerima i lovcima na greške!
Hacking Insights
Uključite se u sadržaj koji istražuje uzbuđenje i izazove hakiranja
Vijesti o hakiranju u stvarnom vremenu
Budite u toku s brzim svijetom hakiranja putem vijesti i saznanja u stvarnom vremenu
Najnovije objave
Ostanite informirani o najnovijim nagradama za otkrivanje grešaka i važnim ažuriranjima platforme
Pridružite nam se na Discordu i počnite surađivati s vrhunskim hakerima danas!
Naučite hakiranje AWS-a od početnika do stručnjaka s htARTE (HackTricks AWS Red Team Expert)!
Drugi načini podrške HackTricksu:
- Ako želite vidjeti oglašavanje svoje tvrtke u HackTricksu ili preuzeti HackTricks u PDF formatu, provjerite PLANOVE PRETPLATE!
- Nabavite službenu PEASS & HackTricks opremu
- Otkrijte [**The PE