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

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

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

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

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

Категории

Все категории
Loading categories
mwemu — Эмулятор аппаратного обеспечения x86 и симулятор процессов Windows на чистом Rust для анализа вредоносного ПО, эмуляции шелл-кода и распаковки полезных нагрузок. Поддерживает 32/64-битные PE-исполняемые файлы, Metasploit, Cobalt Strike и сложные семейства вредоносных программ. | Kitploit
Инструменты/GitHubGitHub/mwemuorg/mwemu
Фреймворки для эксплойтовОбратная инженерияШелл-кодАнализ вредоносных программАнализ Бинарных Файлов
GitHubmwemuorg/mwemu

mwemu

Эмулятор аппаратного обеспечения x86 и симулятор процессов Windows на чистом Rust для анализа вредоносного ПО, эмуляции шелл-кода и распаковки полезных нагрузок. Поддерживает 32/64-битные PE-исполняемые файлы, Metasploit, Cobalt Strike и сложные семейства вредоносных программ.

Репозиторий
313442518 ч 46 мин назадПроверено Kitploit
Сайт

Популярное

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

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

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

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

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

MWEmu

CI mwemu crates.io libmwemu crates.io Docs.rs PyPI License: Apache 2.0 MSRV Listed on mcpservers.org

Официальная документация

mwemu.github.io

Что это такое?

Это аппаратный эмулятор + симулятор процессов ОС, реализованный на чистом Rust.

Такой подход очень удобен для анализа вредоносного ПО и других задач (PE, шелл-код и т.д.)

ОС в основном Windows, эмулируется процесс Windows, есть очень базовая поддержка Linux.

Аппаратное обеспечение — x86 32/64 бита, работает быстро и надёжно.

MWEMU Logo

Три способа использования программы

  • командная строка mwemu https://github.com/mwemuorg/mwemu
  • крейт libmwemu https://crates.io/crates/libmwemu
  • pymwemu https://pypi.org/project/pymwemu/

примечание о scemu

Проект был переименован из scemu в mwemu.

Несколько видео

r2con2025 — использование radare2 из mwemu для статического анализа и визуализации в момент эмуляции.

несколько демонстраций

Возможности

  • 📦 безопасность Rust, хорошо подходит для эмуляции вредоносного ПО.

    • Все зависимости на Rust.
  • ⚡ очень быстрая эмуляция

    • бенчмарки
    • 25 767 432 инструкций/секунду
    • 680 000 инструкций/секунду при печати каждой инструкции -vv.
    • проверьте сами: time mwemu -f test/exe64win_enigma.bin -6 -v -c 20000000 --cmd q
  • работает на основе замечательной библиотеки дизассемблера iced-x86 для Rust.

  • инструмент командной строки, библиотека Rust и библиотека Python.

  • детектор итераций.

  • отслеживание памяти и регистров.

  • цветной вывод.

  • остановка в определённый момент и исследование состояния или его изменение.

  • реализовано 339 инструкций CPU.

  • реализовано 260 winapi 32-бит из 15 dll.

  • реализовано 204 winapi 64-бит из 10 dll.

  • все системные вызовы Linux.

  • цепочки SEH.

  • векторизованный обработчик исключений.

  • структуры PEB, TEB.

  • динамическое связывание.

  • привязка IAT.

  • отложенная загрузка.

  • аллокатор памяти.

  • реакция на int3.

  • неотлаживаемый cpuid.

  • эмуляция 32-битного и 64-битного шелл-кода.

  • эмуляция исполняемых файлов pe32 и pe64.

  • полная эмуляция с известными полезными нагрузками:

    • шелл-коды metasploit.
    • кодировщики metasploit.
    • cobalt strike.
    • shellgen.
    • guloader (пока не полностью, но продвигается дальше отладчика)
    • mars stealer pe32.
    • bumblebee.
  • частичная эмуляция со сложными функциями вредоносного ПО:

    • guloader
    • xloader
    • danabot

