DOE AGORA Qualquer valor

EyeWitness - uma ferramenta de triagem de aplicativos da Web rápida


Mais da metade das avaliações que eu, e nossa equipe, incluímos incluem aplicativos da web. Mesmo em avaliações de nível de rede, como identificamos máquinas vivas dentro de uma rede de destino, é bastante comum encontrarmos um grande número de aplicativos da web. Esses aplicativos da web podem ser seus próprios aplicativos para o propósito do cliente ou front-ends da web para vários appliances (switches, telefones VOIP, etc.). Eu precisava de uma maneira de obter rapidamente uma rápida olhada em todos os dispositivos que servem uma página da Web, o que me permitiria tentar descobrir os sites que priorizariam. Tim Tomes desenvolveu uma ferramenta incrível chamada PeepingTom,  que faz o que eu precisava. Funciona muito bem e recomendo a todos que o façam.
No entanto, o PeepingTom requer o PhantomJS e precisa ser baixado separadamente. Eu tive alguns problemas em que ele não consegue capturar uma captura de tela do aplicativo da web e isso me intrigou. Comecei a pesquisar diferentes maneiras de tirar screenshots com um script python e deparei com o Ghost.py . O Ghost é um auto-descrito “navegador web scriptável baseado em webkit para python”, e é capaz de capturar facilmente páginas da web. Neste ponto, pensei que seria uma tarefa divertida tentar criar minha própria ferramenta, que captura capturas de tela e gera um relatório como um exercício de pensamento, e o resultado final é o EyeWitness .
EyeWitnessUI
O EyeWitness é projetado para pegar um arquivo, analisar as URLs, fazer uma captura de tela das páginas da web e gerar um relatório da captura de tela juntamente com algumas informações de cabeçalho do servidor. O EyeWitness é capaz de analisar três tipos diferentes de arquivos, um arquivo de texto geral com cada URL em uma nova linha, a saída xml de uma varredura NMap ou um arquivo .nessus. Jason Hill ( @jasonhillva ) trabalhou na criação do código de análise XML para o EyeWitness e forneceu muitos comentários durante a gravação. Nós também comparamos os resultados do analisador XML e do nessus com o de Tim Tomes em PeepingTom, e eles são quase idênticos, então estamos felizes com os recursos de análise.
Além de fornecer o nome do arquivo, você também pode, opcionalmente, fornecer um valor de tempo limite máximo. O valor de tempo limite é a quantidade máxima de tempo que o EyeWitness espera por uma página da Web para renderizar, antes de passar para o próximo URL na lista.
EyeWitnessCLI
O EyeWitness irá gerar um relatório baseado nas capturas de tela que ele conseguiu capturar e fornecerá as informações do cabeçalho ao lado dele. O relatório é extremamente semelhante ao resultado do PeepingTom porque eu honestamente achei que ele continha muitas informações úteis.
EyeWitnessReport
Há algumas coisas que o EyeWitness faz para se diferenciar. O EyeWitness é capaz de identificar as credenciais padrão do aplicativo da web para a página da web que está olhando. Quando o EyeWitness reconhece um aplicativo da Web, ele fornecerá as credenciais padrão juntamente com as informações do cabeçalho do servidor. Atualmente, o EyeWitness tem um pequeno número de dispositivos / páginas da web que ele pode reconhecer em seu arquivo de assinatura, no entanto, isso é simplesmente porque eu não tenho acesso direto a outras máquinas no momento.
Além disso, as capturas de tela capturadas pelo EyeWitness são quase do tamanho real do próprio aplicativo da web e contêm a página inteira do URL especificado. Você é capaz de olhar facilmente para a tela inteira movendo o controle deslizante pela mesa ou simplesmente clicar na foto e acessá-la em sua própria guia.
Outra opção oferecida pelo EyeWitness é a capacidade de abrir automaticamente todos os URLs em um navegador da web (no Kali), conforme ele passa pela lista de URLs. Assim, à medida que a ferramenta é executada, um navegador da Web iceweasel abre guias de todas as URLs fornecidas no arquivo de entrada.
Eu gostaria de apresentar um apelo à ação. À medida que você encontra páginas da Web que usam credenciais padrão para um aplicativo da Web ou dispositivos em rede, adoraria se você me enviasse o código-fonte da página de índice, junto com as credenciais padrão, para o EyeWitness [at] christophertruncer [dot] com, ou simplesmente envie um pedido de pull para mim com a assinatura que você criou no arquivo de assinatura. Quando encontro aplicativos com credenciais padrão ou eu os envio, atualizarei o EyeWitness para poder identificar e fornecer esses credenciais padrão.
Para adicionar assinaturas ao arquivo signatures.txt, basta adicionar a “assinatura” que é usada para identificar exclusivamente o aplicativo / dispositivo da web em uma nova linha, usar o “|” (pipe) como delimitador e, em seguida, adicionar as credenciais padrão na mesma linha.
Obrigado novamente por verificar o EyeWitness, e espero que ele possa ajudá-lo em avaliações!
O EyeWitness pode ser clonado em -  https://github.com/ChrisTruncer/EyeWitness
Um deck de slides que fiz para uma apresentação do NOVAHackers está disponível aqui .

Comentários

Ebook

Postagens mais visitadas