reverseenengineering:soft

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
reverseenengineering:soft [2025/07/16 22:55] Lexreverseenengineering:soft [2025/07/17 02:18] (текущий) – [Граберы] Lex
Строка 138: Строка 138:
   * Исследования прошивок и вредоносных программ   * Исследования прошивок и вредоносных программ
  
 +===== Сравнительная характеристика =====
  
 +^ Отладчик      ^ Архитектуры                   ^ GUI / CLI ^ Декомпиляция ^ API / Скрипты        ^ Расширяемость       ^ ОС           ^
 +| x64dbg/x32dbg | x86, x64                     | GUI       | Нет (внешние) | Да (скрипты и плагин API) | Высокая (много плагинов) | Windows      |
 +| OllyDbg       | x86                          | GUI       | Нет          | Ограничено (плагины)       | Средняя (устаревшие плагины) | Windows      |
 +| IDA Pro       | x86, x64, ARM, MIPS, PowerPC, и др. | GUI + CLI | Да (Hex-Rays) | Да (IDC, Python API)     | Высокая (много плагинов, SDK) | Windows, Linux, macOS |
 +| RADARE2       | x86, x64, ARM, MIPS, AVR, SPARC и др. | CLI (Cutter — GUI) | Да (через r2ghidra, cxx) | Да (ESIL, r2pipe, Python, JS) | Очень высокая (модули, плагины, open source) | Windows, Linux, macOS |
 +| GHIDRA        | x86, x64, ARM, MIPS, PPC, и др. | GUI       | Да (встроенный) | Да (Java, Python (Jython)) | Высокая (плагины, open source) | Windows, Linux, macOS |
 +| Bochs         | x86, x86-64                  | GUI + CLI | Нет          | Да (GDB integration)        | Низкая                    | Windows, Linux, macOS |
 +| QEMU          | x86, x64, ARM, MIPS, и др.   | CLI       | Нет          | Да (GDB, TCG hooks)         | Средняя                   | Windows, Linux, macOS |
 +| Unicorn Engine| x86, x64, ARM, ARM64, MIPS   | API Only  | Нет          | Да (C, Python, Ruby, Go)    | Высокая (библиотека для эмуляции) | Windows, Linux, macOS |
 +
 +  * Архитектуры — поддерживаемые архитектуры процессоров
 +  * GUI / CLI — графический или командный интерфейс
 +  * Декомпиляция — встроенный или сторонний декомпилятор (возможность восстановления C-подобного кода)
 +  * API / Скрипты — возможность автоматизации через API, скриптовые языки
 +  * Расширяемость — поддержка плагинов, модулей, настройка
 +  * ОС — операционные системы, на которых работает отладчик
  
 ===== Сканеры ресурсов ===== ===== Сканеры ресурсов =====
Строка 175: Строка 192:
 ===== Граберы ===== ===== Граберы =====
 Инструменты для перехвата и извлечения данных, таких как логины, ключи и сетевой трафик. Инструменты для перехвата и извлечения данных, таких как логины, ключи и сетевой трафик.
 +
 +
 +==== NinjaRipper ====
 +NinjaRipper — инструмент для **перехвата и извлечения 3D-моделей**, текстур и других графических ресурсов из запущенных DirectX/OpenGL/Vulkan приложений (чаще всего — игр). Используется при создании модов, в обучающих целях, для анализа движков или цифровой архивации.
 +
 +**Функциональность:**
 +  * Перехват моделей, мешей, текстур во время выполнения
 +  * Поддержка DirectX 9/11/12, OpenGL, Vulkan (ограниченно)
 +  * Возможность экспорта в формат `.rip` или `.obj`
 +  * Сопровождается визуальным препросмотром (NinjaViewer)
 +  * Перехватывает также шейдеры и их параметры (в зависимости от движка)
 +
 +**Плюсы:**
 +  * Позволяет извлечь ресурсы даже из защищённых или нестандартных движков
 +  * Может работать с 32/64-битными играми
 +  * Сообщество активно делится профилями и опытом
 +  * Поддержка различных хаков запуска (вкл. ReShade hook и Custom DLL Injection)
 +
 +**Минусы:**
 +  * Не всегда работает с современными движками и античитами
 +  * Часто требует подбора запуска (launch mode, wrapper, hooking)
 +  * Модели могут экспортироваться без структуры (нужно вручную собирать сцены)
 +  * Может вызывать падение игры или конфликт с защитой
 +
 +**Лучше всего подходит для:**
 +  * Извлечения 3D-моделей из старых и средних по возрасту игр
 +  * Создания модов, цифровой реставрации и обучения 3D-графике
 +  * Исследования проприетарных движков, визуализации игровых сцен
 +
 +==== Сравнение: NinjaRipper vs 3D Ripper DX ====
 +^ Характеристика         ^ NinjaRipper                         ^ 3D Ripper DX                          ^
 +| Поддержка API          | DirectX 9/10/11/12, OpenGL, Vulkan  | Только DirectX 6–9                    |
 +| Совместимость          | Современные и старые движки         | Только старые игры (до 2012 года)     |
 +| Формат вывода          | .rip, .obj, текстуры (DDS/TGA)      | .3DR, .obj, .dds                      |
 +| Поддержка 64-бит       | Да                                  | Нет                                   |
 +| Работа в Windows 10/11 | Да (частично, зависит от метода)    | Ограниченно, часто нестабильно        |
 +| Уровень захвата        | Более гибкий (свой рендер-хук)      | Низкоуровневый захват DX9 сцены       |
 +| Поддержка ReShade      | Да (совместим через Proxy DLL)      | Нет                                   |
 +
 +**Вывод:**  
 +*3D Ripper DX* — устаревший, но всё ещё работает с очень старыми DirectX9-играми (2000–2012).  
 +*NinjaRipper* — универсальнее, работает с большинством современных игр и поддерживает больше API.
 +
 +----
 +
 +==== Интеграция с ReShade ====
 +ReShade — инструмент постобработки, часто используемый как промежуточный **hook-слой** в графическом конвейере. Он может **конфликтовать с NinjaRipper**, но также помогает **обходить античиты**, выступая как "легитимный" графический фильтр.
 +
 +**Методы интеграции:**
 +  * Установка ReShade перед запуском игры
 +  * Использование ReShade `.dll` в качестве прокси-хука (`dxgi.dll` / `d3d11.dll`)
 +  * Привязка NinjaRipper к ReShade-процессу (в режимах: `Intruder Injector` или `Wrapper Mode`)
 +  * Изменение порядка загрузки DLL (через `LoadLibrary`)
 +
 +**Плюсы:**
 +  * ReShade помогает перехватывать сцены там, где NinjaRipper не может напрямую
 +  * Уменьшает вероятность детекта античитами (видится как графический фильтр)
 +
 +**Минусы:**
 +  * Требует ручной настройки путей DLL и фильтрации ReShade-шейдеров
 +  * Может сбивать порядок захвата текстур/буферов
 +
 +----
 +
 +==== Обход античитов ====
 +Некоторые игры с EAC, BattleEye, Denuvo или собственными DRM-механизмами могут блокировать:
 +  * инжекцию DLL
 +  * отладку процессов
 +  * графический хук
 +
 +**Способы обхода:**
 +  * Использование **режима оффлайн** (Steam/Origin/Uplay)
 +  * Запуск игры через **ReShade**, и подмена стандартных `d3d*.dll`
 +  * Использование **пользовательских launchers** (например, с отключённым античитом)
 +  * Инъекция через **NinjaRipper Intruder Injector** (настройка процесса захвата вручную)
 +  * Работа с **Portable-версией игры** (если доступна)
 +
 +**Важно:** Многие античиты распознают NinjaRipper как потенциально вредоносную активность. Используйте **только для анализа, моддинга и образовательных целей** в **оффлайн-режиме**.
 +
 +----
 +
 +==== Рекомендованные конфигурации запуска NinjaRipper ====
 +Для повышения шансов успешного захвата моделей:
 +
 +**1. ReShade-хук (гибридный метод):**
 +  * Установить ReShade в папку с игрой
 +  * Назначить `dxgi.dll` как целевой для захвата
 +  * Выбрать в NinjaRipper режим `Intruder Injector`
 +  * Указать путь к `ReShade64.dll` или `dxgi.dll`
 +
 +**2. Wrapper Mode (менее стабильный, но работает без инъекции):**
 +  * Выбрать DLL-соответствие API (d3d11.dll, opengl32.dll)
 +  * Поместить файлы NinjaRipper в корень игры
 +  * Запустить игру напрямую
 +
 +**3. Параметры запуска:**
 +  * `Admin mode`: всегда запускать NinjaRipper и игру от имени администратора
 +  * `DelayInject`: увеличить задержку инъекции до 3000–5000 мс
 +  * `Force Windowed`: запуск игры в оконном режиме для стабильности захвата
 +  * `Disable anti-aliasing`: часто мешает корректному извлечению геометрии
 +
 +**Дополнительно:**
 +  * Сохраняйте лог процесса
 +  * Пробуйте разные версии NinjaRipper (1.7, 2.0 beta)
 +  * Используйте **NinjaRipper Viewer** для первичного анализа `.rip` файлов
 +
 +----
 +
 +
 +
  
 ==== Wireshark ==== ==== Wireshark ====
  • reverseenengineering/soft.1752681331.txt.gz
  • Последнее изменение: 2025/07/16 22:55
  • Lex