binwalk é uma ferramenta muito útil para analisar dumps de firmware e extrair o conteúdo do (s) sistema (s) de arquivos que eles podem conter.
Estou procurando uma maneira de lidar com esse arquivo e não encontrei nada específico o suficiente ainda. Estou tentando encontrar as credenciais de login codificadas no firmware de um roteador, e acho que estou quase no meio do caminho para o meu objetivo, mas já estou com problemas.
Eu separei a coisa, encontrei uma interface serial interna, consegui soldar pinos em / hook a um Raspberry Pi / obter um console, mas estou preso em um prompt de login sem credenciais. Então ...
Eu consegui parar a inicialização e obter um prompt de bootloader (CFE). Eu pensei em mudar os parâmetros de boot para incluir init=/bin/sh
, mas o bootloader aleijado (intencionalmente eu acho), então eu não posso alterar variáveis de ambiente ou especificar um comando de inicialização ou qualquer coisa.
O que eu posso fazer é despejar o flash. Se eu despejo a coisa toda e acabo com um arquivo binário (.bin) (estou no Arch Linux BTW) , como eu leio?
Seria simples, exceto que este arquivo é uma imagem de disco, então ele deve conter vários arquivos e diretórios, mas não tenho idéia do que fazer com isso. Eu poderia montá-lo como um sistema de arquivos (provavelmente FAT)? Como?
Parei de encontrar informações sobre esse projeto cerca de cinco etapas atrás, estou em território desconhecido e um pouco fora de minha profundidade. Mais do que tudo, estou tentando encontrar um /etc/passwd
ou /etc/shadow
; haveria um padrão reconhecível nos dados nesses arquivos que eu poderia procurar?
binwalk é uma ferramenta muito útil para analisar dumps de firmware e extrair o conteúdo do (s) sistema (s) de arquivos que eles podem conter.
Se é um sistema de arquivos (parece que é) você deve ser capaz de montá-lo, a parte complicada é descobrir o deslocamento. Nunca é demais tentar! Aqui está um exemplo, não tenho ideia do que pode funcionar para você ...
mount -o loop,ro,offset=32256 whatever.bin /mnt/my.image
O comando arquivo talvez ajude a adivinhar o tipo de arquivo que você possui e, para examinar seu conteúdo, você certamente desejará se familiarizar com um editor hexadecimal (existem muitas opções lá, você provavelmente já tem o ghex instalado)