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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2025-49144 — PoC CVE-2025-49144 | Kitploit
Инструменты/GitHubGitHub/vr00mm/cve-2025-49144
Повышение привилегийМеханизмы персистентностиЭксплуатацияКомандование и УправлениеСоциальная инженерияОбучение и ОбразованиеRed TeamingРазработка Полезной НагрузкиЭксплуатация Бинарных Файлов
GitHubvr00mm/cve-2025-49144

CVE-2025-49144

PoC CVE-2025-49144

6101 год назадЕщё не проверено

Популярное

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

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

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

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

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

Подмена бинарного файла в Notepad++ — PoC (CVE-2025-49144)

⚠️ ТОЛЬКО ДЛЯ ОБРАЗОВАТЕЛЬНЫХ ЦЕЛЕЙ
Этот код создан в образовательных и исследовательских целях для понимания уязвимостей, связанных с подменой бинарных файлов. Используйте его только в контролируемых средах с соответствующим разрешением.

📋 Обзор

Данный PoC демонстрирует уязвимость подмены бинарного файла в установщике Notepad++ (CVE-2025-49144), описанную в GHSA-9vx8-v79m-6m24. Уязвимость позволяет атакующему получить привилегии уровня SYSTEM, разместив вредоносный исполняемый файл с именем regsvr32.exe в том же каталоге, где находится установщик Notepad++.

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

  • Цель: установщик Notepad++ (все версии до v8.8.2)
  • Метод: подмена бинарного файла через вредоносный regsvr32.exe
  • Первопричина: установщики Notepad++ вызывают системные бинарные файлы, такие как regsvr32, без указания абсолютных путей
  • Воздействие: когда пользователь запускает установщик, система автоматически загружает вредоносный файл с привилегиями SYSTEM, предоставляя атакующему полный контроль над целевой машиной
  • Вектор атаки: социальная инженерия или кликджекинг, чтобы обманом заставить пользователей загрузить легитимный установщик и вредоносный исполняемый файл в один и тот же каталог (обычно в папку «Загрузки»)

🏗️ Архитектура

PoC состоит из нескольких компонентов, работающих вместе:

┌─────────────────┐    ┌──────────────────┐    ┌─────────────────┐
│ Notepad++       │    │ Malicious        │    │  Reverse Shell  │
│ Installer       │───▶│ regsvr32.exe     │───▶│   (PowerShell)  │
│ (searches for   │    │ (CGO binary)     │    │  with SYSTEM    │
│  regsvr32.exe)  │    │                  │    │  privileges     │
└─────────────────┘    └──────────────────┘    └─────────────────┘

Основные компоненты

ФайлНазначениеСтроки
main.goТочка входа, обрабатывает выполнение regsvr32~80
winbind.hОсновной заголовочный файл с объявлениями функций~45
main.cОсновной модуль запуска реверс-шелла и создания отсоединённых процессов~75
shell.cОбработчик оболочки с обфусцированным выполнением PowerShell~120
process.cПолучение токена и создание процесса SYSTEM~195
socket.cСетевое соединение с TCP keep-alive~85
threads.cПотоки ввода-вывода между сокетом и каналами~60
utils.cПроверка входных данных и ограничение частоты~35
obfuscate.cМетоды обфускации пути PowerShell~70

🔧 Технические возможности

🛡️ Методы обхода обнаружения

  • Обфускация строк: путь PowerShell кодируется с помощью XOR, чтобы избежать статического обнаружения
  • Отсоединённые процессы: создаёт независимые процессы, которые переживают завершение родительского процесса
  • Имитация токенов: повышает привилегии путём кражи токенов SYSTEM
  • Процесс-холлоуинг: внедряет код в легитимные процессы Windows

🌐 Сетевые возможности

  • TCP Keep-Alive: поддерживает постоянные соединения через межсетевые экраны
  • Повторное подключение: автоматическое переподключение с настраиваемыми задержками
  • Обработка таймаутов: неблокирующие операции с сокетами с корректными таймаутами
  • Ограничение частоты: предотвращает спам соединениями и обнаружение

