Вступ до інструментів зворотного машинобудування

Спосіб зворотного проектування спочатку застосовувався лише до апаратних засобів, а тепер також до комп'ютерів, баз даних і навіть ДНК людини. У сфері кібербезпеки може бути використана зворотна інженерія для визначення специфіки порушення того, як зловмисник звертався до мережі та як система була порушена. Кіберзлочинці використовують весь спектр тактичних злому комп'ютерів, щоб проникнути в корпоративні мережі, що стоять за атакою. Він має певну мету і має досвід, натхнення, структуру та фінансування. У цьому сенсі зворотна інженерія допомагає нам виявити їх тактику в майбутньому для запобігання.

У Kali Linux доступні кілька інструментів зворотного проектування. Ось декілька найважливіших інструментів, що застосовуються у зворотному проектуванні Kali Linux.

Інструменти для реверсивної інженерії

1. ІДА
IDA стала фактичним посібником для вивчення агресивного програмного забезпечення, тестування вразливості та перевірки COTS. Це пропонує широкий спектр функцій і працює дуже добре на всіх платформах, таких як Windows, Linux та Mac OS X. Він також має кілька плагінів, які дозволяють додатково розширити функціональність демонтажа. IDA 5.0 вільно доступний на сайті і його можна легко завантажити. У 2001 році IDA Pro була удостоєна 18-ї нагороди "Технічна досконалість ПК". Це був попередник архітектури Microsoft. Чистий.
Основна перевага цього методу полягає в тому, що будь-який аспект відображуваних даних може змінюватися інтерактивно:
• Укажіть назви функцій, змінних тощо.
• Побудувати діаграми та графіки потоку коду для спрощення розуміння розібраного коду.
• Використовуйте аргументи функцій типу інформації та визначення структури C ++, щоб автоматично називати аргументи та змінні.
• Автоматично розпізнайте та призначте стандартні функції бібліотеки в коді складання.

2. Nudge4j
Nudge4j - це невеликий фрагмент коду Java, який дозволяє користувачеві отримати доступ до вашої програми Java. Він розроблений для використання під час розробки для створення середовища для тестування програмного забезпечення на додаток. Крім того, регресійні перевірки та інтеграційний аналіз для здійснення деяких ключових функцій ви можете підтримувати фрагмент коду Nudge4j, перш ніж натиснути на остаточний реліз.
Як ніби браузер був розумнішим дистанційним управлінням управління вашою програмою Java від браузера. Щоб виконати JVM, надіславши код браузера, пробне програмне забезпечення Live.

3. OllyDbg
OllyDbg - 32-розрядний рівень асемблера Microsoft Windows. Фокус аналізу двійкового коду робить його особливо корисним, коли походження недоступне. OllyDbg - це програмне забезпечення для спільного використання, але ви можете безкоштовно завантажити його та використовувати його.
Деякі особливості OllyDbg наведені наступним чином
1. Аналіз коду - відстежує записи, виявляє процедури перемикачів, виклики API, таблиці, константи циклу та рядки.
2. Пошук папок об’єктів - знаходить об'єкти та підпрограми бібліотеки.
3. Збережіть виправлення між сеансами, поверніть їх у виконувані файли та виправте оновлення.
4. 3DNow, MMX та інструкції для типів даних і розширень SSE, включаючи Athlon.
5. Визнає складні структури, такі як запрошення до провадження у справі.
6. Простежує виконання програми, записує відомі аргументи функції.
7. Знаходження неправильних команд та маскування бінарних послідовностей.
8. Вивчає та модифікує пам'ять, встановлює точки перерви та призупиняє програму на ходу.
9. Введіть виправлення між сеансами, відновіть їх у виконувані файли та виправляйте оновлення.

4. Valgrind:
Valgrind - це пакет з профілюванням та налагодженням Linux. Усуваючи періоди пошуку помилок і зробивши програми більш надійними, ми можемо усунути керування пам’яттю та помилки з ниткою за допомогою свого інструменту. Крім того, може бути проведено детальне профілювання для прискорення програмних процесів та створення нових інструментів за допомогою Valgrind. В даний час розподіл Valgrind складається з шести інструментів для виробництва
• Memcheck (це детектор помилок пам'яті)
• DRD та Helgrind (це два потокові детектори помилок)
• кешгринд (Профілер гілки та кеш-пам'яті)
Виробництво зворотного машинобудування розглядається виробниками як важливий засіб підтримання конкуренції, або деякі можуть вважати це засобом розібрання несправностей у проектуванні та переробці. Однак Kali Linux пропонує нам кілька дуже важливих та відомих інструментів зворотної інженерії. Крім того, існує багато інших інструментів зворотної інженерії, але ці інструменти вже включені та виходять із вікна Kali Linux.

5. Dex2jar
Колекція інструментів і бібліотек, які можна використовувати для поліпшення розвитку Android. dex і java. файли класу. Dex2jar включає колекцію бібліотек Java, які впорядковують завдання, пов’язані з Android, та спрощують проекти APK.
Деякі важливі компоненти Dex2jar наступні:

  1. Формат Dalvik Executable (.dex / .odex) призначений для Dex-Reader. Він має API, подібний до ASM у легкій вазі.
  2. Dex-перекладач призначений для перетворення роботи. Інструкція dex зчитує формат файлу dex і перетворює його у формат ASM після оптимізації деяких.
  3. Dex-це використовується перекладачем dex для представлення інструкцій для dex.
  4. D2j-smali демонтує декс на малий і збирає декс з smali. Різна реалізація smali / baksmali, той самий синтаксис, але ми підтримуємо вхідний стиль "Lcom / dex2jar \ t \ u1234".

6. Андрогард
Androguard - це головним чином додаток, написане пітонами для гри з * Dex / Odex (.dex) (розбирати, ламати), * Android Assets (.arsc). * XML для Android (.xml) * Dex / Odex (віртуальна машина Dalvik), * APK (.apk). Він також постачається з керуванням python для OSX / Linux / / Windows.
Деякі важливі особливості Androguard наведені наступним чином
1. Перший нативний декомпілятор Dalvik (DAD) декомпілюється з байт-коду в вихідний код Java.
2. Сервер з відкритим кодом програмного забезпечення Android.

Висновок

За допомогою цих пристроїв зворотного проектування ви будете насолоджуватися найсучаснішими послугами, оскільки це означає, що вам не доведеться повторювати дослідження, які проводили будь-хто інший, і ви можете вибрати систему. Отже, у цій статті ми побачили різні інструменти зворотного інженерного інструментарію. Я сподіваюся, що Ви знайдете цю статтю корисною.

Рекомендовані статті

Це посібник з інструментів зворотного машинобудування. Тут ми обговорюємо вступ та інструменти зворотної інженерії. Ви також можете ознайомитися з іншими запропонованими нами статтями, щоб дізнатися більше -

  1. Реверсна інженерія з Python
  2. Що таке розробка програмного забезпечення?
  3. Що таке Nmap?
  4. Встановіть Kali Linux
  5. Зворотний бік JavaScript