Skip to content

is a PoC script designed to demonstrate a potential vulnerability within the UDF (Universal Disk Format) filesystem implementation on macOS systems

License

Notifications You must be signed in to change notification settings

geniuszlyy/GenPoCUDFExploit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

EN

GenUDFExploit is a Proof-of-Concept (PoC) script designed to demonstrate a potential vulnerability within the UDF (Universal Disk Format) filesystem implementation on macOS systems. It programmatically mounts a disk image using UDF and sends arbitrary ioctl commands to a kernel extension, which can potentially lead to a kernel panic. This code serves as an educational tool for security researchers and enthusiasts.


Features

  • Creates a temporary disk image (.dmg) and mounts it using the UDF filesystem.
  • Loads the UDF kernel extension (udf.kext) if it's not already loaded.
  • Attempts to find and access readable disk devices.
  • Demonstrates possible kernel vulnerabilities through malformed mount arguments.

Prerequisites

  • macOS system.
  • Clang compiler for building the program.

How to Compile and Run

Step 1: Compile the Program

To compile the program, use clang:

clang GenUDFExploit.m -o GenUDFExploit

Step 2: Run the Program

Run the compiled binary:

./GenUDFExploit

Example Output

Создаем образ диска по пути: /tmp/GenUDFExploit_disk.dmg
Файловая система UDF успешно загружена
Каталог для монтирования: /tmp/GenUDFExploit_tmp.XXXXXX
Удалось ли избежать kernel panic?

Disclaimer

This code is intended for educational purposes only.
It demonstrates a potential kernel vulnerability and should only be used in controlled environments. Use at your own risk, and always respect the laws and regulations of your country.

RU

GenUDFExploit - это Proof-of-Concept (PoC) скрипт, предназначенный для демонстрации возможной уязвимости в реализации файловой системы UDF (Universal Disk Format) на macOS. Скрипт программно монтирует образ диска, используя файловую систему UDF, и отправляет произвольные ioctl команды в расширение ядра, что может потенциально привести к панике ядра. Этот код служит в качестве образовательного инструмента для исследователей безопасности и энтузиастов.


Функциональные возможности

  • Создает временный образ диска (.dmg) и монтирует его с использованием файловой системы UDF.
  • Загружает расширение ядра UDF (udf.kext), если оно еще не загружено.
  • Пытается найти и получить доступ к читаемым устройствам диска.
  • Демонстрирует возможные уязвимости ядра с использованием некорректных аргументов монтирования.

Требования

  • Система macOS.
  • Компилятор Clang для сборки программы.

Как скомпилировать и запустить

Шаг 1: Компиляция программы

Для компиляции программы используйте clang:

clang GenUDFExploit.m -o GenUDFExploit

Шаг 2: Запуск программы

Запустите скомпилированный бинарный файл:

./GenUDFExploit

Пример вывода результата

Создаем образ диска по пути: /tmp/GenUDFExploit_disk.dmg
Файловая система UDF успешно загружена
Каталог для монтирования: /tmp/GenUDFExploit_tmp.XXXXXX
Удалось ли избежать kernel panic?

Отказ от ответственности

Этот код предназначен исключительно для образовательных целей.
Он демонстрирует возможную уязвимость ядра и должен использоваться только в контролируемых условиях. Используйте на свой страх и риск и всегда соблюдайте законы и правила своей страны.


Releases

No releases published

Packages

No packages published

Languages