paint-brush
Mbere Amakosa Ataramenyekana Reka Hackers Banyere Amamiriyoni ya Sisitemu Binyuze muri dosiye zisa n'inzirakarenganena@psychopper
338 gusoma
338 gusoma

Mbere Amakosa Ataramenyekana Reka Hackers Banyere Amamiriyoni ya Sisitemu Binyuze muri dosiye zisa n'inzirakarengane

na Fikri Azhar13m2025/01/28
Read on Terminal Reader

Birebire cyane; Gusoma

Zip Slip ni intege nke zikomeye zikwirakwira mugikorwa cyo gukuramo ububiko. Izi mbogamizi zavumbuwe kandi zishyirwa ahagaragara n’itsinda ry’umutekano rya Snyk mbere yuko rishyirwa ahagaragara ku ya 5 Kamena 2018. Iki kibazo kireba imishinga ibihumbi, harimo iy'amasosiyete akomeye nka HP, Amazon, Apache, Pivotal n'ibindi byinshi.
featured image - Mbere Amakosa Ataramenyekana Reka Hackers Banyere Amamiriyoni ya Sisitemu Binyuze muri dosiye zisa n'inzirakarengane
Fikri Azhar HackerNoon profile picture
0-item



Niki ZIP SLIP Intege nke?

Zip Slip nintege nke zikomeye zikwirakwira mugikorwa cyo gukuramo archive, zemerera abateye kwandika dosiye iyo ari yo yose kuri sisitemu. Mubisanzwe, ibisubizo muri RCE (Gukora Kode ya kure) . Izi mbogamizi zavumbuwe kandi zishyirwa ahagaragara n’itsinda ry’umutekano rya Snyk mbere yuko rishyirwa ahagaragara ku ya 5 Kamena 2018. Iki kibazo kireba imishinga ibihumbi, harimo iy'ibigo bikomeye nka HP, Amazon, Apache, Pivotal, n'ibindi byinshi.


Zip Slip ikoreshwa binyuze mububiko bwihariye bwabitswe hamwe namazina ya fayili arimo ububiko bwububiko (eg, ../../evil.sh) . Iyi ntege nke irashobora kugaragara muburyo bwinshi bwububiko, nka tar, ghz, jar, intambara, cpio, apk, rar, na 7z.


Intandaro yiyi ntege nke ni diregiteri yububiko, aho igitero gishobora kugera kubice bya dosiye ya sisitemu hanze yububiko. Igitero gishobora noneho kurenga dosiye ikorwa hanyuma ikayikoresha kure, cyangwa gutegereza sisitemu cyangwa uyikoresha guhamagara dosiye, kugirango bashobore gukoresha amategeko kumashini yuwahohotewe. Mubyongeyeho, iyi ntege irashobora kandi guteza ibyangiritse mukwandika dosiye yiboneza cyangwa ubundi buryo bworoshye, kandi irashobora gukoreshwa haba kumashini yumukoresha ndetse no kuri seriveri.


Nigute Wokoresha ZIP Slip

Kali ini untuk mempelajari cara ikoresha ZIP Slip Vulnerability nya memakai aplikasi android yang sengaja rentan dibuat untuk praktikum ini.


Ini adalah aplikasi seperti Ikarita ya Google tetapi untuk menambahkan ikarita yaho kita harus mendownload umutungo nya dengan cara kanda buto + di layar.


Tetapi sebelum kita isesengura Flow dari cara kerja apk ini kita harus memakai apk Burpsuite. Untuk yang belum tau apk Burpsuite adalah aplikasi yang digunakan untuk menguji keamanan aplikasi web dan mobile. Alat ini berfungsi untuk mendeteksi kerentanan, menganalisis, dan mengatasi masalah keamanan .


Anda bisa mendownload Ibikoresho nya dengan Kanda Ihuza dibawah ini:

https://portswigger.net/burp/communitydownload


Berikut adalah hasil Guhagarika ketika kita mau menambahkan ikarita nya, dan bisa di gusesengura kalau apk ini rentan karena permintaan API nya masih memakai protocole HTTP tidak menggunakan HTTPS yang dimana memungkinkan Igitero tidak hanya bisa melihat traffic yang di kirim dan diter memodifikasi gusaba dan igisubizo nya secara.


Dan fakta nya bahwa ketika masih memakai HTTP dapat membuka seluruh agace permukaan serangan, Contohnya jenis serangan yang sedang kita buat ini.



Bisa dilihat juga menggunakan Ibikoresho JADX untuk melakukan Reverse Engineering yang dimana kita bisa melakukan static analyse pada sebuah aplikasi memungkinkan penyerang untuk memahami struktur dan logika aplikasi.


Setelah di gusesengura di dosiye network_security_config.xml aplikasi membuat konfigurasi cleartextTrafficPermitted="true" . Sehingga konfigurasi ini mengizinkan inyandiko isobanutse traffic traffic di setiap permintaan untuk domain yang diizinkan. Tetapi apakah domain ini benar-benar digunakan untuk CleartextTraffic tersebut. Bisa saja ini dibuat hanya untuk pengujian / tidak digunakan dalam umusaruro.



ini adalah Hasil guhagarika ketika kita mendownload amakarita nya yang dimana dia mengambil dosiye ZIP dengan format .ghz





Dan mencoba mendownload dosiye .ghz secara intoki dengan copas di laptop. Berikut adalah isi dosiye ZIP tersebut.


Untuk mengetahui lokasi data yang di unzip oleh aplikasi kita bisa gunakan command find / | grep australia oceania_nauru.map di adb shell mobile emulator nya dan pastikan juga kalau kita sudah memiliki akses umuzi di emulatornya.





