Описание Reverse


Инструмент осуществляет обратный инжиниринг для двоичных файлов x86/ARM/MIPS. Генерирует более читаемый код (псевдо-C) с раскраденным синтаксисом.


Поддерживаемые форматы : ELF, PE, RAW.



Makefile используется только для проверки тестов.



Домашняя страница: https://github.com/joelpx/reverse



Автор: joelpx



Лицензия: GNU GENERAL PUBLIC LICENSE Version 3



Справка по Reverse



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


1
2
3
4
5
6
reverse.py [-h] [-nc] [-g] [--nocomment] [--noandif] [--datasize N]
                  [-x SYMBOLNAME|0xXXXXX|EP] [--vim] [-s] [-c SECTION_NAME]
                  [--sections] [--dump] [-l N] [--bytes] [-i] [-d] [-ns]
                  [--raw x86|x64|arm|mips|mips64] [--rawbase 0xXXXXX]
                  [--rawbe]
                  [FILENAME]


позиционные аргументы:



ИМЯ_ФАЙЛА



опциональные аргументы:



-h, --help показать это сообщение справки и выйти



-nc, --nocolor без цветов



-g, --graph Сгенерировать html потокового графика. Смотри d3/index.html.



--nocomment Не печатать комментарии



--noandif Печатать нормальные 'if' вместо 'andif'



--datasize N по умолчанию 30, максимальное количество отображаемых символов для строк или для массивов байт.



-x SYMBOLNAME|0xXXXXX|EP, --entry SYMBOLNAME|0xXXXXX|EP Псевдодекомпиляция, по умолчанию — главная. EP выступает за точку входа



--vim Генерирует синтаксис цветов для vim



-s, --symbols Печатать все символы



-c SECTION_NAME, --calls SECTION_NAME Напечатать все вызовы, которые в заданной секции



--sections Напечатать все секции



--dump Дамп ассемблера без декомпиляции



-l N, --lines N Максимум строк, используется с --dump



--bytes Напечатать instruction bytes



-i, --interactive Интерактивный режим



-d, --opt_debug Отладка



-ns, --nosectionsname Без имён секций



--raw x86|x64|arm|mips|mips64 Рассматривать входной файл как сырой бинарный файл



--rawbase 0xXXXXX Установить базовый адрес сырого файла (по умолчанию=0)



--rawbe Если не установлено, то прямой порядок байтов.





Руководство по Reverse



Страница man отсутствует.



Редактировать с vim


1
./reverse tests/dowhile1.bin --vim


Теперь вы можете запустить:


1
vim dowhile1.bin.rev -S dowhile1.bin.vim


Пользовательские цвета



При первой загрузке reverse.py создаёт новый файл custom_colors.py, в котором значения по умолчанию. В нём вы можете установить ваши собственные цвета.



Примеры запуска Reverse



Псевдодекомпиляция функций



Опция -x main является опциональной, поскольку бинарные файлы содержат символ main.


1
./reverse.py tests/server.bin


Интерактивный режим (-i)



Больше команд доступны в этом режиме (da, db, …). Смотрите спаску для полного списка.



Анализ шелл-кода



Для каждого int 0x80, инструмент пытается определить системные вызовы с параметрами. 


1
2
3
4
5
6
7
8
9
10
11
12
13
14
$ ./reverse.py --raw x86 tests/shellcode.bin
function 0x0 {
    0x0: eax = 0 # xor eax, eax
    0x2: al = '\x0b' # mov al, 0xb
    0x4: cdq
    0x5: push edx
    0x6: push 1752379246 "n/sh"
    0xb: push 1768042287 "//bi"
    0x10: ebx = esp # mov ebx, esp
    0x12: push edx
    0x13: push ebx
    0x14: ecx = esp # mov ecx, esp
    0x16: int 128 ; execve(ebx, ecx, edx) # int 0x80
}


Установка Reverse



Установка в Kali Linux, Debian, Ubuntu, Mint



Требования




  • python >= 3.4


  • capstone + python bindings (see requirements.sh)


  • python-pyelftools


  • https://github.com/simonzack/pefile-py3k


  • терминал с 256 цветами (если не используется опция `--nocolor`)



Для связки Python и Capstone engine, вы можете установить его из PyPi следующим образом:


1
sudo pip3 install capstone


Вы также можете запустить requirements.sh, который получит все компоненты.


1
2
3
4
git clone https://github.com/joelpx/reverse.git
cd reverse/
./requirements.sh
./reverse.py --help


Скриншоты Reverse



screenshot



http://kali.tools/?p=314

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

uzverss: (Default)
uzverss

December 2024

S M T W T F S
12345 67
891011121314
15161718192021
22232425262728
293031    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 15th, 2026 12:06 pm
Powered by Dreamwidth Studios