Wprowadzenie do narzędzi inżynierii odwrotnej

Metoda inżynierii odwrotnej była pierwotnie stosowana tylko do sprzętu, ale teraz także do komputerów, baz danych, a nawet ludzkiego DNA. W obszarze bezpieczeństwa cybernetycznego można zastosować inżynierię odwrotną, aby określić szczegóły naruszenia tego, w jaki sposób atakujący uzyskał dostęp do sieci i w jaki sposób system został naruszony. Cyberprzestępcy wykorzystują całą gamę taktyk hakowania komputera, aby przeniknąć do sieci korporacyjnych stojących za atakiem. Ma konkretny cel i doświadczenie, inspirację, strukturę i finansowanie. W tym sensie inżynieria odwrotna pomaga nam wykryć ich taktykę w przyszłości, aby temu zapobiec.

Kilka narzędzi do inżynierii wstecznej jest dostępnych w Kali Linux. Oto niektóre z najważniejszych narzędzi używanych w inżynierii odwrotnej Kali Linux.

Narzędzia do inżynierii odwrotnej

1. IDA
IDA stało się de facto przewodnikiem do badania agresywnego oprogramowania, testowania podatności i sprawdzania poprawności COTS. Oferuje szeroki zakres funkcji i działa bardzo dobrze na wszystkich platformach, takich jak Windows, Linux i Mac OS X. Ma również kilka wtyczek, które pozwalają na dalsze rozszerzenie funkcjonalności demontera. IDA 5.0 jest dostępne bezpłatnie na stronie i można je łatwo pobrać. W 2001 r. IDA Pro otrzymało 18. nagrodę PC Excellence Awards magazynu PC. Był to architektoniczny poprzednik Microsoftu. Netto.
Główną zaletą tej metody jest to, że dowolny aspekt wyświetlanych danych można modyfikować interaktywnie:
• Podaj nazwy funkcji, zmiennych itp.
• Buduj diagramy i wykresy przepływu kodu, aby uprościć zrozumienie zdemontowanego kodu.
• Użyj informacji o typie argumentów funkcji i definicji struktury C ++, aby automatycznie nazwać argumenty i zmienne.
• Automatycznie rozpoznaje i tytułuje standardowe funkcje biblioteczne w kodzie asemblera.

2. Nudge4j
Nudge4j to niewielki fragment kodu Java, który umożliwia użytkownikowi dostęp do aplikacji Java. Jest przeznaczony do użycia podczas programowania do tworzenia środowiska do testowania oprogramowania pod działającą aplikacją. Ponadto, sprawdzanie regresji i analiza integracji w celu wykonania niektórych z kluczowych funkcji, możesz zachować fragment kodu Nudge4j przed wypuszczeniem ostatecznej wersji.
Tak jakby przeglądarka była inteligentniejszym pilotem do sterowania programem Java z poziomu przeglądarki. Aby wykonać JVM, wysyłając kod przeglądarki, wersja próbna oprogramowania na żywo.

3. OllyDbg
OllyDbg to 32-bitowy asembler dla systemu Microsoft Windows. Analiza kodu binarnego sprawia, że ​​jest szczególnie przydatny tam, gdzie nie ma dostępu do źródła. OllyDbg to aplikacja typu shareware, ale można ją pobrać bezpłatnie i używać.
Niektóre funkcje OllyDbg podano poniżej
1. Analiza kodu - śledzi rekordy, wykrywa przełączniki procedur, wywołania API, tabele, stałe i ciągi pętli.
2. Wyszukaj folder obiektów - lokalizuje obiekty i procedury biblioteczne.
3. Zapisz łaty między sesjami, przywróć je do plików wykonywalnych i napraw aktualizacje.
4. 3DNow, MMX i instrukcje dla typów danych SSE i rozszerzeń, w tym Athlon.
5. Rozpoznaje złożone struktury, takie jak zaproszenie do postępowania.
6. Śledzi wykonanie programu, rejestruje znane argumenty funkcji.
7. Znajdowanie niepoprawnych poleceń i maskowanie sekwencji binarnych.
8. Bada i modyfikuje pamięć, ustawia punkty przerwania i wstrzymuje program w locie.
9. Wprowadź poprawki między sesjami, przywróć je do plików wykonywalnych i napraw aktualizacje.

