DEFCON 20: "Adventures in router rootkits"

Nesta palestra da DEFCON 20, Michael Coppola mostrou uma ferramenta que desenvolveu chamada "Router Post-Exploitation Framework" (RPEF), que automatiza o processo de criar firmwares troianizados para modelos específicos de roteadores WiFi, tais como o Netgear WNR1000v3, o WGR614v9, o Belkin FD57230-4 v1110 e o Trendnet TEW-652BRP v3.2R. Em princípio, a ferramenta tenta ser um arcabouço genérico e extensível que possa acomodar um número crescente de modelos de roteadores, e para isso o autor espera contar com contribuições da comunidade.

O que a ferramenta faz é automatizar o processo de desmontar o arquivo .trx, .chk ou .bin que contém o firmware original (baixado da página web do fabricante), interpretar as várias partições e segmentos, desmontando-as em seus arquivos constituintes, inserir binários nossos com ferramentas ou troianos, alterar os arquivos de partida e configuração subjacentes, e, por fim, remontar tudo em um novo arquivo que possa ser enviado para a ferramenta de upgrade de software embutida do roteador.

Em rigor, tudo que o RPEF faz, já dava para fazer antes "na mão" – mas aí você teria que desmontar os binários manualmente, descascar os filesystems (e eles usam várias diferentes versões do CramFS ou SquashFS – algumas inclusive com modificações proprietárias), preparar os binários com suas ferramentas e remontar tudo direitinho, calculando os offsets e checksums apropriados. Eu já fiz coisa parecida algumas vezes e, acredite, é uma trabalheira danada. É inegável que a ferramenta que o autor apresentou torna o trabalho muitíssimo mais fácil – coisa de dois minutos –, se você tiver um dos modelos de roteadores suportados.

Se o modelo do seu roteador não for um dos suportados,... bem, aí você terá de fazer pelo processo manual, mesmo; ou, idealmente, se você sabe programar em C e Python, você poderia acrescentar ao RPEF o suporte necessário para troianizar seu modelo de roteador.

Aliás, o termo "post-exploitation" em "Router Post-Exploitation Framework", está lá por uma razão muito boa: ele assume que você já obteve acesso administrativo ao roteador, seja tendo descobrido a senha de administrador ou tendo explorado alguma vulnerabilidade nele que lhe deu tal acesso; o RPEF, em si, não "invade" o roteador; ele "simplesmente" te dá um meio de acampar nele uma vez tendo chegado lá.

O autor demonstrou três programinhas de troianização: um mini-botnet client que se conecta no IRC; um sniffer que captura todos os pacotes trafegando e exibe um hexdump dos dados trafegando e um shell remoto. Naturalmente, vários outros programas podem ser adicionados também.

Partes anteriores

Próxima parte

Comentários
Aceita-se formatação à la TWiki. HTML e scripts são filtrados. Máximo 15KiB.

 
Enviando... por favor aguarde...
Comentário enviado com suceso -- obrigado.
Ele aparecerá quando os moderadores o aprovarem.
Houve uma falha no envio do formulário!
Deixei uma nota para os admins verificarem o problema.
Perdoe-nos o transtorno. Por favor tente novamente mais tarde.