GenIoURingExploit is a PoC exploit targeting a specific vulnerability in the Linux kernel (CVE-2024-0582). The PoC leverages the io_uring
mechanism to gain unintended access and potentially escalate privileges by manipulating socket buffers and triggering certain kernel behaviors.
- Utilizes
io_uring
for efficient buffer manipulation. - Demonstrates the KASLR (Kernel Address Space Layout Randomization) leak.
- Exploits a vulnerability related to socket buffer management.
- Triggers the exploit using controlled IOCTL calls.
- Provides a pathway to execute arbitrary shell commands through kernel manipulation.
- A Linux-based system (tested on recent distributions).
- Root or administrative privileges for accessing the required resources.
- Development tools (e.g.,
gcc
,make
) for compiling the C code. - The
liburing
library installed on your system.
-
Clone the repository:
git clone https://github.com/geniuszly/CVE-2024-0582 cd CVE-2024-0582
-
Compile the exploit:
Ensure you have the necessary build tools and
liburing
installed:gcc -o CVE-2024-0582 GenIoURingExploit.c -luring
-
Run the exploit:
Warning: This PoC is for educational purposes only. Running this on a production system may cause unpredictable behavior and should only be done in a controlled environment.
sudo ./CVE-2024-0582
The exploit works by:
- Setting up
io_uring
buffer rings to interact with kernel socket buffers. - Searching for a specific marker in the memory to identify vulnerable socket structures.
- Manipulating these structures to gain access to sensitive kernel memory.
- Overwriting certain kernel function pointers to trigger the execution of arbitrary commands (
/bin/sh
).
This project is intended for educational purposes only. The authors are not responsible for any misuse of this code. The use of this PoC should be limited to testing within controlled, ethical hacking environments.
GenIoURingExploit — это PoC эксплойт, нацеленный на конкретную уязвимость в ядре Linux (CVE-2024-0582). Данный PoC использует механизм io_uring
для несанкционированного доступа и потенциального повышения привилегий путем манипулирования буферами сокетов и вызова определенных функций ядра.
- Использует
io_uring
для эффективной работы с буферами. - Демонстрирует утечку KASLR (Kernel Address Space Layout Randomization).
- Эксплуатирует уязвимость, связанную с управлением буфером сокетов.
- Запускает эксплойт с помощью управляемых вызовов IOCTL.
- Предоставляет возможность выполнения произвольных команд через манипуляции в ядре.
- Система на базе Linux (проверено на последних дистрибутивах).
- Права root или администратора для доступа к необходимым ресурсам.
- Инструменты разработки (
gcc
,make
) для компиляции кода на C. - Установленная библиотека
liburing
.
-
Клонирование репозитория:
git clone https://github.com/geniuszly/CVE-2024-0582 cd CVE-2024-0582
-
Компиляция эксплойта:
Убедитесь, что у вас установлены необходимые инструменты сборки и библиотека
liburing
:gcc -o CVE-2024-0582 GenIoURingExploit.c -luring
-
Запуск эксплойта:
Внимание: Этот PoC предназначен только для образовательных целей. Запуск на рабочей системе может привести к непредсказуемому поведению и должен выполняться только в контролируемой среде.
sudo ./CVE-2024-0582
Эксплойт работает следующим образом:
- Настраивает буферные кольца
io_uring
для взаимодействия с буферами сокетов ядра. - Ищет определенный маркер в памяти для выявления уязвимых структур сокетов.
- Манипулирует этими структурами для получения доступа к чувствительной памяти ядра.
- Перезаписывает определенные указатели функций ядра для выполнения произвольных команд (
/bin/sh
).
Этот проект предназначен только для образовательных целей. Авторы не несут ответственности за любое неправомерное использование этого кода. Использование данного PoC должно быть ограничено тестированием в контролируемых, этических условиях.