Bagaimana untuk menyelesaikan kelemahan ZipperDown

王林
Lepaskan: 2023-05-13 11:55:21
ke hadapan
1054 orang telah melayarinya

Syarat serangan untuk kerentanan keselamatan ZipperDown:

1 Apl menggunakan ZipArchive

2 Proses penghantaran pakej zip tertentu yang dikeluarkan oleh Apl tidak disulitkan, dan zip pakej juga tidak disulitkan.

3 Apl menggunakan JSPatch atau enjin pelaksanaan lain, dan skrip tempatan tidak disulitkan selagi ia diletakkan dalam direktori yang ditentukan, dan kesahihannya skrip tempatan tidak disahkan

4 Pengguna Sambung ke tempat liputan WIFI yang tidak boleh dipercayai untuk komunikasi rangkaian

Kaedah untuk memintas kaedah pemintasan ini sendiri:

1. Baiki pustaka SSZipArchive Dalam fungsi penyahmampatan unzipFileAtPath, mungkin terdapat Intercept rentetan "../" semasa melintasi direktori.

2 Apabila pelanggan berkomunikasi dengan pelayan, gunakan protokol penghantaran selamat HTTPS untuk memastikan bahawa data dalam interaksi antara APP dan pelayan disulitkan oleh protokol HTTPS

3 . Muat turun zip APP Fail pakej disulitkan dan dilindungi semasa penghantaran, dan integriti dan kesahihan pakej zip disahkan pada klien untuk mengelakkannya daripada diganti

4 dalam APP dan menyulitkan skrip setempat Sahkan integriti dan kesahihan untuk mengelakkan penggantian; bergantung terutamanya pada Apl tertentu dan kebenaran yang diperolehinya, dan kerentanan serupa "Kerentanan Traversal Direktori Fail" juga ditemui pada platform Android

Berkenaan kerentanan traversal direktori fail, premis untuk kerentanan berlaku: Gunakan penyahmampatan dalam Fail aplikasi Android, seperti mekanisme pemuatan dinamik, muat turun apk/zip, dan kemudian nyahmampatkannya secara setempat

Sebab kerentanan

Kerana ZipOutputStream; class tidak mengenakan sebarang sekatan pada nama fail semasa memampatkan fail Jika pakej zip yang dimuat turun dipintas dan diubah suai secara berniat jahat, nama fail boleh dinamakan "../../../../data/data/xxx. .xxx.x/xxx" kerana Android berasaskan Sistem Linux, dalam sistem Linux, simbol ../ mewakili kembali ke direktori atas, jadi anda boleh mendapatkan beberapa simbol lagi di sini, supaya anda akan kembali ke akar direktori sistem Android, dan kemudian masukkan direktori kotak pasir aplikasi semasa , tulis fail.

Risiko kerentanan ZipperDown

Melalui kerentanan ini, penyerang boleh memusnahkan data aplikasi, mendapatkan data peribadi pengguna, malah mendapat keupayaan untuk melaksanakan kod arbitrari.

Langkah pengelakan; Kaedah pemintasan sendiri oleh pembangun:

1 Apabila menyahmampat ZipEntry, tapis penyahmampatan fail dengan aksara khas atau nyahmampat kepada nama fail tempatan yang tidak boleh mengandungi aksara khas; >

2. Apabila pelanggan berkomunikasi dengan pelayan, gunakan protokol penghantaran selamat HTTPS untuk memastikan bahawa data dalam interaksi antara APP dan pelayan disulitkan oleh protokol HTTPS

3 zip APP Fail pakej disulitkan dan dilindungi semasa penghantaran, dan integriti dan kesahihan pakej zip disahkan pada klien untuk mengelakkannya daripada diganti; 🎜>1. Penyulitan Cinta menyediakan pelan penilaian untuk kerentanan ini untuk mengesan sama ada Apl mempunyai kerentanan ini

2. Gunakan SDK Penyulitan Protokol Komunikasi Penyulitan Ai untuk menyulitkan data semasa proses komunikasi dan memastikan bahawa data tidak diusik;

Penyelesaian Keselamatan Pengguna

Jangan gunakan tempat liputan WIFI yang tidak diperakui dan kemas kini Apl pada telefon anda tepat pada masanya.

Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan kelemahan ZipperDown. 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