Upload
owasp-turkiye
View
325
Download
2
Embed Size (px)
Citation preview
ATTACKING MOBILE APPLICATIONS
AT RUNTIME
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
Ahmet Can Kan
Ben kimim?
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
INVICTUS
“Intelligence Research and Development”
Senior Mobile Security Consultant
at Invictus in Istanbul
VP, R&D Lead at Prodaft
Bsc. Comp Sci. & Eng. Sabanci
University
Msc. Candidate, Comp Eng at
Bogazici University
Security and Privacy in
Biometrics
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
İÇERİK
1
2
3
4
Android Runtime, Xposed Framework
iOS Platformunda Örnek Saldırı
Senaryoları
iOS Cydia Substrate API
Android Platformunda Örnek Saldırı
Senaryoları
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
1Android Runtime, Xposed Framework
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
Zygote
• Zygote işletim sistemindeki bütün uygulamaların başlatılmasından
sorumlu ‘daemon’dır ve bütün uygulamalar bu process’ten fork edilir.
Android Runtime
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
• /system/bin/app_process aracılığıyla ayağa kaldırılır. (@ init.rc)
Yükleme:
• Installer uygulaması aracılığıyla sisteme yüklenir (root
yetkileri gerektirir).
• Extended bir app_process çalıştırılabilir dosyası hali
hazırda var olan dosyanın yerini alır.
• ClassPath’e XposedBridge.jar kütüphanesini ekler ve
bu kütüphanedeki metodları gerektiğinde çağırır.
• Böylece XPosedBridge.jar kütüphanesinden gerekli
metodları Zygote process’inin bir parçasıymış gibi
çalıştırabilir.
• https://github.com/rovo89
Xposed Framework
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
Method Hooking/Replacing:
• Framework’ün asıl gücü hedef uygulamadaki metodları hook’layabilmesinden gelir.
• APK’yı modifiye etmek yeterli olmaz mı?
• Decompile/Compile/Sign Döngüsü
• Redistribution
• Yazacağınız bir Xposed modülü ise hedef metodun öncesinde ve sonrasında sizin kendi
kodunuzu çağırmanızı veya hedef metodu direkt olarak override etmenizi sağlar.
Xposed Framework
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
Xposed Framework
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
2Android Platformunda Örnek Saldırı
Senaryoları
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
JustTrustMe
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
SSL Pinning?
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
SSL Pinning?
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
RootCloak
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
Root?
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
CryptoLogger
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
3iOS Runtime, Cydia Substrate API
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
• Substrate C API, hedef platformlarda kod instrumentasyonu yapmanıza olanak sağlar.
• Hedef platformdaki objenin veya metodun argümanlarını, return değerlerini ve hatta
implementasyonunu değiştirmenize olanak sağlar.
• C/C++/Assembly, Objective-C ve Java (Android/Dalvik) platformlarını destekler.
• C seviyesinde çalışır.
• Android 4.3’ün üstünü desteklemez. (ART?)
Cydia Substrate API
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
Cydia Substrate API Hello World – Adım 1 – Binary Decryption
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
Cydia Substrate API Hello World – Adım 2 – Tweak Oluşturma
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
THEOS SDK
• Linux, MacOS ve Windows (Cygwin) desteği bulunur.
o Windows: https://coolstar.org/theos.pdfo Linux/OSX: http://iphonedevwiki.net/index.php/Theos/Setup
Cydia Substrate API Hello World – Adım 2 – Tweak Oluşturma
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
Logos
• Preprocessor tabanlı bir kütüphanedir.
• Tweak yazma işlemini kolaylaştırır.
Cydia Substrate API Hello World – Adım 3 – Tweak’i Yükleme
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
• Oluşturulan dylib ve plist
dosyaları
/Library/MobileSubstrate/D
ynamicLibraries/ dizinine
kopyalanır.
• Hedef uygulama (kelime
oyunu) yeniden başlatılır.
4iOS Platformunda Örnek Saldırı
Senaryoları
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
Snoop-it
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
IntroSpy
iOS SSL Kill Switch
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
xCon
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
Flex
OWASP-TR Mobil Güvenlik Çalıştayı ‘15
• NBA Game Time App
• Sadece method overriding
Teşekkürler.
When next year’s crop of high-school graduates arrive at Oxford University in the fall of 2009, they’ll be joined by a new face;
Andrew Hamilton, the 55-year-old provost of Yale, who’llWhen next year’s crop of high-school graduates arrive at