1 CEETEPS – Centro Estadual de Educação Tecnológica Paula Souza FATEC – Faculdade de Tecnologia de Ourinhos Análise de Sistemas e Tecnologias da Informação Autores: Edenilson de Melo, Fábio Cristiano Silva e Vagner Campeão ENGENHARIA SOCIAL A engenharia social é um dos meios mais utilizados de obtenção de informações sigilosas e importantes. Isso porque explora com muita sofisticação as "falhas de segurança dos humanos". (Emerson Alecrim, on-line) Podemos dizer que a Engenharia Social é um tipo de ataque utilizado por crackers, onde a principal "arma" utilizada é a habilidade de lidar com pessoas, induzindo-as a fornecer informações, executar programas e muitas vezes, fornecer senhas de acesso. Este tipo de invasão, também denominado phishing, não é apenas passar-se por outra pessoa, mas também enviar uma série de e-mails falsos, formulário fraudulentos, anúncios que “dão dinheiro” ou que mudarão a sua vida. Será utilizada, neste caso, uma página fake, uma cópia fiel da página do Orkut, onde a vítima será convencida a fazer o login na mesma. A partir desta, será acionada outra cópia do Orkut, mas desta vez com um script que será capaz de armazenar os dados digitados no login, a partir desta etapa os dados da vítima já serão capturados. Os softwares necessários para realizar este tipo de ataque são: Mozilla Firefox (ou outro navegador de internet); Notepad++ (ou outro editor de texto específico para linguagens de programação); XAMPP (ou outro servidor Apache (Web) e PHP); No-IP DUC + Conta no servidor; Conhecimentos linguagem PHP (ou outra para web) Os links para downloads dos mesmos: Navegador: http://www.baixaki.com.br/download/mozilla-firefox.htm Servidor: http://www.baixaki.com.br/download/xampp.htm Editor de Texto: http://www.baixaki.com.br/download/notepad-.htm No-IP: http://www.baixaki.com.br/download/no-ip.htm Também será criado um servidor para que hospedar as páginas criadas (por isso o uso do XAMPP e No-IP). Neste caso será montado um servidor para usuários de internet que possuem IP dinâmico (Speedy, por exemplo). As páginas também poderão ser hospedadas em servidores on-line. 2 Os softwares utilizados nesse trabalho são exemplos, podendo os mesmos ser substituídos por outros que desenvolvam a mesma função. 3 INVASÃO A invasão por engenharia social, neste caso do Orkut, consiste em quatro etapas: Página Fake A priori o primeiro passo é copiar o código fonte da página original do Orkut, tornando-a fake. Basta abrir a página do Orkut (www.orkut.com) depois no navegador no menu Exibir, Código Fonte. Conforme a figura 1: Figura 01 – Copiar o código-fonte do Orkut Copie o conteúdo do código-fonte e cole no editor de texto Notepad++, e salve o arquivo com o nome index.html. Ao abrir esse arquivo ele deverá carregar uma página semelhante a do Orkut, conforme a figura 2: Figura 02 – Orkut Fake 4 Já que a finalidade é roubar a senha digitada pelo usuário na página, é necessário editar o código fonte. Próximo a linha de nº 348 será aberto, em comando HTML, o Form que “chama” a página de logon do Orkut. Trocaremos a página chamada pelo action por logon.php (página que será criada no passo 2), isto é, tudo o que for digitado nos campos email e senha ao invés de ser autenticado no servidor do Orkut, será recebido pela página em PHP criada, cujo fim é armazenar a senha e e-mail digitados. Figura 03 – Form HTML - Orkut O conteúdo em destaque deverá ser substituído por logon.php. Conforme mostra a figura 4: Figura 04 – Form HTML – Logon.php Página PHP Nesta etapa uma página em PHP será criada que receberá os dados do Form da página fake do Orkut. Para se aproximar mais da realidade, e fazer com que a vítima iludase, é necessário copiar o código fonte da página do Orkut (conforme feito no passo anterior), só que desta vez a página resultante de um logon falho, para que a vítima acredite que errou ao logar. Conforme segue a figura 5: Figura 05 – Falha de login do Orkut 5 Desta vez será necessário alterar o código, inserindo as seguintes linhas de comandos PHP para armazenar o que foi digitado em um arquivo de texto. Essas linhas deverão ser inseridas logo no começo do código fonte. Figura 06 – Script PHP Desta vez permanece a página do Orkut de Logon no Form, pois caso a vítima tenta novamente logar, obterá sucesso, todavia sua senha fora capturada. O arquivo deverá ser salvo com o nome logon.php. Servidor Apache Para que o HTML e o PHP sejam interpretados e a página seja acessada na internet é necessário um servidor, que pode ser on-line ou local. Se for um servidor on-line, ambas as páginas criadas deverão ser hospedadas em algum servidor que forneça o serviço de interpretação da linguagem PHP (www.t35.com.br – é um exemplo de servidor grátis). Caso o servidor seja a sua própria máquina siga os seguintes passos: Neste estudo será criado um servidor para máquinas que se conectam na internet por IP Dinâmico (serviços ofertados pela Speedy, por exemplo). A máquina que hospedará a página também fornecerá os requisitos necessários para a compreensão do código fonte em PHP. O XAMPP é um software capaz de realizar essa função, basta apenas instalá-lo e inicializar o servidor Apache, conforme a figura 7: Figura 07 – XAMPP – Inicialização do Apache 6 O XAMPP interpreta suas páginas no seguinte caminho: C:\Arquivos de programas\xampp\htdocs. (geralmente difere de computador para computador, dependerá do local/disco em que foi instalado). Crie um diretório na pasta “htdocs” nomeando-o “orkut” e cole os dois arquivos criados anteriormente (inex.html e logon.php) dentro desse diretório criado. Figura 08 – Páginas criadas Pronto! As ferramentas necessárias para capturar a senha do usuário (vítima) do Orkut estão prontas para serem usadas. Para verificar se a página esta funcionando, bem como o script em PHP abra um navegador e na URL digite http://127.0.0.1/orkut (localmente), a página fake criada deverá aparecer. Insira um usuário e digite a senha (note que apenas é um teste) e pressione Login. A página que se apresentará deverá ser de um erro de Login, se reparar na pasta onde estão guardados essas duas páginas foi criado um arquivo “senha” nele está contida a senha digitada. Figura 09 – Captura da senha – senha.txt 7 Este tipo de acesso foi realizado localmente, ou seja, somente o dono da máquina poderá acessá-la, ao menos que este servidor esteja on-line para que qualquer máquina da internet possa localizá-la e fazer o acesso á página. Para isso é necessário criar uma conta No-IP no site https://www.noip.com/newUser.php. Figura 10 – Cadastro No-IP Após criar a conta e fizer o login encontre o link Add Host. Figura 11 – Add Host – No-IP 8 Dê um nome para a sua página (hostname) e escolha um domínio e depois clique em Create a Host (mantenha todas as informações como DNS Host (A) e o IP). Esse cadastro juntamente com o software No-IP fará com que a máquina seja acessada de qualquer lugar do mundo, sendo o host criado o nome do site e a atualização do IP, uma vez dinâmico, feito pelo software. Figura 12 – Software No-IP Conforme mostra a figura 12, o host criado “orkut” e o domínio escolhido “bounceme.net”, corresponderá ao o IP da máquina cadastrada no site e a que esta usando o software, em outras palavras se digitar na URL do navegador “http://orkut.bounceme.net/” acessará a pasta “htdocs” do XAMPP, se o apache estiver ligado. Porém para os usuários Speedy a porta 80 (http - web) é bloqueada. Esse problema pode ser facilmente resolvido apenas trocando a porta Listen do XAMPP. Na linha 47 troque a porta 80 por alguma qualquer. Conforme a figura 13: Figura 13 – Listen XAMPP 9 Neste momento a máquina hospedeira esta pronta para ser acessada de qualquer lugar do mundo (note que se e somente se a máquina estiver diretamente ligada à internet, caso haja um roteador, ou ponto de acesso intermediando a comunicação será necessário mais uma configuração, especificando comunicações da porta que você escolheu para direcionar o tráfego para o IP da sua máquina). No momento que o link “http://orkut.bounceme.net:55455/orkut” (sendo orkut o nome do host criado, bounceme.net o domínio escolhido, 55455 a porta escolhida para a comunicação e /orkut a pasta que deverá ser acessada) for acionado será acessado a página fake que foi criada no passo 1. Engenharia Social Esta última etapa consiste em fazer com que a vítima seja convencida de que acessar a página que você esta fornecendo é seguro e esta livre de quaisquer tipos de ataque. Partindo dessa premissa basta usar da criatividade e utilizar de inúmeras técnicas de enganar a vítima. Por exemplo, passar-se por outra pessoa, cujo perfil agrade ou condiz com os interesses da vítima, ou seja, falar de assuntos que a interesse, ou de gostos parecidos, de modo com que a mesma sinta-se segura (abordaremos esse exemplo): Basta apenas criar ou um Facebook, MSN, Orkut ou Twiter, e por meio deles conversar com a vítima, até o momento certo para passar o link de acesso a sua página. Ao passar o link para a vítima ela se deparará com a tela de logon do Orkut, e se o mesmo efetuar o login terá sua senha capturada no arquivo senha.txt. 10 COMO EVITAR Por se tratar muitas vezes da falha humana o “remédio” para este ataque é a atenção. Sempre verificar os remetentes dos e-mails, jamais execute programas ou abra arquivos que você não tenha solicitado, habilitar todas as ferramentas de segurança possível como firewall e antivírus bem como mantê-los atualizados, manter todas as atualizações do sistema operacional em dia, um banco jamais solicitaria informações pessoais por e-mail, portanto nunca clique em links duvidosos, se uma página realmente for segura ela oferecerá certificado digital, basta reparar no campo URL o protocolo HTTPS, ou o ícone de um cadeado no canto inferior do navegador, não acredite em todas as alertas que você vê nem em anúncios repentinos em pop-ups, e utilize navegadores atualizados, as novas versões vem acompanhado o anti-phishing que alerta o usuário. A página criada nesse trabalho, por exemplo, não oferece certificado digital, portanto atenção, embora pareça o Orkut esta não é uma página segura. 11 REFERÊNCIAS ALECRIM, Emerson; Ataques de Engenharia Social na Internet. Disponível em < http://www.infowester.com/col120904.php> Acesso em: 22/04/2011. BLOG – PULSO COMUNICAÇÃO; Dicas de como evitar o “Phishing” Disponível em: < http://blog.pulsocomunicacao.com.br/dicas-de-como-evitar-o-phishing/> Acesso em: 24/04/2011. DICAS WINDOWS INTERNET; MONTE UM SERVIDOR INTERNET NO SEU MICRO DE CASA Disponível em: < http://www.vas-y.com/dicas/winDicas/xp/13a.htm> Acesso em: 22/04/2011. POPPER, Marcos Antonio; BRIGNOLI, Juliano Tonizetti; ENGENHARIA SOCIAL – Um perigo Eminente. Santa Catarina - ICPG – Instituto Catarinense de Pós-Graduação. Disponível em: < http://fabricio.unis.edu.br/SI/Eng_Social.pdf> Acesso em: 23/04/2011. TETERA, Eduardo; Como evitar phishing. Disponível em: < http://teteraconsultoria.com.br/blog/como-evitar-o-phishing/> Acesso em: 24/04/2011 Links utilizados: Baixaki - http://www.baixaki.com.br/ No-IP - http://www.no-ip.com/