Posting ini terakhir diedit oleh Summer pada 2025-10-14 10:59
Versi kamera virtual yang telah diretas oleh penulis sebelumnya telah memposting video di Bilibili
Versi sebelumnya yang saya retak juga retak Tautan:Login hyperlink terlihat. Baru-baru ini, seorang klien meminta saya untuk memecahkan versi lain dari kamera virtual oleh penulis yang sama dan hanya mempelajarinya Periksa cangkangnya terlebih dahulu, tulangan gratis Bangbang, relatif sederhana, hanya deteksi sederhana Frida, tautan di atas telah membuat analisis yang sangat rinci tentang penguatan dan deteksi versi gratis Bangbang, menggunakan berbagai alat seperti ebpf Kait dengan frida terlebih dahulu, ada tanda-tanda crash, mungkin langkah kaki disuntikkan terlalu dini, atau alamatnya tidak dapat diakses saat hook sudah siap, dengan mengoreksi kode hook script ke frida
Secara umum, waktu injeksi sedikit tertunda, yang memecahkan masalah crash injeksi hook Proses aktivasinya mendapatkan data yang dikembalikan oleh aktivasi, dan dia perlu meminta server untuk memverifikasi bahwa dia mendapatkan stempel waktu aktivasi
Pengguna kemudian diberi waktu dengan menghitung perbedaan waktu. Kamera virtual ini juga meminta izin root, jika tidak, tidak ada komunikasi lintas proses versi, Secara total, kamera ini memiliki tiga proses yang dimulai Salah satunya adalah proses utama aplikasi kamera, yaitu komunikasi lintas proses antara lapisan Java dan lapisan C++ Yang kedua adalah bahwa proses utama menjalankan parameter input vcmplay biner yang dapat dieksekusi pada baris perintah melalui lapisan java untuk memulai proses kedua, yang terutama bertanggung jawab atas komunikasi lintas proses antara proses utama vcmpaly kamera dan proses libvc.so yang menyuntikkan ke dalam layanan kamera kamera sistem, dan cara komunikasi utama adalah ibinder. Yang ketiga adalah file SO dari server kamera yang disuntikkan ke layanan sistem. Jika aplikasi tidak dapat memperoleh hak root atau ada masalah jaringan, prosesnya akan gagal dimulai
Kamera ini membutuhkan kode aktivasi untuk mengaktifkan dan menggunakan, dan dengan menganalisis lapisan Java, semua antarmukanya terhubung Aktivasi mengharuskan meminta server untuk mendapatkan informasi verifikasi
Data yang Anda dapatkan semuanya dienkripsi Dengan menganalisis biner VCMPLAY yang dapat dieksekusi, kita bisa mendapatkan bahwa data yang diminta adalah enkripsi RSA, dan kuncinya terletak melalui alat EBPF stackplz, dan kunci enkripsi adalah 128 bit Satu kata lagi Aplikasi ini sangat licik, dia menambahkan akhiran SO ke vcmplay, yang membuat orang mengira itu adalah file SO, dan perlu dimuat ke dalam memori Java, tetapi sebenarnya itu adalah proses lain. Saya mengaitkan server kamera layanan kamera libvc.so menemukan bahwa frida mogok segera setelah layanan kamera lampirkan mogok, saya tidak tahu apakah itu terdeteksi, saya menganalisisnya untuk waktu yang lama, dan secara tidak sengaja menemukan bahwa VCMPLAY mati sekali, dan dapat mengaitkan Diduga mungkin proses VCMPLAY yang mendeteksi proses cameraserve Saya menggunakan ida untuk men-debug proses VCMpay, dan menemukan bahwa dia masih memiliki anti-debugging, memindai tracepid di proc/self/status untuk menentukan apakah itu di-debug, dan yang lebih menakutkan adalah dia menemukan bahwa anti-debugging bukanlah crash program, dia benar-benar menghapus file penting di sistem Android melalui izin root, dan kemudian telepon dimulai ulang ke status double-clearing, dan sistem harus diinisialisasi untuk masuk ke sistem, dan semua yang ada di telepon hilang. Saya menulis modul kait kernel kpm melalui kernelpatch dan melewati debugging Setelah beberapa malam tanpa tidur di sini, logika umumnya telah ditemukan, dan diperkirakan tidak akan mudah untuk retak. Akan dilanjutkan nanti......
|