Ghidra, zestaw narzędzi do inżynierii odwrotnej NSA

ghydra

Podczas konferencji RSA Amerykańska Agencja Bezpieczeństwa Narodowego ogłosiła otwarcie dostępu do zestawu narzędzi inżynierii odwrotnej „Ghidra”, który zawiera interaktywny dezasembler z obsługą dekompilacji kodu C i dostarcza potężnych narzędzi do analizy plików wykonywalnych.

Projekt Jest rozwijany od prawie 20 lat i jest aktywnie używany przez amerykańskie agencje wywiadowcze.. Aby zidentyfikować zakładki, analizować złośliwy kod, badać różne pliki wykonywalne i analizować skompilowany kod.

Ze względu na swoje możliwości produkt jest porównywalny z rozszerzoną wersją autorskiego pakietu IDA Pro, ale jest przeznaczony wyłącznie do analizy kodu i nie zawiera debuggera.

Ponadto Ghidra obsługuje dekompilację do pseudokodu, który wygląda jak C. (w IDA ta funkcja jest dostępna za pośrednictwem wtyczek innych firm), a także bardziej wydajne narzędzia do wspólnej analizy plików wykonywalnych.

Główne cechy

W zestawie narzędzi do inżynierii odwrotnej Ghidra możemy znaleźć:

  • Obsługa różnych zestawów instrukcji procesora i plików wykonywalnych.
  • Analiza obsługi plików wykonywalnych dla systemów Linux, Windows i macOS.
  • Zawiera dezasembler, asembler, dekompilator, generator grafiki wykonywania programów, moduł do wykonywania skryptów oraz duży zestaw narzędzi pomocniczych.
  • Możliwość wykonywania w trybach interaktywnych i automatycznych.
  • Obsługa wtyczek przy wdrażaniu nowych komponentów.
  • Wsparcie dla automatyzacji działań i rozszerzenia istniejącej funkcjonalności poprzez połączenie skryptów w językach Java i Python.
  • Dostępność środków na pracę zespołową zespołów badawczych i koordynację prac podczas inżynierii odwrotnej bardzo dużych projektów.

Ciekawie, kilka godzin po wydaniu Ghidry pakiet znalazł lukę w implementacji trybu debugowania (domyślnie wyłączone), co otwiera port sieciowy 18001 do zdalnego debugowania aplikacji za pomocą JDWP (Java Debug Wire Protocol).

Domyślnie, połączenia sieciowe zostały wykonane na wszystkich dostępnych interfejsach sieciowych zamiast 127.0.0.1, co ty umożliwia połączenie się z Ghidrą z innych systemów i wykonanie dowolnego kodu w kontekście aplikacji.

Na przykład możesz połączyć się z debugerem i przerwać wykonywanie przez ustawienie punktu przerwania i zastąpić kod do dalszego wykonywania za pomocą polecenia „print new”, na przykład »
drukuj nowe java.lang.Runtime (). exec ('/ bin / mkdir / tmp / dir') ».

Poza tym iMożna zaobserwować publikację prawie całkowicie zmienionego wydania otwartego interaktywnego disasemblera REDasm 2.0.

Program posiada rozszerzalną architekturę, która umożliwia podłączenie sterowników dla dodatkowych zestawów instrukcji i formatów plików w postaci modułów. Kod projektu jest napisany w C ++ (interfejs oparty na Qt) i rozpowszechniany na licencji GPLv3. Praca obsługiwana w systemach Windows i Linux.

Pakiet podstawowy obsługuje formaty oprogramowania sprzętowego PE, ELF, DEX (Android Dalvik), Sony Playstation, XBox, GameBoy i Nintendo64. Spośród zestawów instrukcji obsługiwane są x86, x86_64, MIPS, ARMv7, Dalvik i CHIP-8.

Wśród funkcji, możemy wspomnieć o wsparciu dla interaktywnej wizualizacji w stylu IDA, analizy aplikacji wielowątkowych, budowa wizualnego wykresu postępu, silnik przetwarzania podpisów cyfrowych (współpracujący z plikami SDB) oraz narzędzia do zarządzania projektami.

Jak zainstalować Ghidrę?

Dla zainteresowanych możliwością zainstalowania tego Zestaw narzędzi do inżynierii odwrotnej „Ghidra”`` Powinni wiedzieć, że muszą mieć co najmniej:

  • 4 GB RAM
  • 1 GB do przechowywania zestawu
  • Zainstaluj pakiet Java 11 Runtime and Development Kit (JDK).

Aby pobrać Ghidrę, musimy udać się na jej oficjalną stronę, z której możemy pobrać. Link jest taki.

Zrobiłem to sam Będą musieli rozpakować pobrany pakiet, aw katalogu znajdziemy plik „ghidraRun”, który uruchomi zestaw.

Jeśli chcesz dowiedzieć się więcej na ten temat, możesz odwiedzić poniższy link.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.