hacktricks/hardware-physical-access/firmware-analysis/bootloader-testing.md

4.7 KiB

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %} {% endhint %}

Zalecane kroki do modyfikacji konfiguracji uruchamiania urządzenia i bootloaderów, takich jak U-boot:

  1. Dostęp do powłoki interpretera bootloadera:
  • Podczas uruchamiania naciśnij "0", spację lub inne zidentyfikowane "kody magiczne", aby uzyskać dostęp do powłoki interpretera bootloadera.
  1. Modyfikacja argumentów uruchamiania:
  • Wykonaj następujące polecenia, aby dodać 'init=/bin/sh' do argumentów uruchamiania, co pozwoli na wykonanie polecenia powłoki: %%% #printenv #setenv bootargs=console=ttyS0,115200 mem=63M root=/dev/mtdblock3 mtdparts=sflash: rootfstype= hasEeprom=0 5srst=0 init=/bin/sh #saveenv #boot %%%
  1. Konfiguracja serwera TFTP:
  • Skonfiguruj serwer TFTP, aby ładować obrazy przez lokalną sieć: %%% #setenv ipaddr 192.168.2.2 #lokalny adres IP urządzenia #setenv serverip 192.168.2.1 #adres IP serwera TFTP #saveenv #reset #ping 192.168.2.1 #sprawdź dostęp do sieci #tftp ${loadaddr} uImage-3.6.35 #loadaddr przyjmuje adres, do którego ma zostać załadowany plik oraz nazwę pliku obrazu na serwerze TFTP %%%
  1. Wykorzystanie ubootwrite.py:
  • Użyj ubootwrite.py, aby zapisać obraz U-boot i wprowadzić zmodyfikowane oprogramowanie układowe, aby uzyskać dostęp root.
  1. Sprawdzenie funkcji debugowania:
  • Zweryfikuj, czy funkcje debugowania, takie jak szczegółowe logowanie, ładowanie dowolnych rdzeni lub uruchamianie z nieufnych źródeł, są włączone.
  1. Ostrożność przy ingerencji w sprzęt:
  • Bądź ostrożny podczas łączenia jednego pinu z masą i interakcji z chipami SPI lub NAND flash podczas sekwencji uruchamiania urządzenia, szczególnie przed dekompresją jądra. Skonsultuj się z kartą katalogową chipu NAND flash przed skracaniem pinów.
  1. Konfiguracja fałszywego serwera DHCP:
  • Skonfiguruj fałszywy serwer DHCP z złośliwymi parametrami, które urządzenie ma przyjąć podczas uruchamiania PXE. Wykorzystaj narzędzia, takie jak pomocniczy serwer DHCP Metasploit (MSF). Zmodyfikuj parametr 'FILENAME' za pomocą poleceń wstrzykiwania, takich jak 'a";/bin/sh;#', aby przetestować walidację wejścia dla procedur uruchamiania urządzenia.

Uwaga: Kroki związane z fizyczną interakcją z pinami urządzenia (*oznaczone gwiazdkami) powinny być podejmowane z ekstremalną ostrożnością, aby uniknąć uszkodzenia urządzenia.

Referencje

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %} {% endhint %}