Qu'est-ce que la vulnérabilité ZIP SLIP ? Zip Slip est une vulnérabilité grave qui est répandue dans le processus d'extraction d'archives, permettant aux attaquants d'écrire n'importe quel fichier sur le système. En règle générale, cela entraîne . La vulnérabilité a été découverte et divulguée de manière responsable par l'équipe de sécurité de Snyk avant d'être rendue publique le 5 juin 2018. Le problème affecte des milliers de projets, y compris ceux appartenant à de grandes entreprises telles que HP, Amazon, Apache, Pivotal et bien d'autres. une RCE (Remote Code Execution) Zip Slip est exploité via des archives spécialement conçues avec des noms de fichiers qui incluent un parcours de répertoire . Cette vulnérabilité peut se produire dans de nombreux formats d'archive, tels que tar, ghz, jar, war, cpio, apk, rar et 7z. (eg, ../../evil.sh) Le cœur de cette vulnérabilité est la traversée de répertoires, où un attaquant peut accéder à des parties des fichiers système en dehors du dossier cible. L'attaquant peut alors remplacer le fichier exécutable et l'exécuter à distance, ou attendre que le système ou l'utilisateur appelle le fichier, afin de pouvoir exécuter des commandes sur la machine de la victime. De plus, cette vulnérabilité peut également causer des dommages en écrasant les fichiers de configuration ou d'autres ressources sensibles, et peut être exploitée à la fois sur la machine de l'utilisateur et sur le serveur. Comment exploiter un glissement de code postal Vous devez d'abord me permettre d'exploiter la vulnérabilité ZIP Slip avec une application Android qui a déjà été développée pour vous aider à démarrer. Vous avez également utilisé Google Maps pour télécharger des cartes locales Kita Harus MenTélécharger la ressource en cliquant sur le bouton layar. + Tetapi sebelum kita analyse Flow dari cara kerja apk ini kita harus memakai apk Burpsuite. Pour que votre apk Burpsuite soit une application, vous pouvez utiliser des applications Web et mobiles. Alat ini berfungsi untuk . mendeteksi kerentanan, menganalisis, and mengatasi masalah keamanan Anda bisa mendownload Tools nya dengan Cliquez sur le lien ci-dessous : https://portswigger.net/burp/communitydownload Vous avez besoin d'intercepter des cartes de kit de mau menambahkan nya, et d'analyser kalau apk dans la location karena permintaan API nya masih memakai protocol HTTP tidak menggunakan HTTPS yang dimana memungkinkan Attacker tidak hanya bisa melihat traffic yang di kirim et diterima, Tetapi juga bisa manipuler/memodifikasi request et réponse nya secara Cleartext. Et il n'y a rien de plus simple que de mémoriser HTTP dans la zone sélectionnée, Contohnya jenis serangan yang sedang kita buat ini. Nous vous proposons d'utiliser pour utiliser les outils d'ingénierie inverse qui vous permettent d'analyser statiquement efficacement pour créer des applications permettant de structurer et de loger des applications. JADX Définir l'analyse du fichier en utilisant la configuration . Il est donc possible de configurer le trafic en texte clair pour permettre le domaine yang diizinkan. Tetapi apakah domain ini benar-benar digunakan pour le résumé de CleartextTraffic. Bisa saja ini dibuat hanya untuk pengujian / tidak digunakan dalam production. network_security_config.xml cleartextTrafficPermitted="true" ini adalah Hasil intercepter ketika kita mentélécharger des cartes nya yang dimana dia mengambil fichier ZIP au format .ghz Dan mencoba mendownload file .ghz secara manual dengan copas di laptop. Berikut adalah isi fichier ZIP laconique. Pour récupérer les données de recherche, vous devez décompresser une autre application avec la commande de l'émulateur mobile shell adb nya et pastikan juga kalau kita sudah memiliki akses root di emulatornya. find / | grep australia oceania_nauru.map Vous devez dilihat kalau path file yang di décompresser à partir de : /data/media/0/Android/data/io.hextree.pocketmaps/files/Download/pocketmaps/maps/ Ici, vous trouverez ce menu et vous aurez besoin d'une application benar-benar meng-unzip file map nya. Étape d'analyse de la vulnérabilité Mari kita lihat lebih dekat pada arbitraire file write Vulnerability dalam aplikasi nya, Seperti yang sudah kita ketahui issue nya terkait dengan File ZIP Maps Handling. Analyse statique Lakukan lagi avec mot-clé mencari : agar mengetahui class kode nya meng-handle file ZIP mapnya. ZipEntry Sebelum kita analyse lebih dalam code nya, dit akan mengikuti panduan dari snyk team pour mencari kode yang sering diimplementasi tetapi rentan. Berikut adalah salah satu panduan yang khusus pour bahasa java, Bisa baca lebih lanjut : https://github.com/snyk/zip-slip-vulnerability Avantages : Kode berikut rentan terhadap serangan karena tidak melakukan validasi yang memadai terhadap jalur file dalam arsip zip sebelum mengekstraknya. Ici, donne un nom de fichier à un autre fichier, seperti . Il s'agit d'un fichier succinct jusqu'à la destination de yang ditentukan. zip slip e.getName() ../../malicious.sh destinationDir InputStream input = zip.getInputStream(e); IOUtils.copy(input, write(f)); Setelah file dibuat, konten file langsung disalin tanpa memeriksa jalur keluaran apakah sudah aman atau tidak. J'ai juste un menu succinct qui vous permet d'accéder à l'application racine, dans le dossier du système racine dans lequel vous avez déjà trouvé les diakses oleh aplikasi, c'est-à-dire qu'il y a du contenu dans l'application. Karena kita sudah mengetahui kode yang rentan sesuai panduan mari kita code d'analyse de l'apk nya : Chemin Pembuatan Tanpa Validasi : String str3 = file.getAbsolutePath() + File.separator + nextEntry.getName(); Ici, j'ai un fichier ( ) indiquant le chemin d'accès indiqué dans votre fichier ( ) avec le nom de l'entrée zip ( ). Cependant, vous permet d'accéder au chemin d'accès des éléments en fonction de , et de créer un fichier sous la direction de votre fichier ( ). str3 file.getAbsolutePath() nextEntry.getName() nextEntry.getName() ../../ file Dessin du chemin Setelah, fichier atau direktori dibuat langue: if (nextEntry.isDirectory()) { new File(str3).mkdir(); } else { e(zipInputStream, str3, eVar, "" + i3 + " Unzipping " + str2, size, null); } Je membuat atau menulis file tanpa memastikan bahwa adalah jalur yang aman. str3 Phase d'exploitation Pour que cela se produise, 2 heures pour l'environnement sont les suivantes : : extension HTTP Mock de burpsuite pour cette réponse ainsi que de l'application avec les règles mencocokkan et . Pada contoh dibawah ini saya merubah réponse nya dengan memilih Redirect to URL, sehingga setiap réponse aplikasi secara temps réel akan mengambil réponse dari HTTP Mock. Configuration de l'environnement de moquerie HTTP dynamique input manual http history 2. : vous pouvez demander à ce que le kit de cocokkan soit redirigé vers un serveur local malveillant pour obtenir un zip malveillant : Configuration de l'environnement du serveur local 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) Comment êtes-vous arrivé dans la cybersécurité ? Pourquoi êtes-vous une autorité en matière de sécurité numérique ? Quelle est votre expertise dans ce domaine ? La cybercriminalité est en constante évolution. Quelles sont les nouveautés dans le monde de la cybercriminalité que la communauté HackerNoon pourrait connaître dans le cadre de la lutte contre les fraudeurs numériques ? Existe-t-il des tendances ou des menaces émergentes en matière de cybersécurité auxquelles les lecteurs devraient prêter attention ? Chevaux de Troie, malwares, logiciels espions et bien plus encore. Que savez-vous des derniers bugs qui pourraient infecter nos chers PC et voler nos informations ? Mais ce n'est pas tout : faites-nous savoir quels autres cyber-malveillants existent ! Comment assurer votre sécurité en ligne ? Comment naviguez-vous dans les nouvelles technologies présentant des vulnérabilités ? Les maisons intelligentes, l’IA et l’Internet des objets ont leurs vulnérabilités. Réflexions supplémentaires Conclusion Assurez-vous de supprimer toutes les informations ci-dessus avant de rédiger et de soumettre votre brouillon. Merci !