Descompactando o arquivo de firmware do roteador

1

Alguém sabe que tipo de arquivo ou sistema de arquivos um arquivo de firmware do roteador (um baixado do site do fabricante) geralmente é salvo em? Existe uma ferramenta (não estamos falando sobre ferramenta de arquivo como zip / 7z / rar aqui) que eu poderia usar para descompactar / reembalar corretamente o arquivo de firmware? A razão que estou perguntando é porque eu quero mexer com os serviços padrão do dyndns no firmware, provavelmente adicionar algumas alterações a eles e ter meu roteador liberado com o firmware modificado. O roteador não suporta firmwares de terceiros personalizados e extravagantes, daí a razão pela qual eu preciso modificar o firmware de estoque do fabricante.

EDIT - Quando eu postei essa pergunta, eu pensei que o atualizador dyndns no firmware do roteador era apenas um script simples e eu imaginei que poderia fazer uma edição rápida no script, mas na verdade é um binário app quando eu verifiquei todos os processos em execução no roteador, então essa questão não é mais relevante

    
por Flint 08.04.2012 / 10:23

2 respostas

1

O que Bob disse.

Também zip, 7-zip e amigos podem ajudar aqui, porque muitas vezes o próprio arquivo de imagem é compactado e, às vezes, o formato usado pela imagem pode ser aberto por um dos utilitários de compactação usuais.

O procedimento padrão para realmente modificar o firmware é obter todas as ferramentas necessárias para construir o firmware, obter a fonte do firmware, alterar as opções e construir o firmware por conta própria. Isso pode ou não ser impossível dependendo do próprio roteador. Os roteadores geralmente usam o sistema operacional GNU / Linux e, por causa do licenciamento usado para isso, eles precisam disponibilizar fontes para algumas partes do firmware publicamente disponíveis. Eles costumam ser burrados em algum lugar do site do fabricante, embora não seja incomum os fabricantes violarem a licença e não postarem as fontes que modificaram.

A situação exata depende do fabricante do seu roteador e do modelo do roteador.

Você (muitas vezes) não pode simplesmente alterar um valor no arquivo binário porque é difícil encontrar exatamente onde está o valor que você precisa mudar e porque os firmwares geralmente têm algum tipo de sistema de proteção que impedirá o uso do firmware se foi modificado. A principal razão para isso é evitar que flashes de firmwares danificados pelo roteamento de rede aos roteadores e impedi-los de ficarem bloqueados.

    
por 08.04.2012 / 10:45
1

O firmware do roteador é muito provavelmente um arquivo binário compilado - não há nada para descompactar a menos que você desmonte o firmware, ajuste-o (praticamente no nível da montagem) e recompile-o.

Se é um roteador com fonte disponível - por exemplo, o WRT54GL, então é questão de encontrar a fonte e compilá-la.

Eu observaria, no entanto, é relativamente trivial executar clientes dinâmicos do dns ou escrever um lado rápido e sujo do cliente do script dns dinâmico, o que seria uma maneira MUITO mais simples de conseguir o que você quer.

    
por 08.04.2012 / 10:58