💻 Системная интеграция

  • Интеграция CGO: бесшовная интероперабельность Go и C для системных вызовов
  • Маскировка исполняемого файла: имитирует поведение легитимного regsvr32.exe
  • Многопоточность: отдельные потоки для обработки stdin/stdout/stderr
  • Восстановление после ошибок: корректная обработка сбоев соединения и завершения процессов
  • Управление ресурсами: надлежащая очистка дескрипторов, сокетов и памяти

🚀 Инструкции по сборке

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

# Install Go (1.24+)
# Install MinGW-w64 for CGO compilation
# Install Git for version control

Компиляция

# Clone the repository
git clone https://github.com/Vr00mm/CVE-2025-49144
cd CVE-2025-49144

# Build as executable (masquerading as regsvr32.exe)

# For maximum stealth (strip debug info)
go build -ldflags="-s -w" -o regsvr32.exe

# For development (with debug symbols)
go build -o regsvr32_debug.exe

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

Подмена бинарного файла (основной вектор атаки)

# 1. Place malicious regsvr32.exe in same directory as Notepad++ installer
# Usually the Downloads folder where users download the installer
copy regsvr32.exe "C:\Users\%USERNAME%\Downloads\"

# 2. User downloads official Notepad++ installer to Downloads folder
# 3. When user runs the installer, it searches for regsvr32.exe in current directory first
# 4. Installer finds and executes our malicious regsvr32.exe with SYSTEM privileges

# 5. Listen for incoming reverse shell connection
ncat -tlnp 4445

🔍 Схема атаки

sequenceDiagram
    participant User
    participant Attacker
    participant Downloads
    participant NotepadInstaller
    participant MaliciousRegsvr32
    participant SystemProcess

    User->>Downloads: Download Notepad++ installer
    Attacker->>Downloads: Place malicious regsvr32.exe (social engineering)
    User->>NotepadInstaller: Run installer from Downloads folder
    NotepadInstaller->>Downloads: Search for regsvr32.exe in current directory
    Downloads->>MaliciousRegsvr32: Find malicious regsvr32.exe first
    NotepadInstaller->>MaliciousRegsvr32: Execute with SYSTEM privileges
    MaliciousRegsvr32->>MaliciousRegsvr32: Create detached process
    MaliciousRegsvr32->>SystemProcess: Enumerate SYSTEM processes
    SystemProcess->>MaliciousRegsvr32: Steal token from winlogon/services
    MaliciousRegsvr32->>MaliciousRegsvr32: Create PowerShell with SYSTEM token
    MaliciousRegsvr32->>Attacker: Establish reverse connection
    MaliciousRegsvr32->>NotepadInstaller: Continue with legitimate regsvr32 functionality
    Attacker->>SystemProcess: Execute commands as SYSTEM

🎓 Образовательные аспекты

Демонстрируемые концепции безопасности

  1. Подмена бинарного файла

    • Небезопасное поведение пути поиска исполняемых файлов
    • Повышение привилегий через уязвимости установщика
    • Векторы атаки с использованием социальной инженерии
  2. Повышение привилегий

    • Методы имитации токенов
    • Кража токенов процессов
    • Получение доступа уровня SYSTEM
  3. Механизмы закрепления

    • Создание отсоединённых процессов
    • Имитация служебных процессов
    • Логика повторного подключения
  4. Сетевое программирование

    • Реализация реверс-шелла
    • Программирование сокетов на C
    • Кроссплатформенные сетевые взаимодействия
  5. Программирование на CGO

    • Интероперабельность Go и C
    • Системное программирование на Go
    • Межъязыковая интеграция

Учебные цели

  • Понять, как работают уязвимости подмены бинарных файлов
  • Узнать о небезопасных путях поиска исполняемых файлов в установщиках
  • Изучить повышение привилегий в Windows через недостатки установщиков
  • Исследовать векторы атак с использованием социальной инженерии
  • Попрактиковаться в программировании на CGO и межъязыковой интеграции
  • Попрактиковаться в безопасном программировании и анализе уязвимостей

🛡️ Обнаружение и смягчение последствий

Методы обнаружения

# Monitor for suspicious regsvr32 usage
Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-PowerShell/Operational'; ID=4104}

# Check for unusual network connections
netstat -ano | findstr ":4445"

# Monitor process creation
Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4688}

Стратегии смягчения последствий

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