APKTOOL ilə Mobil Tətbiqin Decompile Edilməsi (AllSafe.apk ilə nümunə)
Bu paylaşım seriyası Mobile Application Pentesting üzərindən gedəcəkdir və paylaşımın məqsədi Android Pentest üçün mühitin qurulmasıdır.
Telegram kanalına qoşularaq bu və digər mövzular üzrə quizlərdə iştirak edə bilərsiniz!
Telegram (Kanal): https://t.me/xakeraz_official
Əgər birbaşa bu paylaşıma gəlmisinizsə, sizə əvvəlki paylaşımdakı məlumatlar ilə tanış olmağınızı məsləhət görürəm!
Apktool nədir?
Apktool, həmçinin Android-a tətbiq etmək üçün istifadə olunan bir vasitədir, tətbiqin Android package (APK) fayllarını təhlil etməyə, təkmilləşdirməyə və yenidən qurmağa imkan verir. O, APK fayllarını təqribən orijinal vəziyyətinə qaytararaq resursları (məsələn, AndroidManifest.xml və digər XML faylları) dekompilyasiya edir və Java kodunu Smali formatında deassamble edir. Bu vasitə proqramlaşdırma, localizasiya, xüsusiyyətlərin əlavə edilməsi, tətbiq təhlili və ya icazə dəyişiklikləri kimi məqsədlər üçün istifadə edilə bilər.
Kali Linuxa ApkTool quraşdırılması
Kali Linuxa Apktool alətinin quraşdırılması olduqca asandır və 1 kommanda ilə qurmaq mümkündür.Aşağıdakı kommanda ilə Apktool alətini qura bilərik:
sudo apt install apktool
Mən əvvəlcədən qurduğum üçün artıq hazırdır. Əgər siz qurmamısınızsa, “y” deyərək aləti quraşdırın.

Əgər siz terminal ekranında apktool yazdıqda aşağıdakı nəticə gəlirsə, alət uğurla quraşdırılıb və biz davam edə bilərik.

AllSafe.apk Quraşdırılması
AllSafe.apk – Mr.Robot serialından ilhamlanmış mobil zəifliklərinin test edilməsi və pentesterlərin inkişaf etməsi üçün istifadə olunan mobil ctf tətbiqidir. Daxilində müxtləlif kateqoriyalardan olan zəifliklər mobil pentest sahəsində fikr sahibi olmağa və bu sahədə ixtisaslaşmağa kömək edir.
Apktool Kali Linuxa quraşdırma üçün Github linki göstərilmiş və kommandası verilmişdir.
https://github.com/t0thkr1s/allsafe-android?tab=readme-ov-file
wget https://github.com/t0thkr1s/allsafe/releases/latest/download/allsafe.apk
Yüklənən AllSafe tətbiqini Android emulator üzərinə sürüklədikdə tətbiq avtomatik olaraq yükənir. Yüklənmə sonrası Allsafe tətbiqi belə görünür.

ApkTool İstifadə Edərək CTF Həll Edilməsi
ApkTool alətinin istifadə edilməsi və daha yaxşı başa düşülməsi üçün hər hansı bir ctf ilə praktika etmək məsləhətdir. Məhz bunun üçün yükləmiş olduğumuz AllSafe.apk tətbiqinin Hardcoded Credentials bölməsini CTF şəklində həll edəcəyik. Hardcoded Credentials bölməsi belə görünür və bizdən username:password şəklində kodda gizlənmiş credentialları tapmaq tələb olunur.

1-ci Addım Apktool ilə tətbiqi dekompalyasiya etmək
ApkTool ilə tətbiqi dekompulyasiya etmək üçün “d” parametrindən istifadə olunur və aşağıdakı sintaksis ilə istifadə olunur.

Dekompalyasiya nəticəsində allsafe adında qovluğun yaradığını görə bilərsiniz. Həmin qovluq tətbiqin dekomplayasiya edilmiş variantıdır və smali kodları, xml kimi kodları özündə saxlayır.
2-ci Addım Faylların Daxilində Credentialların Axtarılması
Dekomplyasiay edilmiş faylların daxilində baxılması gərəkən bir neçə yer vardır. Bunları mən aşağıda qeyd edəcəyəm. ApkTool ilə dekomplyasiya zamanı bizə build etmək imkanı verən smali kodları qaytarır.Buna görə onun kodlarını oxumaq çətindir, məhz bu çətinliyə düşməmək üçün çox zaman xml fayllarına baxılır.
Credentialların saxlana biləcəyi fayllar:
- /res/values/strings.xml
- AndroidManifest.xml
- /res/xml/ (qovluğu daxilindəki fayllar)
Bu üsulla həmçinin grep kommandası ilə regex istifadə edərək və ya kodların içində pass və ya username sözü keçən hissələri də təyin etmək mümkündür.
grep -RIn 'pass' .
Belə bir kommanda ilə bütün fayllara əziyyət çəkmədən baxmaq mümkündür.

İndi gələk bizim axtardığımız CTF cavabı isə /res/values/strings.xml daxilindədir.

Hardcoded Credentials tapşırığının cavabıhttps://admin:[email protected]
Ümid edirəm faydalı olmuşdur! Təşəkkürlər!
Bizi izləyin:
Telegram (Kanal): https://t.me/xakeraz_official
Paylaşımların səliqəli yığılmış halı: https://t.me/xakerazgroup
Fikir və şərhləriniz : https://t.me/xakerazchat