Bisa dilihat kalau dosiye yang di unzip ada di:

/data/media/0/Android/data/io.hextree.pocketmaps/files/Download/pocketmaps/maps/

Ini juga menunjukkan kepada kita bahwa aplikasi benar-benar meng-unzip dosiye ikarita nya.





Intambwe yo Gusesengura Intambwe


Mari kita lihat lebih dekat pada arbitary dosiye andika Vulnerability dalam aplikasi nya, Seperti yang sudah kita ketahui ikibazo nya terkait dengan File ZIP Ikarita. Lakukan lagi static isesengura dengan mencari ijambo ryibanze: ZipEntry agar mengetahui class kode nya meng-hand dosiye ZIP mapnya.



Sebelum kita gusesengura lebih dalam code nya, saya akan mengikuti panduan dari snyk ikipe untuk mencari kode yang sering diimplementasi tetapi rentan. Berikut adalah salah satu panduan yang khusus untuk bahasa java, Bisa baca lebih lanjut: https://github.com/snyk/zip-slip-vulnerability

Penjelasan:

Kode berikut rentan terhadap serangan zip slip karena tidak melakukan validasi yang memadai terhadap jalur dosiye dalam arsip zip sebelum mengekstraknya. Di sini, e.getName() dapat mengembalikan nama dosiye dengan jalur relatif yang berbahaya, seperti ../../malicious.sh . Ini berarti dosiye tersebut bisa diekstrak di luar aho destinationDir yang ditentukan.

 InputStream input = zip.getInputStream(e); IOUtils.copy(input, write(f));

Setelah dosiye dibuat, konten dosiye langsung disalin tanpa memeriksa jalur keluaran apakah sudah aman atau tidak. Jika jalur tersebut menuju ke lokasi berbahaya, seperti direktori umuzi sistem atau ububiko bwa lain yang seharusnya tidak dapat diakses oleh aplikasi, itu bisa sangat berbahaya.


Karena kita sudah mengetahui kode yang rentan sesuai panduan mari kita isesengura code di apk nya:

Inzira ya Pembuatan Tanpa Validasi:

 String str3 = file.getAbsolutePath() + File.separator + nextEntry.getName();

Di sini, dosiye ya jalur ( str3 ) dibuat dengan menggabungkan inzira dari direktori tujuan ( file.getAbsolutePath() ) dengan nama kwinjira zip ( nextEntry.getName() ). Namun, nextEntry.getName() bisa berisi elemen inzira berbahaya seperti ../../ , yang dapat menyebabkan dosiye diekstrak di luar direktori yang dimaksud ( file ).

Setelah inzira dibuat, dosiye atau direktori dibuat langsung:

 if (nextEntry.isDirectory()) { new File(str3).mkdir(); } else { e(zipInputStream, str3, eVar, "" + i3 + " Unzipping " + str2, size, null); }

Ini membuat atau menulis dosiye tanpa memastikan bahwa str3 adalah jalur yang aman.




Icyiciro cyo gushakisha

Untuk di tahap ini saya menyiapkan 2 hal untuk ibidukikije serangan nya:

  1. Gushiraho Dynamic HTTP Urwenya Ibidukikije : kwagura HTTP Urwenya dari burpsuite ini dapat mengubah igisubizo asli dari aplikasinya dengan mencocokkan amategeko yang sudah kita kirimkan dari http history maupun input manual . Pada contoh dibawah ini saya merubah igisubizo nya dengan memilih Kongera kuyobora URL, sehingga setiap igisubizo aplikasi secara igihe nyacyo akan mengambil igisubizo dari HTTP Urwenya.


2 .

 from flask import Flask, jsonify, send_file import zipfile, io app = Flask(__name__) @app.route('/map.json') def map_json(): response = { "maps-0.13.0_0-path": "maps", "maps-0.13.0_0": [ {"name": "maliciousmaps_USA", "size": "300k", "time": "2025-01"}, ] } return jsonify(response) @app.route('/map.ghz') def map_archive(): # Create a ZipFile object zip_buffer = io.BytesIO() filename = "../../downloads/hax" with zipfile.ZipFile(zip_buffer, 'w', zipfile.ZIP_DEFLATED) as zip_file: content = "You have been hacked" zip_file.writestr(filename, content) zip_buffer.seek(0) return send_file( zip_buffer, mimetype='application/zip', as_attachment=True, download_name='map.ghz' ) if __name__ == '__main__': app.run(debug=True, port=1234)













Nigute winjiye mumutekano wa Cyber?

Kuki uri umutegetsi kumutekano wa digitale?

Ni ubuhe buhanga bwawe muri uyu mwanya?

Icyaha cyikoranabuhanga gihora gitera imbere. Ni iki gishya ku isi ya Cybercrime umuryango wa HackerNoon ushobora kumenya mu kurwanya abajura ba digitale?

Haba hari inzira zigaragara za Cybersecurity cyangwa iterabwoba abasomyi bagomba kureba?

Trojans, malware, spyware, nibindi byinshi. Ni ubuhe butumwa buri ku makosa aheruka ashobora kwanduza PC dukunda no gufata amakuru yacu? Ntabwo bigarukira aho, nubwo; tumenyeshe ibindi bibi bya cyber biri hanze aha!

Nigute ushobora kwirinda umutekano kumurongo?

Nigute uyobora tekinoroji nshya ifite intege nke? Amazu meza, AI, na enterineti yibintu bifite intege nke.

Ibitekerezo by'inyongera


Umwanzuro


Nyamuneka reba neza gusiba amakuru yose hejuru mbere yo kwandika no gutanga umushinga wawe. Murakoze!