pymwemu против вредоносного ПО

  • raccoon, расшифровка строк
  • vidar, расшифровка строк
  • xloader, полная расшифровка, генерация ключей, шифрование URL при сборке.
  • lokibot, деобфускация API
  • mars распаковка и получение IOC
  • shikata декодирование и получение IOC
  • danabot расшифровка строк
  • zloader расшифровка строк
  • bumblebee распаковка после эмуляции 25 515 274 634 инструкций.
  • enigma loader деобфускация API и расшифровка дропа
  • bugsleep распаковка
  • gozi расшифровка BSS и предсказание DGA.

Захват момента эмуляции

Во время эмуляции вы можете видеть количество эмулированных инструкций CPU — это уникальный идентификатор момента эмуляции.

С помощью флага -c вы останавливаете эмуляцию в определённый момент и исследуете происходящее через консоль.

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

MWEMU emulator for malware 0.7.11
@sha0coder

USAGE:
    mwemu [FLAGS] [OPTIONS]

FLAGS:
    -6, --64bits         enable 64bits architecture emulation
        --banzai         skip unimplemented instructions, and keep up emulating what can be emulated
        --flags          trace the flags hex value in every instruction.
    -F, --fpu            trace the fpu states.
    -h, --handle         handle Ctrl+C to spawn console
        --help           Prints help information
    -l, --loops          show loop interations, it is slow.
    -m, --memory         trace all the memory accesses read and write.
    -n, --nocolors       print without colors for redirectin to a file >out
    -r, --regs           print the register values in every step.
    -p, --stack_trace    trace stack on push/pop
    -t, --test           test mode
        --version        Prints version information
    -v, --verbose        -vv for view the assembly, -v only messages, without verbose only see the api calls and goes
                         faster

OPTIONS:
    -A, --args <ARGS>                  provide arguments to the EXE like: --args '"aa" "bb"'
        --cmd <COMMAND>                launch a console command
    -b, --base <ADDRESS>               set base address for code
    -c, --console <NUMBER>             select in which moment will spawn the console to inspect.
    -C, --console_addr <ADDRESS>       spawn console on first eip = address
    -d, --dump <FILE>                  load from dump.
    -a, --entry <ADDRESS>              entry point of the shellcode, by default starts from the beginning.
    -e, --exit <POSITION>              exit position of the shellcode
    -f, --filename <FILE>              set the shellcode binary file.
    -i, --inspect <DIRECTION>          monitor memory like: -i 'dword ptr [ebp + 0x24]
        --iso <ISO>                    extract genuine system32 DLLs from a Windows ISO and use them as the maps folder, e.g. --iso ~/Downloads/win11.iso
    -L, --log <LOG_FILENAME>           log output to file
    -M, --maps <PATH>                  select the memory maps folder
        --mxcsr <MXCSR>                set mxcsr register
        --r10 <R10>                    set r10 register
        --r11 <R11>                    set r11 register
        --r12 <R12>                    set r12 register
        --r13 <R13>                    set r13 register
        --r14 <R14>                    set r14 register
        --r15 <R15>                    set r15 register
        --r8 <R8>                      set r8 register
        --r9 <R9>                      set r9 register
        --rax <RAX>                    set rax register
        --rbp <RBP>                    set rbp register
        --rbx <RBX>                    set rbx register
        --rcx <RCX>                    set rcx register
        --rdi <RDI>                    set rdi register
        --rdx <RDX>                    set rdx register
    -R, --reg <REGISTER1,REGISTER2>    trace a specific register in every step, value and content
        --rflags <RFLAGS>              set rflags register
        --rsi <RSI>                    set rsi register
        --rsp <RSP>                    set rsp register
    -x, --script <SCRIPT>              launch an emulation script, see scripts_examples folder
        --stack_address <ADDRESS>      set stack address
    -s, --string <ADDRESS>             monitor string on a specific address
    -T, --trace <TRACE_FILENAME>       output trace to specified file
    -S, --trace_start <TRACE_START>    start trace at specified position
    -V, --verbose_at <NUMBER>          start displaying assembly at specific position (is like -vv enabled in specific
                                       moment)

Примеры командной строки

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