4. Valgrind:
Valgrind to pakiet do profilowania i debugowania systemu Linux. Eliminując okresy szukania błędów i zwiększając niezawodność programów, możemy wyeliminować błędy zarządzania pamięcią i wątków za pomocą tego narzędzia. Ponadto można przeprowadzić szczegółowe profilowanie, aby przyspieszyć procesy programu i zbudować nowe narzędzia za pomocą Valgrind. Dystrybucja Valgrind składa się obecnie z sześciu narzędzi do produkcji
• Memcheck (wykrywacz błędów pamięci)
• DRD i Helgrind (jest to wykrywacz błędów dwóch wątków)
• cachegrind (Profiler oddziału i cache)
Przemysł inżynierii odwrotnej jest postrzegany przez producentów jako znaczący sposób na utrzymanie konkurencji, lub niektórzy mogą uznać to za sposób na zrozumienie błędów projektowych i naprawczych. Jednak Kali Linux oferuje nam bardzo ważne i dobrze znane narzędzia do inżynierii odwrotnej. Ponadto istnieje wiele innych narzędzi do inżynierii odwrotnej, ale narzędzia te są już uwzględnione i pochodzą z pakietu Kali Linux.

5. Dex2jar
Zbiór narzędzi i bibliotek, które można wykorzystać do usprawnienia rozwoju Androida. dex i java. pliki klas. Dex2jar zawiera kolekcję bibliotek Java, które usprawniają zadania programistyczne związane z Androidem i upraszczają projekty APK.
Niektóre ważne elementy Dex2jar są następujące:

  1. Format wykonywalny Dalvik (.dex / .odex) jest przeznaczony dla czytnika dex. Ma lekki interfejs API podobny do ASM.
  2. Dex-translator jest przeznaczony do konwersji. Instrukcja dex odczytuje format pliku dex i konwertuje go na format ASM po zoptymalizowaniu niektórych.
  3. Dex-it jest używany przez dex-translator do reprezentowania instrukcji dla dex.
  4. D2j-smali rozbiera dex na małe i montuje dex z smali. Inna implementacja smali / baksmali, ta sama składnia, ale obsługujemy ucieczkę w stylu „Lcom / dex2jar \ t \ u1234”.

6. Androguard
Androguard to przede wszystkim aplikacja napisana w pythonach do grania z * Dex / Odex (.dex) (deasemblacja, podział), * Android Assets (.arsc). * XML XML (.xml) * Dex / Odex (maszyna wirtualna Dalvik), * APK (.apk). Jest również wyposażony w kontrolę Pythona dla OSX / Linux / / Windows.
Niektóre ważne funkcje Androguarda podano poniżej
1. Pierwszy natywny dekompilator Dalvik (DAD) jest dekompilowany z kodu bajtowego na kod źródłowy Java.
2. Serwer open source z oprogramowaniem Android.

Wniosek

Za pomocą tych urządzeń do inżynierii odwrotnej będziesz cieszyć się najnowocześniejszymi usługami, ponieważ oznacza to, że nie musisz powtarzać badań przeprowadzonych przez nikogo innego i możesz wybrać system. W tym artykule widzieliśmy różne narzędzia do inżynierii odwrotnej. Mam nadzieję, że ten artykuł okaże się pomocny.

Polecane artykuły

Jest to przewodnik po narzędziach inżynierii odwrotnej. Tutaj omawiamy wprowadzenie i narzędzia do inżynierii odwrotnej. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -

  1. Inżynieria odwrotna z Pythonem
  2. Co to jest tworzenie oprogramowania?
  3. Co to jest Nmap?
  4. Zainstaluj Kali Linux
  5. Odwróć w JavaScript