Evil-Droid ile Android Hacking ve Payload Tipleri //Siber Güvenlik Kulübü
EvilDroid
Evil-Droid, android platformlarında nüfuz etmek için apk yaratan, oluşturan ve gömen bir yazılım iskeletidir.
EDIT// Daha Detaylı Şekilde EvilDroid Nedir ve Ne İşe Yarar?
Android platformlara nüfuz edebiliriz (android cihazı hacklemek), oluşturacağımız zararlı apk'yi başka bir apk'nın içine gömebiliriz. Apk'yı indirme işlemini oltalama saldırısına benzer bir saldırı gibi belirlediğimiz site görünümünde bir yerden yapabiliriz.
Genel olarak, ****sploitte yaptığımız zararlı apk oluşturma işlemini otomatik olarak araç ile yapmaktayız.
Payload kurduğumuz için (reverse_tcp_shell) payloadın özelliklerinden her şeyi yapabiliriz. Örn telefondan contact bilgilerini mesajları görselleri alabiliriz, fotoğraf çekebiliriz...
Daha detaylı bakmak isterseniz konuda örnekler bulunmaktadır;
Bağlantı: https://www.turkhackteam.org/siber-g...ml#post8952600
Nasıl kurulur?
Kali Linux makinemizde terminali açıyoruz.
Öncelikle aracı GitHubdan indiriyoruz.
git clone https://github.com/M4sc3r4n0/Evil-Droid.git
İndirdiğimiz klasöre giriyoruz.
cd Evil-Droid
Script uygulama izni veriyoruz.
chmod +x evil-droid
Ve uygulamayı çalıştırıyoruz.
./evil-droid
Yazılım iskeletlerinin ve servislerin uygulanması için soruyor. Evet diyoruz.
Seçenekler devamında gözükücektir.
Burada (1) APK MSFyi seçerseniz size normal Métasploitten oluşturuduğumuz zararlı apkyı oluşturuyor. (2) ve (3)te oluşturulacak apkyı seçtiğiniz bir apknın içine gömerek hazırlıyor. (2) eski versiyon olduğu için (3)ü kullanmanızı tavsiye ederim. (4)te ise basit antivirüslerden geçen seçtiğiniz ikonlu bir apk üretiliyor. (5) ile daha önce hacklediğiniz kişileri direkt dinlemeye başlıyabiliyorsunuz. (c) Daha önce oluşturulan apkları temizliyor. (q) ile de araçtan çıkış yapabiliyorsunuz.
Ben örnek amaçlı APK MSFyi yapacağım.
1 yazıp, entera basıyoruz.
Sırayla payloaddaki yerleri düzenliyoruz ve gereken yerleri dolduruyoruz. Biz örnek amaçlı localde(aynı ağda) çalıştırdığımız için local IPmizi yazıyoruz ve OK diyoruz.
Bizden portumuzu istiyor 4444 olarak giriyoruz ve OK diyoruz.
Bizden apkmızın ismini soruyor, biz evilapk olarak bıraktık(istediğiniz ismi koyaibilirsiniz) ve OK diyoruz.
Daha sonra çalıştırmak istediğimiz payloadı soruyor. Burada biraz payloadları açıklamak istiyorum. Çünkü birden fazla seçenek var ve hangisi ne işe yarıyor, tam olarak bilinmiyor.
Öncelikle payloadlar için tcp,http ve https arasındaki farkı bilmemiz lazım. reverse_tcp diğerlerine göre daha hızlıdır. Ancak reverse_tcpde bağlantıyı kayıp ettiğinizde yeniden bağlanmak için bazı işlemleri tekrarlamanız gerekir. Http ve Https ise bağlantıyı kayıp ettiğinde belirli aralıklarla yeniden bağlanmaya çalışır. Bunu bir avantaj olarak görebiliriz. Ayrıca tcp ile yapılan işlem başarılı olmaz ise http veya https kullanılmaktadır.
Daha sonra aklımızda bulundurmamız gereken bir diğer konu, payloadların tipleri ile alakalıdır. Payloadların birden fazla tipleri vardır. Örn.: Sahneli(staged) ve Sahnesiz(stageless) payloadlar gibi... android/SAHNE/reverse_tcp burada iki slaş(/) ifadesi arasındaki bölüm payloadın sahnesini belirtir.
Peki nedir bu Sahneli ve Sahnesiz Payloadlar? Ne işe yarar?
Sahnesiz payloadlar belirli bir kodu çalıştırıp sonlanan payload tipidir. Boyut kısıtlaması vardır. Bu yüzden dezavantajlıdır. Ayrıca Netcat vb. programlarla kolayca tespit edilebildiği için birazcık zayıf kalıyorlar.
Sahneli olanlar örn. android/meterpreter/reverse_tcp kurban ile bağlantı kurmamızı ve çeşitli komutları çalıştırabilmemizi sağlıyor, yani daha kapsamlı, ayrıca fark edilmeside daha zor. Boyut sınırı yok.
Ek olarak Métasploit framework ile çalıştığı için en yüksel ihtimalli payload modülünü deniyor olmazsa daha düşük ihtimalli olanı otomatik olarak seçip onu deniyor.
Özetle; Sahneli Payloadlar, sahnesiz payloadlara göre daha kapsamlıdır ve biz bu konuda sahneli bir payload kullanacağız. İsterseniz bu konuda daha detaylı araştırabilirsiniz.
Seçtikten sonra OK diyerek devam ediyoruz. Ve bize apknın oluşturulduğunun ve dizininin bilgisini veriyor.
OK dedikten sonra bize Seçenekleri sunuyor. Burada multi-handler'ı seçerseniz sizin apkyı kurbana yedirmeniz gerekiyor. Attack-Vector'ünü kullanırsanız da oluşturacağınız local adresinize girdiğinde gözükmesini istediğiniz sayfayı seçiyorsunuz. Siteye giriş yaptığında apk otomatik olarak indiriliyor. (Bu birazcık oltalama saldırısı gibi.)
Multi-Handler Örneği
Attack-Vector Örneği
Not: ctrl+c ile takıldığında veya yapılan işlemi durdurabilirsiniz.
sessions komutu ile oturumları görüntüleyebilirsiniz.
sesions i Oturum_Numarası Örn: sessions i 1 diyerek oturumlar arasında geçiş yapabilirsiniz.
Daha fazlası için help yazarak bakabilirsiniz.
Bu konuda daha önce Métasploitte el ile yaptığımız işlemlerin evil-droid isimli tool aracılığı ile otomatik ve daha kapsamlı şekilde yapılışını inceledik. Ek olarak payload tiplerine küçük de olsa değinmiş bulunduk. Geri bildirimlerinizi bekliyorum. Teşekkürler...
Ek olarak bakmak isterseniz Métasploit konusu:
(Ayrıca da burada manuel için daha detaylı bir bakış yapmıştık.)
Bağlantı: https://www.turkhackteam.org/siber-...kleyin-siber-guvenlik-kulubu.html#post8952600
Failed to verify signed artifacts hatasına ÇÖZÜM
Sorun, ED (Evil-droid) tarafından eski bir apktool.jar kullanımından geliyor
Kaynak koduna ve Evil-droid dosyalarına bakarak, ED'nin sistem apktool yazılımını kullanmadığını, ancak kendi gömleğini gömdüğünü fark edebiliriz. Evil-Droid-master / tools / apktool.jar'da bulunur.
Bu dosyanın sürümü apktool 2.2.4'tür. Ancak ana web sitesine göre, sürüm bunu yazarken 2.4.0'dır (https://ibotpeaches.github.io/Apktool).
Bu nedenle, doğrudan ana web sitesinden indirilen güncellenmiş bir apktool.jar ile Evil-Droid-master / tools / apktool.jar dosyasını değiştirmeniz gerekir.
Uygulamada :
En son apktool.jar dosyasını https://bitbucket.org/iBotPeaches/apktool/downloads/ adresinden indirin.
Apktool_2.X.X.jar dosyasını apktool.jar olarak yeniden adlandırın
Evil-Droid-master / tools / apktool.jar öğesini kaldır
İndirilen apktool.jar dosyasını Evil-Droid-master / tools /
(Sonunda Evil-Droid-master / tools / doc.txt tarafından belirtilen sürümü güncelleyin)
Kaynaklar
DipNot: Açıckası konu açarken en az 20 siteye bakıyorum. Ve evil-droid konusu hakkında hep aynı şeylerden bahsediliyor. Bu yüzden pek detaylı bakmanızı önermiyorum. Ancak, payload tipleri incelenebilir ve güzel bir konu.
Payload Tipleri Hakkında Kaynaklar
https://siberoloji.github.io/****spliot-framework-icinde-payload-cesitleri-nelerdir/
https://www.turkhackteam.org/siber-guvenlik/1537506-payload-nedir-stajyer.html
https://security.stackexchange.com/questions/188718/meterpreter-shell-and-system-shell-define
https://null-byte.wonderhowto.com/forum/difference-between-reversre-tcp-and-reverse-https-0171357/
http://www.ethicalpentest.com/2018/04/****sploit-tips-reverse-https-payload.html
Evil-Droid Hakkında Kaynaklar
https://github.com/M4sc3r4n0/Evil-Droid
https://hydrasky.com/mobile-security/evil-droid-create-generate-and-embed-apk-payloads/
Videolu Anlatım Örneği
https://www.youtube.com/watch?v=lzQclJipQBQ
EvilDroid
Evil-Droid, android platformlarında nüfuz etmek için apk yaratan, oluşturan ve gömen bir yazılım iskeletidir.
EDIT// Daha Detaylı Şekilde EvilDroid Nedir ve Ne İşe Yarar?
Android platformlara nüfuz edebiliriz (android cihazı hacklemek), oluşturacağımız zararlı apk'yi başka bir apk'nın içine gömebiliriz. Apk'yı indirme işlemini oltalama saldırısına benzer bir saldırı gibi belirlediğimiz site görünümünde bir yerden yapabiliriz.
Genel olarak, ****sploitte yaptığımız zararlı apk oluşturma işlemini otomatik olarak araç ile yapmaktayız.
Payload kurduğumuz için (reverse_tcp_shell) payloadın özelliklerinden her şeyi yapabiliriz. Örn telefondan contact bilgilerini mesajları görselleri alabiliriz, fotoğraf çekebiliriz...
Daha detaylı bakmak isterseniz konuda örnekler bulunmaktadır;
Bağlantı: https://www.turkhackteam.org/siber-g...ml#post8952600
Nasıl kurulur?
Kali Linux makinemizde terminali açıyoruz.
Öncelikle aracı GitHubdan indiriyoruz.
git clone https://github.com/M4sc3r4n0/Evil-Droid.git
İndirdiğimiz klasöre giriyoruz.
cd Evil-Droid
Script uygulama izni veriyoruz.
chmod +x evil-droid
Ve uygulamayı çalıştırıyoruz.
./evil-droid
![](https://i.hizliresim.com/dLYJpr.png)
Yazılım iskeletlerinin ve servislerin uygulanması için soruyor. Evet diyoruz.
![](https://i.hizliresim.com/4p6n4J.png)
Seçenekler devamında gözükücektir.
![](https://i.hizliresim.com/6D31O3.png)
Burada (1) APK MSFyi seçerseniz size normal Métasploitten oluşturuduğumuz zararlı apkyı oluşturuyor. (2) ve (3)te oluşturulacak apkyı seçtiğiniz bir apknın içine gömerek hazırlıyor. (2) eski versiyon olduğu için (3)ü kullanmanızı tavsiye ederim. (4)te ise basit antivirüslerden geçen seçtiğiniz ikonlu bir apk üretiliyor. (5) ile daha önce hacklediğiniz kişileri direkt dinlemeye başlıyabiliyorsunuz. (c) Daha önce oluşturulan apkları temizliyor. (q) ile de araçtan çıkış yapabiliyorsunuz.
Ben örnek amaçlı APK MSFyi yapacağım.
1 yazıp, entera basıyoruz.
Sırayla payloaddaki yerleri düzenliyoruz ve gereken yerleri dolduruyoruz. Biz örnek amaçlı localde(aynı ağda) çalıştırdığımız için local IPmizi yazıyoruz ve OK diyoruz.
![](https://i.hizliresim.com/kMVmvr.jpg)
Bizden portumuzu istiyor 4444 olarak giriyoruz ve OK diyoruz.
![](https://i.hizliresim.com/odBo7q.png)
Bizden apkmızın ismini soruyor, biz evilapk olarak bıraktık(istediğiniz ismi koyaibilirsiniz) ve OK diyoruz.
![](https://i.hizliresim.com/lQnm1p.png)
Daha sonra çalıştırmak istediğimiz payloadı soruyor. Burada biraz payloadları açıklamak istiyorum. Çünkü birden fazla seçenek var ve hangisi ne işe yarıyor, tam olarak bilinmiyor.
![](https://i.hizliresim.com/P7Xm58.png)
Öncelikle payloadlar için tcp,http ve https arasındaki farkı bilmemiz lazım. reverse_tcp diğerlerine göre daha hızlıdır. Ancak reverse_tcpde bağlantıyı kayıp ettiğinizde yeniden bağlanmak için bazı işlemleri tekrarlamanız gerekir. Http ve Https ise bağlantıyı kayıp ettiğinde belirli aralıklarla yeniden bağlanmaya çalışır. Bunu bir avantaj olarak görebiliriz. Ayrıca tcp ile yapılan işlem başarılı olmaz ise http veya https kullanılmaktadır.
Daha sonra aklımızda bulundurmamız gereken bir diğer konu, payloadların tipleri ile alakalıdır. Payloadların birden fazla tipleri vardır. Örn.: Sahneli(staged) ve Sahnesiz(stageless) payloadlar gibi... android/SAHNE/reverse_tcp burada iki slaş(/) ifadesi arasındaki bölüm payloadın sahnesini belirtir.
Peki nedir bu Sahneli ve Sahnesiz Payloadlar? Ne işe yarar?
Sahnesiz payloadlar belirli bir kodu çalıştırıp sonlanan payload tipidir. Boyut kısıtlaması vardır. Bu yüzden dezavantajlıdır. Ayrıca Netcat vb. programlarla kolayca tespit edilebildiği için birazcık zayıf kalıyorlar.
Sahneli olanlar örn. android/meterpreter/reverse_tcp kurban ile bağlantı kurmamızı ve çeşitli komutları çalıştırabilmemizi sağlıyor, yani daha kapsamlı, ayrıca fark edilmeside daha zor. Boyut sınırı yok.
Ek olarak Métasploit framework ile çalıştığı için en yüksel ihtimalli payload modülünü deniyor olmazsa daha düşük ihtimalli olanı otomatik olarak seçip onu deniyor.
Özetle; Sahneli Payloadlar, sahnesiz payloadlara göre daha kapsamlıdır ve biz bu konuda sahneli bir payload kullanacağız. İsterseniz bu konuda daha detaylı araştırabilirsiniz.
![](https://i.hizliresim.com/r0Pnrz.png)
Seçtikten sonra OK diyerek devam ediyoruz. Ve bize apknın oluşturulduğunun ve dizininin bilgisini veriyor.
![](https://i.hizliresim.com/6D3dAk.png)
OK dedikten sonra bize Seçenekleri sunuyor. Burada multi-handler'ı seçerseniz sizin apkyı kurbana yedirmeniz gerekiyor. Attack-Vector'ünü kullanırsanız da oluşturacağınız local adresinize girdiğinde gözükmesini istediğiniz sayfayı seçiyorsunuz. Siteye giriş yaptığında apk otomatik olarak indiriliyor. (Bu birazcık oltalama saldırısı gibi.)
Multi-Handler Örneği
![](https://i.hizliresim.com/86pApd.png)
![](https://i.hizliresim.com/Rgd2do.png)
![](https://i.hizliresim.com/NLMmMk.png)
Attack-Vector Örneği
![bUPYhq.png](https://resmim.net/f/bUPYhq.png)
![](https://i.hizliresim.com/86pApd.png)
![s8dKOL.png](https://resmim.net/f/s8dKOL.png)
Not: ctrl+c ile takıldığında veya yapılan işlemi durdurabilirsiniz.
sessions komutu ile oturumları görüntüleyebilirsiniz.
sesions i Oturum_Numarası Örn: sessions i 1 diyerek oturumlar arasında geçiş yapabilirsiniz.
Daha fazlası için help yazarak bakabilirsiniz.
Bu konuda daha önce Métasploitte el ile yaptığımız işlemlerin evil-droid isimli tool aracılığı ile otomatik ve daha kapsamlı şekilde yapılışını inceledik. Ek olarak payload tiplerine küçük de olsa değinmiş bulunduk. Geri bildirimlerinizi bekliyorum. Teşekkürler...
Ek olarak bakmak isterseniz Métasploit konusu:
(Ayrıca da burada manuel için daha detaylı bir bakış yapmıştık.)
Bağlantı: https://www.turkhackteam.org/siber-...kleyin-siber-guvenlik-kulubu.html#post8952600
Failed to verify signed artifacts hatasına ÇÖZÜM
Sorun, ED (Evil-droid) tarafından eski bir apktool.jar kullanımından geliyor
Kaynak koduna ve Evil-droid dosyalarına bakarak, ED'nin sistem apktool yazılımını kullanmadığını, ancak kendi gömleğini gömdüğünü fark edebiliriz. Evil-Droid-master / tools / apktool.jar'da bulunur.
Bu dosyanın sürümü apktool 2.2.4'tür. Ancak ana web sitesine göre, sürüm bunu yazarken 2.4.0'dır (https://ibotpeaches.github.io/Apktool).
Bu nedenle, doğrudan ana web sitesinden indirilen güncellenmiş bir apktool.jar ile Evil-Droid-master / tools / apktool.jar dosyasını değiştirmeniz gerekir.
Uygulamada :
En son apktool.jar dosyasını https://bitbucket.org/iBotPeaches/apktool/downloads/ adresinden indirin.
Apktool_2.X.X.jar dosyasını apktool.jar olarak yeniden adlandırın
Evil-Droid-master / tools / apktool.jar öğesini kaldır
İndirilen apktool.jar dosyasını Evil-Droid-master / tools /
(Sonunda Evil-Droid-master / tools / doc.txt tarafından belirtilen sürümü güncelleyin)
Kaynaklar
DipNot: Açıckası konu açarken en az 20 siteye bakıyorum. Ve evil-droid konusu hakkında hep aynı şeylerden bahsediliyor. Bu yüzden pek detaylı bakmanızı önermiyorum. Ancak, payload tipleri incelenebilir ve güzel bir konu.
Payload Tipleri Hakkında Kaynaklar
https://siberoloji.github.io/****spliot-framework-icinde-payload-cesitleri-nelerdir/
https://www.turkhackteam.org/siber-guvenlik/1537506-payload-nedir-stajyer.html
https://security.stackexchange.com/questions/188718/meterpreter-shell-and-system-shell-define
https://null-byte.wonderhowto.com/forum/difference-between-reversre-tcp-and-reverse-https-0171357/
http://www.ethicalpentest.com/2018/04/****sploit-tips-reverse-https-payload.html
Evil-Droid Hakkında Kaynaklar
https://github.com/M4sc3r4n0/Evil-Droid
https://hydrasky.com/mobile-security/evil-droid-create-generate-and-embed-apk-payloads/
Videolu Anlatım Örneği
https://www.youtube.com/watch?v=lzQclJipQBQ
Son düzenleme: