Rumah > Operasi dan penyelenggaraan > Keselamatan > Cara menyahsulit sumber apl dalam kejuruteraan terbalik cocos2d-LUA

Cara menyahsulit sumber apl dalam kejuruteraan terbalik cocos2d-LUA

WBOY
Lepaskan: 2023-05-16 19:11:10
ke hadapan
2135 orang telah melayarinya

Mari kita ambil Dashen apk sebagai contoh Melalui analisis skrip lua penyahsulitan aplikasi sebelumnya, kita boleh menyahsulit skrip lua apk Dashen Sekarang mari kita menyahsulit sumbernya (fail dan gambar konfigurasi, dsb.). Mari kita ambil fail konfigurasi yang lebih penting sebagai contoh, sebelum penyahsulitan:
Cara menyahsulit sumber apl dalam kejuruteraan terbalik cocos2d-LUA 

Pengepala fail juga mempunyai nilai tandatangan: fuckyou!. Melihat ini, kami mula-mula memikirkan sama ada ia juga disulitkan dengan xxtea Kami menggunakan kaedah di atas untuk menyahsulitnya dengan xxtea, dan kemudian menyahmampatnya Kami mendapati bahawa ia masih bercelaru terpaksa menafikan apa yang kita katakan tadi. Kami terus menyahsulit fail konfigurasi langkah demi langkah.

Fikirkan sejenak, pengepala fail ialah: fuckyou! Jika anda ingin menyahsulit fail, anda semestinya perlu memproses rentetan: fuckyou! , jadi kita sepatutnya boleh mencari rentetan fuckyou dalam idaPro, dan kemudian menggunakan analisis fungsi, nyahpepijat dan penyahsulitan dalam segmen kod di mana rentetan fuckyou berada. Buka idaPro dan buka paparan rentetan, cari "fuckyou" untuk mengesahkan hipotesis kami

Cara menyahsulit sumber apl dalam kejuruteraan terbalik cocos2d-LUA  

Tiada apa-apa! Tekaan saya ialah pengoptimuman telah dilakukan dan rentetan telah dioptimumkan di suatu tempat.

Petunjuk telah rosak, tetapi rasa ingin tahu masih membolehkan kami meneruskan Pada masa ini, kami boleh menyemak imbas kod sumber rangka kerja cocos2d, digabungkan dengan beberapa maklumat di Internet, dan mendapati bahawa pemprosesan fail cocos2d dirangkumkan ke dalam. kelas CCFileUtils:

Cara menyahsulit sumber apl dalam kejuruteraan terbalik cocos2d-LUA                                                                                                                                                        Pergi ke idaPro, dalam tetingkap eksport, cari getData:

Cara menyahsulit sumber apl dalam kejuruteraan terbalik cocos2d-LUA Masukkan dua fungsi ini, nyahkompilasi dan mempunyai lihat, mereka tidak kelihatan sama, jadi langkau, tetapi tuliskannya dahulu semasa penyahpepijatan dinamik, kita boleh berehat di sini.

Mari lihat getFileData:

Cara menyahsulit sumber apl dalam kejuruteraan terbalik cocos2d-LUA

                                                                                

 

Tengok gambar di atas, rasa macam ni je, haha! Tetapi kita masih perlu terus menganalisis dan mengesahkan. Apabila fungsi memproses tanda dalam pengepala fail, ia tidak membandingkannya secara langsung dengan aksara tetapi membandingkannya satu demi satu dengan nilai ASCII mereka, jadi kami tidak dapat mencari fuckyou dalam tetingkap rentetan! daripada. Kemudian lihat ke bawah, apabila fungsi menentukan bahawa teks itu mematuhi format yang disulitkan, ia akan mengalih keluar 8 bait pertama (sialan anda!), dan kemudian melakukan operasi XOR dengan nilai dalam jadual XOR, menggelungkan setiap 256 bait .

Kita boleh lihat byte_A1C55F:Cara menyahsulit sumber apl dalam kejuruteraan terbalik cocos2d-LUA

Pada ketika ini, pada asasnya kita boleh menentukan fungsi dan proses penyahsulitan fail. Kita boleh nyahpepijat dan mengesahkan secara dinamik sekali lagi. Selepas apl memanggil fungsi ini, mesti ada kandungan teks yang jelas dalam ingatan. Apabila kami nyahpepijat, kami mengganggu pada permulaan dan penghujung fungsi getData dan CCFileUtilsAndroid:doGetFileData Fungsi GetData mengganggu: Cara menyahsulit sumber apl dalam kejuruteraan terbalik cocos2d-LUA

 

.

Walaupun kedua-dua fungsi terganggu, ia hanya berhenti seketika pada titik putus doGetFileData, menunjukkan bahawa fungsi doGetFileData digunakan semasa proses penyahsulitan, yang selaras dengan jangkaan kami Lihat daftar dan ingatan:

Cara menyahsulit sumber apl dalam kejuruteraan terbalik cocos2d-LUABaiklah, sekarang, kita boleh menyalin jadual XOR byte_A1C55F, dan kemudian meniru proses penyahsulitan apl (anda boleh mencari skrip penyahkodan xor daripada GitHub dan mengubah suainya sedikit) dan menulis alat kecil ke Semua sumber daripada Dashen.apk telah dinyahsulit:

Cara menyahsulit sumber apl dalam kejuruteraan terbalik cocos2d-LUA

Atas ialah kandungan terperinci Cara menyahsulit sumber apl dalam kejuruteraan terbalik cocos2d-LUA. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan