ROP
29.11.2020, 17:27
Доброго времени суток. Нашёл на GitHab интересный англоязычный список полезных ссылок по реверс-инжинирингу. Перевёл для себя, добавил картинок и решил поделиться. Оригинал
Библиотека программ
IDA Pro: КОРОЛЬ IDA - это доступный в Windows, Linux или Mac OS X многопроцессорный дизассемблер и отладчик, который предлагает так много функций, что трудно описать их все.
https://forum.antichat.xyz/attachments/4896171/img_a4a8390047.png
Ghidra: Ghidra-это фреймворк обратного инжиниринга программного обеспечения (SRE), созданный и поддерживаемый исследовательским директоратом Агентства национальной безопасности. Эта платформа включает в себя набор высококачественных инструментов анализа программного обеспечения высокого класса, которые позволяют пользователям анализировать скомпилированный код на различных платформах, включая Windows, Mac OS и Linux. Возможности включают в себя ассемблирование, дизассемблирование, декомпиляцию, графы и скрипты, а также сотни других функций. Ghidra поддерживает широкий спектр наборов инструкций процесса и исполняемых форматов и может выполняться как в пользовательском-интерактивном, так и в автоматическом режимах. Пользователи также могут разрабатывать свои собственные подключаемые компоненты Ghidorah и/или скрипты с использованием Java или Python.
https://forum.antichat.xyz/attachments/4896171/img_70da08cc84.png
Binary Ninja: Платформа обратного инжиниринга. Она фокусируется на чистом и простом в использовании интерфейсе с мощным многопоточным анализом, построенным на пользовательском промежуточном языке, чтобы быстро адаптироваться к различным архитектурам, платформам и компиляторам.
https://forum.antichat.xyz/attachments/4896171/img_78a32002f2.png
Capstone: Capstone - это легкий мультиплатформенный, мультиархитектурный фреймворк для разборки. "Наша цель - сделать Capstone идеальным дизассмеблером для двоичного анализа и реверса в сообществе информационной безопасности." - говорят разработчики.
https://forum.antichat.xyz/attachments/4896171/img_e97c727d80.png
Hopper: Hopper инструмент обратного инжиниринга для OS X и Linux, который позволяет вам дизассемблировать и декомпилировать ваши 32/64-битные исполняемые файлы для Mac, Linux, Windows и iOS! Базируется на Capstone, может быть дополнен скриптами.
https://forum.antichat.xyz/attachments/4896171/img_9f941d2a23.png
PeachPy: Портативный эффективный генератор ассемблерного кода на высокоуровневом языке Python.
https://forum.antichat.xyz/attachments/4896171/img_bd66f27109.png
Radare2: Портативный фреймворк реверс-инжиниринга для дизассемблирования, отладки, форензики и т.д. Базируется на Capstone, может быть дополнен скриптами.
https://forum.antichat.xyz/attachments/4896171/img_0de028f7b4.png
Cutter- это бесплатный и открытый фреймворк для реверс-инжиниринга, работающий на базе radare2 с возможностью дополнения плагинами . Его цель-создание продвинутой, настраиваемой платформы для реверс-инжиниринга, сохраняя при этом пользовательский опыт. Cutter создан реверс инженерами для реверс инженеров.
https://forum.antichat.xyz/attachments/4896171/img_c94bb4ddc3.png
x64dbg: Отладчик Windows с открытым исходным кодом x64/x32. Наследник OlyDbg.
https://forum.antichat.xyz/attachments/4896171/img_da4478ccde.png
re_lab: Портативная среда реверс-инжиниринга с использованием docker.
Android
Offensive & Defensive Android Reverse Engineering
Ассемблер / Дизассемблер
Анализ необычной прошивки
Дизассемблирование ARM V7 архитектуры
https://forum.antichat.xyz/attachments/4896171/img_fa7d8227b2.png
UROBOROS - Reassembling Disassembling - инструмент, который может разбирать исполняемые файлы до такой степени, что сгенерированный код может быть собран обратно в рабочие двоичные файлы без ручного усилия.
Основы
Reverse Engineering 101 Speaker Presentation
Reverse Engineering 101 - NYU: Poly 2010: Вступление к реверс-инжинирингу, данное в Нью-Йоркском университете Poly 4 октября 2010 года Ароном Портным и Питером Зильберманом.
Reverse Engineering 102 - NYU: Poly 2010: Введение в реверс-инжиниринг (день 2), Данное в Нью-Йоркском университете Poly 11 октября 2010 года Ароном Портным и Питером Зильберманом.
CTF полевое руководство
Книги
Modern X86 Assembly Language Programming: 32-bit, 64-bit, SSE, and AVX: Основы программирования на ассемблере x86. Он фокусируется на аспектах набора инструкций x86, которые наиболее важны для разработки прикладного программного обеспечения.
https://forum.antichat.xyz/attachments/4896171/img_7ebe939a03.png
Practical Malware Analysis: эта книга научит вас инструментам и методам, используемым профессиональными аналитиками. Используя эту книгу в качестве руководства, вы сможете безопасно анализировать, отлаживать и разбирать любое вредоносное программное обеспечение, которое попадется вам на пути.Перевод на русском.
https://forum.antichat.xyz/attachments/4896171/img_2ab19687dd.png
Practical Reverse Engineering: Книга охватывает x86, x64 и ARM (первая книга, которая охватывает все три); руткиты и драйверы кода режима ядра Windows; методы защиты виртуальных машин и многое другое. Она предлагает систематический подход к материалу, с большим количеством практических упражнений и реальных примеров.
https://forum.antichat.xyz/attachments/4896171/img_33c10cd1e7.png
Reversing: Secrets of Reverse Engineering: Начните с базового учебника по реверс-инжинирингу включающего в себя компьютерные внутренности, операционные системы и язык ассемблера, а затем обсудите различные области применения обратного инжиниринга, эта книга предоставляет читателям практические, глубокие методы для реверс-инжиниринга программного обеспечения.
https://forum.antichat.xyz/attachments/4896171/img_2c896ea634.png
Reverse Engineering for Beginners: Эта электронная книга, доступная на английском и русском языках, является хорошим введением для начинающих. Затронуты многочисленные темы: Oracle RDBMS, Itanium, ключи защиты от копирования, LD_PRELOAD, переполнение стека, ELF, формат файла win32 PE, x86-64, критические разделы, системные вызовы, TLS, позиционно-независимый код (PIC), профильная оптимизация, C++ STL, OpenMP, win32 SEH.
https://forum.antichat.xyz/attachments/4896171/img_bb158f4d2f.png
The IDA Pro Book: The Unofficial Guide to the World's Most Popular Disassembler: Второе издание книги IDA Pro, названное создателем IDA Pro "глубоким, всеобъемлющим и точным", охватывает все, начиная с самых первых шагов и заканчивая передовыми методами автоматизации.Русский перевод.
https://forum.antichat.xyz/attachments/4896171/img_d337b17021.png
Структура данных
Digging For Data Structures
https://forum.antichat.xyz/attachments/4896171/img_259fdd576e.png
MemPick: High-Level Data Structure Detection in C/C++ Binaries
https://forum.antichat.xyz/attachments/4896171/img_7d937be6e8.png
Эксплуатация
Dismantling Megamos Crypto: Wirelessly Lockpicking a Vehicle Immobilizer
https://forum.antichat.xyz/attachments/4896171/img_b586544103.png
Memory Graph Approach for Program Data Introspection and Modification
https://forum.antichat.xyz/attachments/4896171/img_22ea498e92.png
Remote Exploitation of an Unaltered Passenger Vehicle
https://forum.antichat.xyz/attachments/4896171/img_37e6e59d9e.png
Набор команд
Intel® 64 and IA-32 Architectures Software Developer Manuals: В этих руководствах описываются архитектура и среда программирования архитектур Intel ® 64 и IA-32.
https://forum.antichat.xyz/attachments/4896171/img_318e026e56.png
X86 Opcode and Instruction Reference: Эта ссылка предназначена для точного указания кода операции и набора инструкций (включая x86-64). Его основная цель-точное определение параметров и атрибутов инструкции.
JSON x86-64 Intel instruction set: Весь набор инструкций Intel x86-64 в машиночитаемом формате JSON до AVX-512.
X86-64 Reference: Получено из сентябрьской версии 2014 года руководства разработчика программного обеспечения для архитектур Intel ® 64 и IA-32, тома 2A и 2B. Использует интеллектуальный анализ PDF для создания ссылки из официальных документов Intel.
Mac and iOS
iOS App Reverse Engineering: iOS App Reverse Engineering-это 1-я в мире книга очень подробно описывающая навыки реверс-инжиниринга для iOS App.
iOS Kernel Security
https://forum.antichat.xyz/attachments/4896171/img_d188a84743.png
Jailbreaking Techniques
https://forum.antichat.xyz/attachments/4896171/img_3aeed455a7.png
Reversing iOS Apps: A Practical Approach
https://forum.antichat.xyz/attachments/4896171/img_0beaa64376.png
Анализ Вредоносных Программ
BlackHat 2015
https://forum.antichat.xyz/attachments/4896171/img_580741a844.png
Analysis of Disco Savings Adware
https://forum.antichat.xyz/attachments/4896171/img_f15a221108.png
You Dirty RAT: Analyzing an AlienSpy Payload
https://forum.antichat.xyz/attachments/4896171/img_a1937731c8.png
Сеть
Reverse Engineering of Protocols from Network Traces
https://forum.antichat.xyz/attachments/4896171/img_f4f2079d60.png
Обфускации и деобфускация
Advanced JS Deobfuscation Via AST and Partial Evaluation
Исследовательский инструментарий
IR Transformation Synthesis for Assembly Instructions
https://forum.antichat.xyz/attachments/4896171/img_c0a7ed535c.png
Распаковка
The Art of Unpacking
https://forum.antichat.xyz/attachments/4896171/img_fb97aa5bea.png
Windows
Defeating Windows Driver Signature Enforcement #1: default drivers
Defeating Windows Driver Signature Enforcement #2: CSRSS and thread desktops
Defeating Windows Driver Signature Enforcement #3: The Ultimate Encounter
Защита от патча
Bypassing PatchGuard on Windows x64
Universal Patchguard and Driver Signature Enforcement Disable
Win32
PInvoke.net: PInvoke.net-это прежде всего wiki, позволяющая разработчикам находить, редактировать и добавлять сигнатуры PInvoke*, пользовательские типы и любую другую информацию, связанную с вызовом Win32 и других неуправляемых API из управляемого кода (написанного на таких языках, как C# или VB.NET).
Дополнительные ссылки
Избранные ссылки по реверс-инжинирингу
Избранное: ссылки по reverse engineering
Библиотека античат
Библиотека программ
IDA Pro: КОРОЛЬ IDA - это доступный в Windows, Linux или Mac OS X многопроцессорный дизассемблер и отладчик, который предлагает так много функций, что трудно описать их все.
https://forum.antichat.xyz/attachments/4896171/img_a4a8390047.png
Ghidra: Ghidra-это фреймворк обратного инжиниринга программного обеспечения (SRE), созданный и поддерживаемый исследовательским директоратом Агентства национальной безопасности. Эта платформа включает в себя набор высококачественных инструментов анализа программного обеспечения высокого класса, которые позволяют пользователям анализировать скомпилированный код на различных платформах, включая Windows, Mac OS и Linux. Возможности включают в себя ассемблирование, дизассемблирование, декомпиляцию, графы и скрипты, а также сотни других функций. Ghidra поддерживает широкий спектр наборов инструкций процесса и исполняемых форматов и может выполняться как в пользовательском-интерактивном, так и в автоматическом режимах. Пользователи также могут разрабатывать свои собственные подключаемые компоненты Ghidorah и/или скрипты с использованием Java или Python.
https://forum.antichat.xyz/attachments/4896171/img_70da08cc84.png
Binary Ninja: Платформа обратного инжиниринга. Она фокусируется на чистом и простом в использовании интерфейсе с мощным многопоточным анализом, построенным на пользовательском промежуточном языке, чтобы быстро адаптироваться к различным архитектурам, платформам и компиляторам.
https://forum.antichat.xyz/attachments/4896171/img_78a32002f2.png
Capstone: Capstone - это легкий мультиплатформенный, мультиархитектурный фреймворк для разборки. "Наша цель - сделать Capstone идеальным дизассмеблером для двоичного анализа и реверса в сообществе информационной безопасности." - говорят разработчики.
https://forum.antichat.xyz/attachments/4896171/img_e97c727d80.png
Hopper: Hopper инструмент обратного инжиниринга для OS X и Linux, который позволяет вам дизассемблировать и декомпилировать ваши 32/64-битные исполняемые файлы для Mac, Linux, Windows и iOS! Базируется на Capstone, может быть дополнен скриптами.
https://forum.antichat.xyz/attachments/4896171/img_9f941d2a23.png
PeachPy: Портативный эффективный генератор ассемблерного кода на высокоуровневом языке Python.
https://forum.antichat.xyz/attachments/4896171/img_bd66f27109.png
Radare2: Портативный фреймворк реверс-инжиниринга для дизассемблирования, отладки, форензики и т.д. Базируется на Capstone, может быть дополнен скриптами.
https://forum.antichat.xyz/attachments/4896171/img_0de028f7b4.png
Cutter- это бесплатный и открытый фреймворк для реверс-инжиниринга, работающий на базе radare2 с возможностью дополнения плагинами . Его цель-создание продвинутой, настраиваемой платформы для реверс-инжиниринга, сохраняя при этом пользовательский опыт. Cutter создан реверс инженерами для реверс инженеров.
https://forum.antichat.xyz/attachments/4896171/img_c94bb4ddc3.png
x64dbg: Отладчик Windows с открытым исходным кодом x64/x32. Наследник OlyDbg.
https://forum.antichat.xyz/attachments/4896171/img_da4478ccde.png
re_lab: Портативная среда реверс-инжиниринга с использованием docker.
Android
Offensive & Defensive Android Reverse Engineering
Ассемблер / Дизассемблер
Анализ необычной прошивки
Дизассемблирование ARM V7 архитектуры
https://forum.antichat.xyz/attachments/4896171/img_fa7d8227b2.png
UROBOROS - Reassembling Disassembling - инструмент, который может разбирать исполняемые файлы до такой степени, что сгенерированный код может быть собран обратно в рабочие двоичные файлы без ручного усилия.
Основы
Reverse Engineering 101 Speaker Presentation
Reverse Engineering 101 - NYU: Poly 2010: Вступление к реверс-инжинирингу, данное в Нью-Йоркском университете Poly 4 октября 2010 года Ароном Портным и Питером Зильберманом.
Reverse Engineering 102 - NYU: Poly 2010: Введение в реверс-инжиниринг (день 2), Данное в Нью-Йоркском университете Poly 11 октября 2010 года Ароном Портным и Питером Зильберманом.
CTF полевое руководство
Книги
Modern X86 Assembly Language Programming: 32-bit, 64-bit, SSE, and AVX: Основы программирования на ассемблере x86. Он фокусируется на аспектах набора инструкций x86, которые наиболее важны для разработки прикладного программного обеспечения.
https://forum.antichat.xyz/attachments/4896171/img_7ebe939a03.png
Practical Malware Analysis: эта книга научит вас инструментам и методам, используемым профессиональными аналитиками. Используя эту книгу в качестве руководства, вы сможете безопасно анализировать, отлаживать и разбирать любое вредоносное программное обеспечение, которое попадется вам на пути.Перевод на русском.
https://forum.antichat.xyz/attachments/4896171/img_2ab19687dd.png
Practical Reverse Engineering: Книга охватывает x86, x64 и ARM (первая книга, которая охватывает все три); руткиты и драйверы кода режима ядра Windows; методы защиты виртуальных машин и многое другое. Она предлагает систематический подход к материалу, с большим количеством практических упражнений и реальных примеров.
https://forum.antichat.xyz/attachments/4896171/img_33c10cd1e7.png
Reversing: Secrets of Reverse Engineering: Начните с базового учебника по реверс-инжинирингу включающего в себя компьютерные внутренности, операционные системы и язык ассемблера, а затем обсудите различные области применения обратного инжиниринга, эта книга предоставляет читателям практические, глубокие методы для реверс-инжиниринга программного обеспечения.
https://forum.antichat.xyz/attachments/4896171/img_2c896ea634.png
Reverse Engineering for Beginners: Эта электронная книга, доступная на английском и русском языках, является хорошим введением для начинающих. Затронуты многочисленные темы: Oracle RDBMS, Itanium, ключи защиты от копирования, LD_PRELOAD, переполнение стека, ELF, формат файла win32 PE, x86-64, критические разделы, системные вызовы, TLS, позиционно-независимый код (PIC), профильная оптимизация, C++ STL, OpenMP, win32 SEH.
https://forum.antichat.xyz/attachments/4896171/img_bb158f4d2f.png
The IDA Pro Book: The Unofficial Guide to the World's Most Popular Disassembler: Второе издание книги IDA Pro, названное создателем IDA Pro "глубоким, всеобъемлющим и точным", охватывает все, начиная с самых первых шагов и заканчивая передовыми методами автоматизации.Русский перевод.
https://forum.antichat.xyz/attachments/4896171/img_d337b17021.png
Структура данных
Digging For Data Structures
https://forum.antichat.xyz/attachments/4896171/img_259fdd576e.png
MemPick: High-Level Data Structure Detection in C/C++ Binaries
https://forum.antichat.xyz/attachments/4896171/img_7d937be6e8.png
Эксплуатация
Dismantling Megamos Crypto: Wirelessly Lockpicking a Vehicle Immobilizer
https://forum.antichat.xyz/attachments/4896171/img_b586544103.png
Memory Graph Approach for Program Data Introspection and Modification
https://forum.antichat.xyz/attachments/4896171/img_22ea498e92.png
Remote Exploitation of an Unaltered Passenger Vehicle
https://forum.antichat.xyz/attachments/4896171/img_37e6e59d9e.png
Набор команд
Intel® 64 and IA-32 Architectures Software Developer Manuals: В этих руководствах описываются архитектура и среда программирования архитектур Intel ® 64 и IA-32.
https://forum.antichat.xyz/attachments/4896171/img_318e026e56.png
X86 Opcode and Instruction Reference: Эта ссылка предназначена для точного указания кода операции и набора инструкций (включая x86-64). Его основная цель-точное определение параметров и атрибутов инструкции.
JSON x86-64 Intel instruction set: Весь набор инструкций Intel x86-64 в машиночитаемом формате JSON до AVX-512.
X86-64 Reference: Получено из сентябрьской версии 2014 года руководства разработчика программного обеспечения для архитектур Intel ® 64 и IA-32, тома 2A и 2B. Использует интеллектуальный анализ PDF для создания ссылки из официальных документов Intel.
Mac and iOS
iOS App Reverse Engineering: iOS App Reverse Engineering-это 1-я в мире книга очень подробно описывающая навыки реверс-инжиниринга для iOS App.
iOS Kernel Security
https://forum.antichat.xyz/attachments/4896171/img_d188a84743.png
Jailbreaking Techniques
https://forum.antichat.xyz/attachments/4896171/img_3aeed455a7.png
Reversing iOS Apps: A Practical Approach
https://forum.antichat.xyz/attachments/4896171/img_0beaa64376.png
Анализ Вредоносных Программ
BlackHat 2015
https://forum.antichat.xyz/attachments/4896171/img_580741a844.png
Analysis of Disco Savings Adware
https://forum.antichat.xyz/attachments/4896171/img_f15a221108.png
You Dirty RAT: Analyzing an AlienSpy Payload
https://forum.antichat.xyz/attachments/4896171/img_a1937731c8.png
Сеть
Reverse Engineering of Protocols from Network Traces
https://forum.antichat.xyz/attachments/4896171/img_f4f2079d60.png
Обфускации и деобфускация
Advanced JS Deobfuscation Via AST and Partial Evaluation
Исследовательский инструментарий
IR Transformation Synthesis for Assembly Instructions
https://forum.antichat.xyz/attachments/4896171/img_c0a7ed535c.png
Распаковка
The Art of Unpacking
https://forum.antichat.xyz/attachments/4896171/img_fb97aa5bea.png
Windows
Defeating Windows Driver Signature Enforcement #1: default drivers
Defeating Windows Driver Signature Enforcement #2: CSRSS and thread desktops
Defeating Windows Driver Signature Enforcement #3: The Ultimate Encounter
Защита от патча
Bypassing PatchGuard on Windows x64
Universal Patchguard and Driver Signature Enforcement Disable
Win32
PInvoke.net: PInvoke.net-это прежде всего wiki, позволяющая разработчикам находить, редактировать и добавлять сигнатуры PInvoke*, пользовательские типы и любую другую информацию, связанную с вызовом Win32 и других неуправляемых API из управляемого кода (написанного на таких языках, как C# или VB.NET).
Дополнительные ссылки
Избранные ссылки по реверс-инжинирингу
Избранное: ссылки по reverse engineering
Библиотека античат