Rumah > Artikel > Operasi dan penyelenggaraan > Apakah analisis cangkerang web bagi ubah bentuk yang dikelirukan?
Pada asalnya, Webshell sering dirujuk sebagai skrip untuk pentadbir pelayan web untuk mengurus pelayan dari jauh. Kemudian, dengan lahirnya beberapa alat pengurusan Webshell, proses mendapatkan kebenaran Web telah dipermudahkan, jadi ia secara beransur-ansur dipanggil skrip alat pencerobohan Web.
Webshell berbeza daripada kelemahan, tetapi menggunakan kelemahan aplikasi atau kelemahan pelayan (kelemahan muat naik fail, kerentanan kemasukan fail, dll.) untuk memuat naik fail skrip ke pelayan untuk eksploitasi berikutnya, yang tergolong dalam penembusan penembusan berikutnya ujian dan peringkat Pelaksanaan TA0002 (pelaksanaan) ATT&CK.
Rajah 1 TA0002
Sumber rujukan: https://mitre-attack.github.io/attack-navigator/ (ATT&CK Navigator)
Untuk memintas peralatan pengesanan dan perlindungan, perisian, dsb., penyerang sering menukar kaedah penulisan Webshell mereka untuk memastikan skrip mereka tidak akan dikesan sambil memastikan kefungsian Antaranya, skrip php lebih menonjol kerana Terdapat banyak yang tersedia berfungsi dalam bahasa skrip PHP, yang membawa kepada kekeliruan yang sentiasa berubah dan ubah bentuk kaedah penulisan dalam PHP.
Trojan satu ayat juga tergolong dalam skrip Webshell Rakan-rakan yang berminat dengan Trojan satu ayat boleh merujuk kepada "Transformasi Berbilang bagi Trojan Satu Ayat" untuk mempelajari dan memahaminya sendiri tidak akan terperinci lagi.
Apabila saya menganalisis Webshell sebelum ini, saya mendapati terdapat sejenis Webshell yang boleh memintas sepenuhnya pelbagai perisian pengesanan Skrip jenis ini selalunya kelihatan seperti Ia tidak bermakna dan tidak mempunyai ciri Webshell yang biasa, tetapi selepas menggali lapisan, tidak sukar untuk mencari idea jenis skrip yang dikaburkan ini. Saya baru-baru ini menerima skrip keliru yang menarik, dan saya ingin berkongsi proses analisis daripada skrip bersama rakan-rakan saya juga berharap ia dapat dijadikan sebagai titik permulaan.
Apabila saya mula-mula melihat skrip ini, saya melihat fungsi eval yang jelas dalam kandungannya, jadi saya secara naluriah membaca bahagian kod ini It telah diekstrak, tetapi ia tidak mencukupi untuk membuktikan apa-apa, kerana kandungan itu semuanya kelihatan kod bercelaru, tanpa sebarang kesan WebShell.
Jika anda melihat dengan teliti, anda boleh mendapati bahawa sebagai tambahan kepada eval, tiga fungsi gzinflate, base64_decode dan str_rot13 juga mungkin anda boleh mulakan dengan tiga fungsi ini untuk mencari kejayaan dalam analisis.
Kandungan skrip Rajah 2
str_rot13()
Pengekodan ROT13 menggerakkan setiap huruf ke hadapan 13 huruf dalam abjad. Nombor dan aksara bukan abjad kekal tidak berubah (sifir Caesar).
base64_decode()
Base64 mengekod kandungan rentetan.
Gzinflate
menggunakan kaedah pengekodan ZLIB_ENCODING_RAW secara lalai untuk data dan menggunakan algoritma pemampatan data mengempiskan, ia menggunakan pemampatan LZ7 dahulu dan kemudian pengekodan Huffman.
Rajah 3 Panggil arahan gema
Gunakan arahan gema untuk menghuraikan kandungan Ternyata str_rot13() telah dilaksanakan, jadi saya mengulangi idea ini dan cuba mengupas kandungan asal lapisan demi lapisan.
Rajah 4 Keputusan Analisis
Selepas tiga gema Selepas menguraikan arahan berulang kali, apa yang muncul akhirnya bukan lagi kod yang membosankan, yang membuktikan bahawa arah analisis mungkin betul, dan berdasarkan jumlah kod, ia terasa seperti kuda Trojan dengan pelbagai fungsi, biasanya dikenali sebagai kuda.
Rajah 5 Penghuraian berbilang
Baik lelaki, dia memang kuda besar.
Selepas penyelidikan, didapati bahawa fungsi Trojan ini termasuk mendapatkan maklumat sistem, membaca direktori, memuat turun fail, memuat naik fail, dll.
Gambar 6 Penampilan asal Malaysia
Atas ialah kandungan terperinci Apakah analisis cangkerang web bagi ubah bentuk yang dikelirukan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!