Drozer Tutorial
Last updated
Last updated
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Bug bounty ipucu: Intigriti'ye kaydolun, hackerlar tarafından, hackerlar için oluşturulmuş bir premium bug bounty platformu! Bugün https://go.intigriti.com/hacktricks adresine katılın ve $100,000'a kadar ödüller kazanmaya başlayın!
Sieve (mrwlabs'dan)
Bu eğitimin bazı bölümleri Drozer belgeleri pdf'inden** alınmıştır.**
Drozer Client'ı ana bilgisayarınıza kurun. en son sürümlerden indirin.
drozer APK'sını en son sürümlerden indirin ve kurun. Şu anda bu sürüm.
Agent 31415 portunda çalışıyor, Drozer Client ve Agent arasında iletişimi sağlamak için port yönlendirmesi yapmamız gerekiyor, işte bunu yapmak için komut:
Son olarak, uygulamayı başlatın ve alt kısımdaki "AÇ" butonuna basın.
Ve ona bağlanın:
Komutlar
Açıklama
Help MODULE
Seçilen modülün yardımını gösterir
list
Mevcut oturumda çalıştırılabilen tüm drozer modüllerinin bir listesini gösterir. Bu, çalıştırmak için uygun izinlere sahip olmadığınız modülleri gizler.
shell
Cihazda, Agent bağlamında etkileşimli bir Linux kabuğu başlatır.
clean
Android cihazında drozer tarafından depolanan geçici dosyaları kaldırır.
load
Drozer komutlarını içeren bir dosyayı yükler ve bunları sırasıyla çalıştırır.
module
İnternetten ek drozer modüllerini bulur ve yükler.
unset
Drozer'in oluşturduğu herhangi bir Linux kabuğuna geçirdiği adlandırılmış bir değişkeni kaldırır.
set
Drozer tarafından oluşturulan herhangi bir Linux kabuğuna çevresel değişken olarak geçirilecek bir değişkende bir değeri saklar.
shell
Cihazda, Agent bağlamında etkileşimli bir Linux kabuğu başlatır.
run MODULE
Bir drozer modülünü çalıştırır
exploit
Drozer, cihazda çalıştırmak için istismarlar oluşturabilir. drozer exploit list
payload
İstismarların bir yükü gereklidir. drozer payload list
Ad kısmını filtreleyerek paketin adını bulun:
Paketin Temel Bilgileri:
Manifest'i Oku:
Paketin saldırı yüzeyi:
Aktiviteler: Belki bir aktivite başlatabilir ve sizi başlatmaktan alıkoyması gereken bir tür yetkilendirmeyi atlayabilirsiniz.
İçerik sağlayıcıları: Belki özel verilere erişebilir veya bazı zayıflıkları (SQL Injection veya Path Traversal) istismar edebilirsiniz.
Hizmetler:
debuggable: Daha fazla bilgi edinin
Bir dışa aktarılmış aktivite bileşeninin “android:exported” değeri AndroidManifest.xml dosyasında “true” olarak ayarlanmıştır:
Dışa aktarılan aktiviteleri listele:
Etkinliği başlat:
Belki bir etkinliği başlatabilir ve sizi başlatmaktan alıkoyması gereken bir tür yetkilendirmeyi atlayabilirsiniz.
adb üzerinden bir dışa aktarılan aktiviteyi de başlatabilirsiniz:
Paket Adı com.example.demo
Dışa Aktarılan Aktivite Adı com.example.test.MainActivity
Bu gönderi burada çok büyük olduğu için ona kendi sayfasından buradan erişebilirsiniz.
Dışa aktarılan bir hizmet Manifest.xml içinde tanımlanır:
Kodun içinde check için **handleMessage
** fonksiyonunu kontrol edin, bu fonksiyon mesajı alacaktır:
app.service.send
için drozer yardımına bir göz atın:
Öncelikle "msg.what" içindeki veriyi, ardından "msg.arg1" ve "msg.arg2" göndereceğinizi unutmayın, hangi bilginin kullanıldığını ve nerede olduğunu kod içinde kontrol etmelisiniz.
--extra
seçeneğini kullanarak "msg.replyTo", tarafından yorumlanan bir şey gönderebilirsiniz ve --bundle-as-obj
kullanarak sağlanan detaylarla bir nesne oluşturursunuz.
Aşağıdaki örnekte:
what == 2354
arg1 == 9234
arg2 == 1
replyTo == object(string com.mwr.example.sieve.PIN 1337)
Android temel bilgi bölümünde bir Yayın Alıcısının ne olduğunu görebilirsiniz.
Bu Yayın Alıcılarını keşfettikten sonra, kodlarını kontrol etmelisiniz. Alınan mesajları işleyen onReceive
fonksiyonuna özel dikkat gösterin.
Bu örnekte FourGoats apk İçerik Sağlayıcısını kötüye kullanarak, kullanıcıdan izin istemeden herhangi bir premium olmayan hedefe rastgele bir SMS gönderebilirsiniz.
Kodu okursanız, "phoneNumber" ve "message" parametrelerinin İçerik Sağlayıcısına gönderilmesi gerektiğini göreceksiniz.
Bir üretim APK'sı asla debuggable olmamalıdır. Bu, çalışmakta olan uygulamaya java debugger ekleyebileceğiniz, çalışma zamanında inceleyebileceğiniz, kesme noktaları ayarlayabileceğiniz, adım adım ilerleyebileceğiniz, değişken değerlerini toplayabileceğiniz ve hatta bunları değiştirebileceğiniz anlamına gelir. InfoSec enstitüsü, uygulamanız debuggable olduğunda daha derinlemesine inceleme ve çalışma zamanı kodu enjekte etme konusunda mükemmel bir makaleye sahiptir.
Bir uygulama debuggable olduğunda, Manifest'te görünecektir:
Drozer ile tüm hata ayıklanabilir uygulamaları bulabilirsiniz:
Hata ödülü ipucu: hackerlar tarafından, hackerlar için oluşturulmuş premium bir hata ödülü platformu olan Intigriti'ye kaydolun! Bugün https://go.intigriti.com/hacktricks adresinde bize katılın ve $100,000'a kadar ödüller kazanmaya başlayın!
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Eğitim AWS Kırmızı Ekip Uzmanı (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Eğitim GCP Kırmızı Ekip Uzmanı (GRTE)