0Pricing
Ethical Hacking Academy · Pelajaran

Struktur Aplikasi Android

Internal APK

Struktur Aplikasi Android adalah pelajaran Ethical Hacking Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Ethical Hacking Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Ethical Hacking Academy mencakup 4 pelajaran total.

File APK

Aplikasi Android didistribusikan sebagai APK (Paket Android). Sebenarnya, APK adalah arsip ZIP yang berisi kode terkompilasi, sumber daya, dan metadata.

Karena merupakan ZIP, Anda cukup mengekstraknya untuk memeriksa isinya, yang merupakan langkah pertama dalam pengujian penetrasi seluler.

unzip app.apk -d app_extracted/

Isi APK

APK yang diekstrak berisi:

  • AndroidManifest.xml: konfigurasi aplikasi.
  • classes.dex: bytecode terkompilasi.
  • res/ dan resources.arsc: sumber daya.
  • lib/: pustaka native.
  • META-INF/: informasi penandatanganan.

Manifest

AndroidManifest.xml mendeklarasikan komponen, izin, dan konfigurasi aplikasi. Di dalam APK, berkas ini berbentuk XML biner yang dapat didekodekan oleh alat.

Ini adalah file terpenting untuk memahami permukaan serangan aplikasi.

DEX dan Runtime

Sumber Java/Kotlin dikompilasi menjadi bytecode DEX (Dalvik Executable) di dalam classes.dex. Android modern menjalankannya melalui ART (Android Runtime).

DEX dapat dikonversi kembali menjadi kode yang lebih mudah dibaca, dan inilah yang dimanfaatkan oleh analisis statis APK.

Empat Komponen

Aplikasi Android dibangun dari empat jenis komponen:

  • Aktivitas: layar / antarmuka pengguna.
  • Layanan: pekerjaan di latar belakang.
  • Penerima Siaran: merespons peristiwa sistem.
  • Penyedia Konten: berbagi data antaraplikasi.

Komponen yang Diekspor

Komponen yang ditandai android:exported="true" dapat dipanggil oleh aplikasi lain. Jika komponen tersebut melakukan tindakan sensitif tanpa pemeriksaan, komponen itu menjadi permukaan serangan.

Penguji penetrasi mencari aktivitas, layanan, dan penyedia yang diekspor, yang dapat membocorkan data atau melakukan tindakan berhak istimewa.

<activity android:name=".AdminActivity" android:exported="true"/>

Izin

Aplikasi meminta izin dalam manifest (misalnya INTERNET, READ_SMS, ACCESS_FINE_LOCATION).

Izin yang terlalu luas dapat mengindikasikan perilaku berisiko atau akses data yang berlebihan. Izin khusus juga dapat salah dikonfigurasi sehingga memungkinkan akses tanpa wewenang.

<uses-permission android:name="android.permission.READ_SMS"/>

Sandbox Aplikasi

Android mengisolasi setiap aplikasi dalam sandbox-nya sendiri dengan UID Linux yang unik. Secara bawaan, aplikasi tidak dapat membaca data aplikasi lain.

Kerentanan muncul saat aplikasi melemahkan batas ini, misalnya melalui file yang dapat dibaca semua orang atau penyedia yang terekspos.

Penyimpanan Data Aplikasi

Aplikasi yang terpasang menyimpan data pribadi di bawah /data/data/<package>/: basis data, preferensi bersama, dan file.

Pada perangkat yang telah di-root atau melalui cadangan, penguji penetrasi memeriksa direktori ini untuk mencari rahasia yang disimpan secara tidak aman, yang akan dibahas pada pelajaran selanjutnya.

/data/data/com.example.app/

Penandatanganan

Setiap APK ditandatangani secara digital; tanda tangan tersebut berada di META-INF/. Android memverifikasinya saat pemasangan dan pembaruan.

Jika Anda memodifikasi dan mengemas ulang aplikasi, Anda harus menandatanganinya kembali. Karena itulah pengembang mengandalkan penandatanganan untuk mendeteksi perubahan tanpa izin.

Pustaka Native

Logika yang penting bagi kinerja atau disamarkan mungkin berada dalam pustaka native (file .so) di bawah lib/, yang dikompilasi dari C/C++.

Pustaka ini tidak berada dalam DEX, sehingga memerlukan analisis terpisah dengan pembongkar kode native. Pengembang terkadang menyembunyikan rahasia di sini karena keliru menganggap kode native lebih sulit diperiksa.

lib/arm64-v8a/libnative.so

Pemeriksaan Singkat

Ingat kembali atribut manifest yang mengekspos komponen kepada aplikasi lain.

Rangkuman

Sekarang Anda memahami struktur aplikasi Android:

  • APK adalah ZIP yang memuat AndroidManifest.xml, classes.dex, sumber daya, dan data penandatanganan.
  • Aplikasi menggunakan empat komponen; komponen yang diekspor merupakan permukaan serangan.
  • Izin dan sandbox setiap aplikasi mengatur akses; data pribadi berada di /data/data/.
  • APK ditandatangani untuk mendeteksi perubahan tanpa izin.

Selanjutnya, Anda akan mendekompilasi APK dalam analisis statis.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Struktur Aplikasi Android” gratis?

Ya — teks lengkap “Struktur Aplikasi Android” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Ethical Hacking Academy, upgrade ke CoddyKit PRO. Kursus Ethical Hacking Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Struktur Aplikasi Android”?

Internal APK Kamu berlatih Ethical Hacking Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Ethical Hacking Academy?

Tidak diperlukan pengalaman sebelumnya. Ethical Hacking Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “Struktur Aplikasi Android” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Ethical Hacking Academy ini?

Ya. Setiap pelajaran Ethical Hacking Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Struktur Aplikasi Android
  2. Analisis Statis APK
  3. Analisis Dinamis dengan Frida
  4. Penyimpanan dan Komunikasi yang Tidak Aman
← Kembali ke Ethical Hacking Academy