Vamos continuar nesse post a obtenção de informação. Como comentado nos posts anteriores, toda a informação que você coletar é útil. Boa parte do tempo de um pentest é a obtenção de informação.
Então vamos lá! O que podemos adquirir de informação de um alvo? Podemos começar olhando o site e o seu código fonte para ver se conseguimos alguma informação de clientes, emails, tecnologias, e outras informações que a empresa faz questão de mostrar.
Outra fonte riquíssima de informação é a consulta de domínio. Com um simples comandos podemos obter bastante informações sobre o registro do domínio, o webmaster e em alguns casos informações de email e login no provedor do domínio.
Por exemplo, se rodarmos o comando whois aqui no blog, você vai receber várias informações sobre o domínio, site e pessoais do dono do site, neste caso eu.
OBS: catalogue todas as informações encontradas para por no relatório final. Se você usa Linux/Unix você pode usar o comando script antes de começar ou usar o comando tee para mandar todas as saídas para um arquivo.
Outro comando interessante é o dig. Com ele podemos obter algumas informações sobre os servidores DNS e redirecionamentos que o site usa. Por exemplo, se você rodar o comando dig -t MX brutalsecurity.com.br vai perceber que redirecionamos o nosso servidor de email para o servidor do zoho mail.
DICA: Para mais informações leia o manual dos comandos whois, script, tee e dig.
Você também pode usar sites como o Domain Tools e Netcraft para obter estas informações e algumas outras.
Existe também um site chamado You Get Signal, que um dos seus serviços é mostrar, através de buscas por DNS, quais sites estão hospedados no mesmo host. Isso pode ajudar também na obtenção de informação, mas lembre-se, mesmo que você tenha permissão para testar a segurança de um site, você não tem permissão de atacar sites de terceiros que estejam hospedados no mesmo servidor.
No blog temos também um post sobre o Dirb. O Dirb é um crawler, sua função é basicamente ficar procurando por páginas em um site. Outras ferramentas fazem isso, para Windows por exemplo temos o Acunetix.
Um lugar muito bom para obter informações de usuários e/ou funcionários é as redes sociais. É bem comum os usuários soltarem informações sensíveis sobre suas rotinas nas redes sociais, e isso pode ser usado contra eles mesmos em um próximo ataque futuro. Então fique ligado em redes sociais bastante usadas como Facebook, Twitter, Google +, Linkedin e etc.
Para ter uma noção, quando tiver um tempo livre crie um perfil fake em uma rede como o Facebook e faça um teste inofensivo, adicione alguns amigos e familiares e interaja com eles para ver o que eles podem soltar de informação sensível.
Antes de iniciarmos os scans, precisamos levar em conta que existem dois tipos de fingerprint, o passivo e o ativo. O passivo seria as técnicas de sniffing, onde você não pede pela informação, você apenas captura quando ela passa, neste primeiro ponto vai ser necessário acesso físico a rede da empresa, como uma rede sem fio desprotegida por exemplo. Já o fingerprint ativo é onde vamos fazer requisições ao servidor e a partir das respostas avaliar quem é e o que está rodando no servidor do alvo.
Para isso abra o ettercap e vá em Sniff > Unified sniffing...
Escolha a interface que será usada, no meu caso, eth0.
Agora inicie a ferramenta em Start > Start sniffing.
Após tudo iniciado, acesse o site que você deseja fazer o Fingerprint Passivo. No meu caso aqui vou acessar meu próprio site. Assim que o site carregar volte ao ettercap e vá em View > Profiles.
Se tudo deu certo você vai ver uma tela parecida com a abaixo. Agora basta clicar em cima do endereço do site e na janela que vai abrir vai ter qual é o SO que está rodando no servidor.
Estranho meu servidor não? Veja a imagem de um outro site:
Para o servidor, isso foi apenas um acesso normal, para nós foi extremamente útil, conseguimos mais um bocado de informações.
Já o fingerprint ativo é um pouco mais intrusivo, porque vamos fazer uma série de requisições ao site de diversas formas e em diversas portas, isso provavelmente vai cair nos logs e levantar suspeitas.
Podemos começar com o ping, através do TTL (Time To Live) podemos identificar qual é o sistema do alvo. Mas cuidado, nem sempre isso vai estar certo, isso pode ser alterado, então não se baseie totalmente nisso.
Algumas opções de TTL para sistemas default:
● Cyclades - Normalmente 30
● Linux - Normalmente 64
● Windows - Normalmente 128
● Cisco - Normalmente 255
● Linux + iptables - Normalmente 255
Por exemplo, rodei o comando na Brutal Security e o TTL foi 245, já quebrando com essa lógica, neste caso o servidor onde hospedei o site mudou o TTL. Mas se adicionarmos os hops daria 255, o que indicaria um Linux + iptables.
Outro comando presente em praticamente todos os sistemas é o traceroute. Podemos ver quantos saltos nosso pacote dá até chegar ao servidor.
Podemos ver que nos hops 18 até 36 não obtivemos nenhuma informação, provavelmente seja algum tipo de filtro, firewall ou sistema de descartes de pacotes.
Então vamos lá! O que podemos adquirir de informação de um alvo? Podemos começar olhando o site e o seu código fonte para ver se conseguimos alguma informação de clientes, emails, tecnologias, e outras informações que a empresa faz questão de mostrar.
Outra fonte riquíssima de informação é a consulta de domínio. Com um simples comandos podemos obter bastante informações sobre o registro do domínio, o webmaster e em alguns casos informações de email e login no provedor do domínio.
Por exemplo, se rodarmos o comando whois aqui no blog, você vai receber várias informações sobre o domínio, site e pessoais do dono do site, neste caso eu.
OBS: catalogue todas as informações encontradas para por no relatório final. Se você usa Linux/Unix você pode usar o comando script antes de começar ou usar o comando tee para mandar todas as saídas para um arquivo.
Outro comando interessante é o dig. Com ele podemos obter algumas informações sobre os servidores DNS e redirecionamentos que o site usa. Por exemplo, se você rodar o comando dig -t MX brutalsecurity.com.br vai perceber que redirecionamos o nosso servidor de email para o servidor do zoho mail.
DICA: Para mais informações leia o manual dos comandos whois, script, tee e dig.
Você também pode usar sites como o Domain Tools e Netcraft para obter estas informações e algumas outras.
Existe também um site chamado You Get Signal, que um dos seus serviços é mostrar, através de buscas por DNS, quais sites estão hospedados no mesmo host. Isso pode ajudar também na obtenção de informação, mas lembre-se, mesmo que você tenha permissão para testar a segurança de um site, você não tem permissão de atacar sites de terceiros que estejam hospedados no mesmo servidor.
No blog temos também um post sobre o Dirb. O Dirb é um crawler, sua função é basicamente ficar procurando por páginas em um site. Outras ferramentas fazem isso, para Windows por exemplo temos o Acunetix.
Um lugar muito bom para obter informações de usuários e/ou funcionários é as redes sociais. É bem comum os usuários soltarem informações sensíveis sobre suas rotinas nas redes sociais, e isso pode ser usado contra eles mesmos em um próximo ataque futuro. Então fique ligado em redes sociais bastante usadas como Facebook, Twitter, Google +, Linkedin e etc.
Para ter uma noção, quando tiver um tempo livre crie um perfil fake em uma rede como o Facebook e faça um teste inofensivo, adicione alguns amigos e familiares e interaja com eles para ver o que eles podem soltar de informação sensível.
Fingerprint
O fingerprint é uma das principais técnicas de levantamento de informações. Com o fingerprint podemos obter informações bem específicas do servidor do alvo, como por exemplo, Sistema Operacional, portas abertas, banners, serviços rodando, versões de serviços, sniffing de rede e etc. Vamos ver algumas dessas técnicas a seguir.Antes de iniciarmos os scans, precisamos levar em conta que existem dois tipos de fingerprint, o passivo e o ativo. O passivo seria as técnicas de sniffing, onde você não pede pela informação, você apenas captura quando ela passa, neste primeiro ponto vai ser necessário acesso físico a rede da empresa, como uma rede sem fio desprotegida por exemplo. Já o fingerprint ativo é onde vamos fazer requisições ao servidor e a partir das respostas avaliar quem é e o que está rodando no servidor do alvo.
Fingerprint Passivo
Para o fingerprint passivo vamos usar o ettercap. O ettercap tem milhares de funções, vamos vendo elas aos poucos. Como neste caso ainda não temos acesso físico a rede do alvo vamos tentar descobrir qual é o Sistema Operacional que está hospedando o site do alvo.Para isso abra o ettercap e vá em Sniff > Unified sniffing...
Escolha a interface que será usada, no meu caso, eth0.
Agora inicie a ferramenta em Start > Start sniffing.
Após tudo iniciado, acesse o site que você deseja fazer o Fingerprint Passivo. No meu caso aqui vou acessar meu próprio site. Assim que o site carregar volte ao ettercap e vá em View > Profiles.
Se tudo deu certo você vai ver uma tela parecida com a abaixo. Agora basta clicar em cima do endereço do site e na janela que vai abrir vai ter qual é o SO que está rodando no servidor.
Estranho meu servidor não? Veja a imagem de um outro site:
Para o servidor, isso foi apenas um acesso normal, para nós foi extremamente útil, conseguimos mais um bocado de informações.
Fingerprint Ativo
Já o fingerprint ativo é um pouco mais intrusivo, porque vamos fazer uma série de requisições ao site de diversas formas e em diversas portas, isso provavelmente vai cair nos logs e levantar suspeitas.
Podemos começar com o ping, através do TTL (Time To Live) podemos identificar qual é o sistema do alvo. Mas cuidado, nem sempre isso vai estar certo, isso pode ser alterado, então não se baseie totalmente nisso.
Algumas opções de TTL para sistemas default:
● Cyclades - Normalmente 30
● Linux - Normalmente 64
● Windows - Normalmente 128
● Cisco - Normalmente 255
● Linux + iptables - Normalmente 255
Por exemplo, rodei o comando na Brutal Security e o TTL foi 245, já quebrando com essa lógica, neste caso o servidor onde hospedei o site mudou o TTL. Mas se adicionarmos os hops daria 255, o que indicaria um Linux + iptables.
Outro comando presente em praticamente todos os sistemas é o traceroute. Podemos ver quantos saltos nosso pacote dá até chegar ao servidor.
Podemos ver que nos hops 18 até 36 não obtivemos nenhuma informação, provavelmente seja algum tipo de filtro, firewall ou sistema de descartes de pacotes.
0 comentários:
Postar um comentário