
Rekomendasi: Aktifkan mekanisme pemeriksaan lisensi pada perangkat, verifikasi fingerprint sertifikat pengembang (SHA-256) sebelum pemasangan paket dari sumber tidak resmi, serta tolak instalasi jika ada ketidaksesuaian.
Pemeriksa melakukan validasi tanda tangan digital di berkas paket, membandingkan fingerprint sertifikat dengan daftar tepercaya untuk memastikan integritas dan asal pakai. Untuk mengekstrak sertifikat gunakan perintah: keytool -printcert -file META-INF/CERT.RSA, untuk menghitung hash gunakan: openssl dgst -sha256 CERT.RSA. Format fingerprint berupa 64 karakter heksadesimal, contoh 3f1a9b7c…[total 64 karakter].
Praktik yang disarankan: simpan fingerprint valid pada server pusat, lakukan sinkronisasi setiap 30 hari, integrasikan pemeriksaan pada pipeline CI sebelum rilis, tolak build jika fingerprint tidak cocok. Terapkan whitelist minimal tiga sertifikat tepercaya serta jadwalkan rotasi kunci dengan pencatatan perubahan per-ID rilis.
Perkuat konfigurasi perangkat: batasi pemasangan melalui mode pemulihan yang sudah ditandatangani, nonaktifkan instalasi sumber luar kecuali melalui proses resmi; aktifkan kebijakan akses proses menggunakan SELinux pada mode enforcing, pantau log sistem untuk entri kegagalan validasi, kirim notifikasi otomatis ke tim keamanan bila terjadi percobaan pemasangan tidak sah.
Langkah praktis segera: ambil fingerprint dari rilis terakhir, simpan sebagai referensi terverifikasi, konfigurasikan pemeriksaan pada perangkat uji. If you liked this article so you would like to collect more info about 1xbet app nicely visit the page. Bila terdeteksi mismatch, blokir instalasi, kumpulkan artefak (paket, sertifikat, timestamp) serta laporkan melalui saluran insiden internal.
Mekanisme verifikasi kunci sistem di Android
Lakukan pemeriksaan tanda tangan berlapis: verifikasi skema v1, v2, v3; pastikan digest minimal SHA-256; tolak tanda tangan berbasis MD5 atau SHA-1; pastikan ukuran kunci ≥2048 bit untuk RSA atau kurva P-256 untuk ECDSA; cocokkan fingerprint sertifikat dengan daftar sertifikat tepercaya pada partisi firmware.
Urutan pemeriksaan saat pemasangan: deteksi skema tanda tangan pada arsip; untuk skema v2/v3 baca signing block di dekat akhir ZIP, hitung digest seluruh konten yang tercakup dan verifikasi signature terhadap digest tersebut; untuk skema v1 periksa META-INF/MANIFEST.MF dan berkas .SF/.RSA lalu validasi PKCS#7; setelah verifikasi kriptografis, validasi rantai sertifikat, tanggal berlaku, dan algoritma kunci. Ketika melakukan pembaruan paket, tolak jika signer baru tidak cocok dengan signer sebelumnya kecuali ada metadata rotasi sertifikat yang sah.
Pengaruh terhadap eksekusi dan izin: pemberian izin berbasis tanda tangan mensyaratkan fingerprint sertifikat identik antara pengeluar izin dan penerima; modul native yang dimuat harus cocok dengan checksum yang tercantum di signing block sehingga loader tidak memuat biner yang dimodifikasi; untuk shared UID, persyaratan kecocokan sertifikat diterapkan sebelum mengizinkan berbagi identitas proses.
Langkah audit teknis yang dapat dijalankan: unzip -p paket.zip META-INF/MANIFEST.MF untuk memeriksa manifest; unzip -p paket.zip META-INF/*.RSA > signer.der lalu openssl pkcs7 -inform DER -in signer.der -print_certs -noout untuk mengekstrak sertifikat; openssl x509 -inform DER -in cert.der -noout -fingerprint -sha256 untuk fingerprint; sha256sum paket.zip untuk membandingkan digest keseluruhan. Tolak paket yang gagal salah satu pemeriksaan kriptografis atau yang menggunakan algoritma/dimensi kunci lemah.
Untuk perangkat dengan penyimpanan kunci terproteksi (TEE/SE), verifikasi harus merujuk pada kunci publik yang diikat ke elemen aman; periksa sertifikat attestation bila tersedia untuk memastikan kunci berasal dari modul keamanan di firmware, bukan dari pengguna biasa.
Bagaimana Android memeriksa tanda tangan APK sistem saat instalasi
Rekomendasi langsung: selalu validasi sidik jari sertifikat (SHA-256) paket instalasi dan tolak paket yang hanya memakai skema tanda v1; prioritaskan tanda yang melindungi seluruh berkas (v2/v3) sebelum memberikan izin istimewa.
Proses pemeriksaan berjalan berurutan: parser paket membaca manifest lalu mengekstrak informasi tanda dari META-INF untuk skema tanda lama (JAR). Untuk skema modern, verifier membaca blok tanda yang berada sebelum tabel ZIP dan memvalidasi tanda kriptografis yang mencakup seluruh file, sehingga integritas isi terjamin dan pemeriksaan jauh lebih cepat daripada verifikasi berbasis entri JAR.
Langkah validasi sertifikat: paket memuat sertifikat publik dalam format PKCS7 di META-INF (*.RSA/*.DSA) untuk skema lama; untuk mengekstrak dan menghitung fingerprint SHA-256 gunakan kombinasi unzip + openssl, misalnya:
unzip -p nama_berkas.zip META-INF/*.RSA > certs.p7b
openssl pkcs7 -inform DER -in certs.p7b -print_certs -out cert.pem
openssl x509 -in cert.pem -noout -fingerprint -sha256
Bandingkan nilai fingerprint tersebut dengan daftar fingerprint tepercaya yang disimpan di server pembaruan atau database manajemen perangkat.
Pemeriksaan saat pembaruan dan pemberian izin: jika paket menggantikan instalasi yang sudah ada, sertifikat penandatangan baru harus cocok persis dengan sertifikat sebelumnya; bila tidak, pemasangan dibatalkan (contoh: kode kesalahan INSTALL_FAILED_UPDATE_INCOMPATIBLE). Paket yang ingin memakai sharedUserId harus ditandatangani oleh sertifikat identik. Aplikasi pada partisi khusus yang mendapat hak istimewa hanya diberi jika sidik jari sertifikat cocok dengan sertifikat platform yang dipercayai firmware.
Rekomendasi operasional: lakukan pemeriksaan sidik jari di pipeline CI/CD sebelum rilis; simpan daftar fingerprint yang disetujui dan gunakan penolakan otomatis pada titik distribusi jika tidak ada kecocokan; pada perangkat produksi, bandingkan fingerprint paket dengan entri metadata paket yang tercatat di /data/system/packages.xml (akses root diperlukan) untuk audit; log setiap kegagalan pencocokan untuk analisis insiden.



