App–törés–teszt
Mobilalkalmazások a tesztlabor zárt ajtaja mögött
Veres-Szentkirályi András
OSCP GWAPT SISE
vsza@silentsignal.hu
Android Update – 2014. február 6.
Állatorvosi ló
Gray-box app audit
- nem áll rendelkezésre forráskód
- van felhasználónév-jelszó páros (s2/s2)
- van egy APK fájl
- nem teljes körűen!
- nem csak első vérig!
1. demo: aktív hálózati támadás
- APK kicsomagolása
- Kulcstár felfedezése
- Kulcsok vizsgálata
- MITM támadás
1. demo tanulságai
- Kulcstárban sem bízzunk vakon
- Fejlesztői kulcs is lehet kockázat
- A hálózat sosem megbízható
2. demo: passzív hálózati támadás
- Hálózat lehallgatása
- Süti megszerzése
- Munkamenet megszerzése
2. demo tanulságai
- Minden legyen titkosított és hitelesített!
- HTTP mindig HTTP marad
- Látott valaki kilépés gombot?
3. demo: statikus kódanalízis
- APK kicsomagolása
- DEX–JAR konverzió
- JAR visszafejtése
- (ProGuard hatásának bemutatása)
3. demo tanulságai
- „Ami a kódban van, az titkos” – tévhit
- Obfuszkáció
- Defense in Depth?
- Security by Obscurity?
- Debug / Configuration Management?
4. demo: dinamikus kódanalízis
- APK visszafejtése köztes kódra
- Módosítást követően újraépítés
- Kód aláírása
- Telepítés emulátorba
4. demo tanulságai
- Attól, hogy valami obfuszkált, még módosítható
- URL-ek, telefonszámok, debug flagek érdekesek
- A digitális aláírás más ellen véd
Összefoglalás
- Kezeljük a helyén az elhangzottakat!
- Ne dobjuk ki a fejlesztési tapasztalatokat
- sem webes (API)
- sem vastagkliens (telefon) oldalról!
- Ha valamiben nem vagyunk biztosak,
- ne tippeljünk,
- dokumentációnak se feltétlenül higyjünk,
- próbáljuk ki!