Domingo, 07:00AM
Case acorda ao som da música “Imperial March” (Star Wars) para mais um dia de trabalho. Trabalho este que é o seu disfarce, pois dificilmente a sociedade desconfiará que um garçom está hackeando alguns servidores por aí…
05:25PM
Case chega um pouco mais cedo em casa. A desculpa dada foi de que sua querida avó estava doente e precisava cuidar dela.
Antes de chegar em casa, Case pegou com Marcus um Anonabox, que nada mais é do que um roteador wireless que pode rotear (encaminhar) todo o tráfego de dados pela rede TOR, dando assim uma certa privacidade e anonimato para suas atividades de hacking. Como já tinha em sua casa um outro roteador (ADSL e Wireless), bastou conectar ao Anonabox via cabo RJ-45 CAT6.
Case senta em frente ao seu notebook. E como é de praxe (e não seria diferente), o famoso pinguim Tux aparece em sua tela para lhe dar boas vindas.
Apesar de estarmos em um mundo interativo com vídeos e imagens, para a prática de hacking Case gosta mesmo é de uma tela escura e caracteres verdes…
Pensa em voz alta: “O que temos para hoje?”
Para adiantar alguma sobre o que Cereal Killer falou ontem no sábado, em uma simples pesquisa no Google, Case descobriu que uma das empresas que prestou serviços durante a construção da usina Belo Monte, mantinha uma conexão VPN com a “Bela” empresa. Vamos chamar a prestadora de “Corvo”.
Garimpando informações
O comando whois (quem é) seguido do domínio retorna informações sobre o seu responsável (CNPJ, Nome fantasia ou real, etc), bem como o IP dos servidores DNS. Experimente digitar whois www.google.com.br para ter uma ideia do que estou falando. Ex:
De posse do CNPJ da Corvo, Case acessou o site da Receita neste endereço em seu navegador Firefox para verificar o status da empresa, dentre outras informações. Para sua surpresa, constatou que a Situação Cadastral estava como Inativa.
Se uma empresa está assim, no caso da Corvo, como ela ainda mantêm uma VPN com a usina? Aí tem coisa… Enfim, isso é papo para outra ocasião.
Com o uso do Nmap, Case experimentou pegar o IP de um dos servidores DNS (obtido através do comando whois) e ver os serviços em execução.
No terminal Case digita o comando nmap -sV IPDOSERVIDOR – veja exemplos de uso do Nmap (lembrando que ele está utilizando o Anonabox, dispensando o uso do comando proxychains antes dos comandos) e tem um resultado surpreendente:
PORT STATE SERVICE VERSION 21/tcp open ftp vsftpd 2.3.4 22/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0) 23/tcp open telnet Linux telnetd 25/tcp open smtp Postfix smtpd 53/tcp open domain ISC BIND 9.4.2 80/tcp open http Apache httpd 2.2.8 ((Ubuntu) DAV/2) 111/tcp open rpcbind 2 (RPC #100000) 139/tcp open netbios-ssn Samba smbd 3.X (workgroup: WORKGROUP) 445/tcp open netbios-ssn Samba smbd 3.X (workgroup: WORKGROUP) 513/tcp open login 514/tcp open tcpwrapped 2049/tcp open nfs 2-4 (RPC #100003) 2121/tcp open ftp ProFTPD 1.3.1 3306/tcp open mysql MySQL 5.0.51a-3ubuntu5 5432/tcp open postgresql PostgreSQL DB 8.3.0 – 8.3.7 5900/tcp open vnc VNC (protocol 3.3) 6667/tcp open irc Unreal ircd 8009/tcp open ajp13 Apache Jserv (Protocol v1.3) 8180/tcp open http Apache Tomcat/Coyote JSP engine 1.1
Portas e mais portas abertas e com os serviços operando em suas versões antigas.
Um prato cheio…
Qualquer empresa que se preocupe com a segurança de suas informações, e presta serviço para uma de grande porte, deve seguir rigorosamente as políticas, procedimentos e normas de segurança estabelecidos. Mas não é o caso da Corvo Corporation Tabajara.
Explorando
De acordo com o resultado do Nmap, o serviço SSH está ativo na porta padrão e ainda por cima na versão 4.7p1. Hummmmmmm…
O SSH (Secure Shell) é um dos serviços mais visados por quem pratica hacking (seja para o bem ou mal). Ele é a porta de entrada, pois uma vez lá dentro e com permissões administrativas, um Hacker poderá executar quaisquer ações como se estivesse fisicamente em frente ao servidor.
Case deseja obter informações sobre a rede da Belo Monte através da VPN com a Corvo, informações essas que serão úteis no futuro.
Metasploit e Armitage
O Metasploit é basicamente um framework para testes de invasão. Com ele podemos escanear um servidor ou uma rede, e obter informações sobre suas vulnerabilidades, bem como explorá-las.
Em seu “arsenal” Case utilizará uma ferramenta chamada Armitage, que funciona utilizando recursos do Metasploit, aumentando assim o seu poder de “ataque”.
Confira um exemplo do Armitage:
Conforme podemos ver na imagem, na parte superior existem opções pré-configuradas, que ao serem clicadas, mostrarão na parte inferior a execução dos comandos. Neste caso foi utilizada uma opção semelhante ao Nmap, para efetuar o escaneamento do servidor, a fim de descobrir os serviços ativos (botão direito sob o host -> Scan).
O ataque
O Armitage possui vários exploits, e um deles consiste em explorar falhas do SSH. Mas antes disso Case precisará adicionar o host a ser “atacado”.
A tela principal do Armitage será parecida com essa:
Case segue esses passos:
Opção Hosts -> Add Hosts.
Na janela que surgir deverá digitar o endereço IP ou o hostname a ser verificado. Em seguida o servidor estará cadastrado para uso futuro.
Após adicionado, Case clica com o botão direito do mouse sobre o servidor, e em seguida na opção Scan. Os resultados do scan serão praticamente os mesmos do Nmap.
Case identificou que o sistema operacional deste servidor é o Gnu Linux, pois ele alterou o seu ícone automaticamente.
Ainda na imagem acima, vemos quem existem algumas opções interessantes como a exploit e payload. Para os fãs de Matrix (como eu!), o exploit faz o papel do Oráculo e Neo é o payload, ou seja, o Oráculo mostra o caminho, mas quem o trilhará será Neo.
Dentro da pasta exploit, Case escolhe Linux, e navega até SSH, onde selecionará o exploit desejado. Em seguida ele deverá arrastar o exploit até o host cadastrado (Corvo Corporation). O Armitage irá explorar a falha e caso esta falha encontrada coincida com o exploit escolhido, o caminho estará preparado.
O payload é o código que irá executar a ação “destrutiva”. Por exemplo, se o SSH possuir uma falha que de alguma forma esteja suscetível à execução de código arbitrário com direitos administrativos (root), o payload irá executar comandos que permitam isso. Em alguns casos o payload mostrará (para o Hacker) um prompt em seu terminal, sinalizando que conseguiu acesso ao terminal da vítima. Será algo parecido com isso:
root@corvoserver:/#_
Pense no que um Hacker poderá fazer. É como se uma mansão estivesse com as portas abertas e um aviso dizendo: “Peguem o que quiserem.”
O troféu
Case conseguiu acesso root ao servidor da Corvo Corporation. Ele tratou de vasculhar no sistema informações sobre a VPN e constatou que a autenticação deste servidor com o servidor de VPN da Belo Monte é feita na base da confiança, ou seja, sem o uso de senha.
Esta façanha ocorreu porque no servidor da Belo Monte existe um arquivo chamado .rhosts, que contém os servidores confiáveis que podem logar em sua rede sem o uso de senha no processo de autenticação.
Confira na imagem abaixo todo o esquema:
Diante disso, Case conclui (e você também) que os administradores do servidor da Corvo e da Belo Monte pouco se importam com questões de segurança.
Todo esse processo de coleta de informações e hacking foi realizado por Case numa tarde de domingo…
09:30PM
Agora é noite. Case se espreguiça na cadeira, pois foram boas horas de descobertas em frente ao seu laptop. Como é de costume após as atividades de Hacking, Case faz um belo café, para dar aquela brisada.
Case liga para Marcus através da rede wireless (do Anonabox) com seu BlackPhone (Marcus também possui um), um aparelho celular feito exclusivamente para quem se importa com a segurança de seus dados e não quer que o governo ou empresas particulares tenham acesso ao que você fala ou escreve no aparelho.
– E ai Marcus, blz?
– Tranquilo Case, estou assistindo alguns filmes, nada de mais interessante.
– Marcus, consegui algumas informações interessantes sobre a operação “Queda do sistema”. Vou te enviar um esquema que montei. A imagem falará por si só.
“Sending file…”
A imagem chega instantaneamente à Marcus através do Telegram (um dos aplicativos de mensagem instantânea mais seguros que existem). Ao ver a imagem, Marcus fica de boca aberta.
– Como a Belo Monte mantêm uma conexão de VPN com uma empresa que deixa todas as portas abertas?
– Detalhe Marcus, perante ao governo a Corvo não existe. É meio estranho isso não?
– Com certeza Case, e isso tudo atiçou ainda mais a minha curiosidade.
– Marcus, gostaria que focasse nisso, em descobrir mais informações sobre a Corvo, e sobre a infraestrutura da Belo Monte. Amanhã a Belo Monte deverá responder ao “e-mail” que enviei solicitando uma visita às instalações físicas da empresa (Veja Diário de um Hacker #02), pois somos “estudantes” de engenharia elétrica, não lembra? hehe.
– É pra já!
Case desliga. Fica pensativo e observa a tela do terminal em seu laptop.
Se um dia você praticar um hacking em qualquer servidor Linux/Unix e der de cara com a informação acima, saiba que estará com a faca e o queijo na mão. Mas saiba cortar o queijo.
Case está um pouco cansado, pois além de ter trabalhado no restaurante, ficou o resto do dia em frente ao laptop.
Embaixo do chuveiro, com a água caindo em sua cabeça, Case reflete sobre o que poderá encontrar pela frente na operação “Queda do sistema”.
Além do óbvio, sempre existe algo a mais.
Saindo um pouco da “pauta”, a música “Glass” da banda “The Anix” foi a minha inspiração para este post.
Confira:
Até a próxima!