Como
falsificar email
A primeira convenção hacker a que eu assisti foi a Def Con III, que decorreu no Hotel Tropicana em Las Vegas em Agosto de 1995. Levei um computador portátil a correr o Windows 3.11, e um modem. Parece que o salão de baile tinha uma linha telefónica activa que não estava a fazer nada, então eu mais ou menos colonizei-o. Telnetei para os vários computadores Unix onde eu tinha contas shell e entreti muitos hackers ao mostrar-lhes como podiam falsificar email em quase qualquer computador host da Internet. O Gregory Gillis do Gang Dis Org pensou que isto era tão fixe que pôs-me a escrever instruções para falsificar email, as quais ele guardou em disquetes e vendeu a pessoas nesta Def Con. É mais difícil falsificar email actualmente do que naquela altura quando eu publiquei este Guia. A razão é que usam a falsificação de email para enviar email lixo. Isto coloca uma carga pesada no computador usado para falsificar email, tornando-o incapaz de executar as suas tarefas legítimas. Também faz com que as pessoas que recebem os emails de pornografia fiquem zangadas. Por isso, só os ignorantes deixam os seus servidores de email abertos ao público. Se queres falsificar email, ainda é fácil de fazer - só tens de saber mais do que os spammers. No Guia abaixo acrescentei instruções sobre como, em menos de dez minutos, encontrar um computador no qual falsificar email. Ah, sim, se queres mesmo instruções detalhadas e actuais sobre como falsificar email, experimenta o meu livro Happy Hacker, que está nas prateleiras da maioria das lojas Barnes & Noble. -- Carolyn Meinel _____________________________________________________________ Guia Para Hacking (essencialmente) Inofensivo Volume 1 Número 2 Nesta edição
aprendemos a falsificar email -- e como detectar falsificações.
Prometo, este hack é espectacularmente fácil! Hacking heróico em meia hora Gostarias de impressionar os teus amigos? OK, qual é a coisa mais fixe que os super hackers fazem? É obter acesso não autorizado a um computador, certo? Então, gostarias de ser capaz de aceder e correr programas em qualquer dos milhões de computadores ligados à Internet? Gostarias de aceder a estes computadores da mesma maneira que o hacker mais notório da história: Robert Morris! Foi a sua "Morris Worm" que derrubou a Internet em 1990. É claro, a falha que ele usou para encher 10% dos computadores na Internet com o seu vírus de envio de correio automático já foi consertado na maioria dos hosts da Internet. Mas essa mesma característica da Internet ainda tem muitos bugs e joguinhos e brincadeiras. De facto, o que nós estamos prestes a aprender é o primeiro passo de várias das maneiras mais comuns que os hackers usam para entrar em áreas privadas de computadores insuspeitos. Mas eu não vou ensinar-te a arrombar partes privadas de computadores. Parece demasiado sujo. Além disso, sou alérgica à cadeia. Assim, o que estás prestes a aprender é legal, inofensivo, mas ainda assim muito divertido. Não é preciso fechar as persianas e fazer juramentos de sangue entre os amigos que te verão a fazer este hack. Mas -- para fazer este hack, precisas de um serviço online que te permita telnetar para uma porta específica num host da Internet. A Netcom, por exemplo, deixa-te fazer isto. Mas a Compuserve, America Online e muitos outros ISPs são tão boas amas que te protegerão desta tentação. A melhor maneira de fazer isto é com uma CONTA SHELL! Se não tens uma, arranja uma já! ***********************************
Mesmo que nunca tenhas usado a telnet antes, este hack é super simples. De facto, apesar do que estás prestes a aprender parecer hacking do tipo mais heróico, podes dominá-lo em meia hora -- ou menos. E só precisas de memorizar *dois* comandos. Para descobrir se o teu ISP te deixa fazer isto, experimenta este comando: telnet callisto.unm.edu 25 Este é um computador na Universidade do Novo México. A minha conta Compuserve fica com febre quando eu tento isto. Simplesmente crasha fora do telnet sem sequer um "tsk, tsk". Mas pelo menos hoje a Netcom deixa-me utilizar este comando. E quase qualquer conta shell barata fornecida por um ISP minúsculo deixar-te-á fazer isto. Muitas contas de universidades te deixarão fazer isto também. ******************************
Experimenta as páginas amarelas. Procura em Internet. Telefona e pede uma "conta shell". Eles geralmente dirão, "Claro, ´tá bem". Mas muitas vezes estão a mentir. Eles pensam que és demasiado estúpido para saber o que uma conta shell real é. Ou a pessoa mal paga com quem estás a falar não sabe nada. A maneira de contornar
isto é pedir uma conta guest temporária grátis. Qualquer
ISP que vale a pena deixar-te-á dar uma voltinha. Depois experimenta
o hack de hoje. OK, presumamos que tens uma conta que te deixa telnetar para um sítio sério. Então voltemos a este comando: telnet callisto.unm.edu 25 Se já fizeste telnet, provavelmente só pões o nome do computador que planeias visitar, mas não acrescentaste nenhuns números depois. Mas esses números a seguir são o que faz a primeira distinção entre os cidadãos bons e aborrecidos da Internet e alguém a descer a rampa escorregadia do mundo hacker. O que aquele 25 significa é que estás a ordenar ao telnet para te levar a uma porta específica na tua vítima, ..., computador. ***********************************
Mas um computador host
da Internet tal como o callisto.unm.edu tem muitas mais portas do que
um computador privado típico. Mas estas não são portas
físicas, como um teclado ou uma porta de série RS232 (para
o teu modem). São portas virtuais (software). Mas há divertimento naquela porta 25. Um divertimento incrível. É que, quando telnetas para a porta 25 de um computador, obténs um de dois resultados: de vez em quando, uma mensagem a dizer "access denied" (acesso negado) quando atinges uma firewall. Mas, na maioria das vezes, obténs algo como isto: Trying 129.24.96.10...
Ei, olha para isto! Não pediu para fazer o login. Apenas diz ...ready! Nota que está a correr o Smail3.1.28.1, um programa usado para compor e enviar email. Ohmeudeus, o que é que fazemos agora? Bem, se queres realmente parecer sofisticado, a próxima coisa que fazes é pedir ao callisto.unm.edu para te dizer que comandos podes usar. Geralmente, quando estás num computador estranho, pelo menos um de três comandos dar-te-ão informação: "help", "?", ou "man". Neste caso eu digitei: help ... e isto é o que obtenho: 250 The following SMTP
commands are recognized: Obter esta lista de comandos é mesmo fixe. Faz-te pareceres muito fixe porque sabes como fazer o computador dizer-te como o hackar. E significa que tudo o que tens de memorizar são os comandos "telnet <hostname> 25" e "help". Para o resto, podes simplesmente consultar os comandos enquanto estás online. Por isso, mesmo que a tua memória seja tão má quanto a minha, podes realmente aprender e memorizar este hack em apenas meia hora. Ou, talvez em meio minuto. OK, então o que é que faço com estes comandos? Sim, adivinhaste, este é um programa de email muito primitivo mesmo. E adivinha porque podes entrar sem fazeres o login? Adivinha porque é que foi o ponto de vulnerabilidade que permitiu que o Robert Morris derrubasse a Internet? A porta 25 move o email de um nodo para o próximo através da Internet. Recebe email automaticamente e se o email não pertence a ninguém com um endereço de email nesse computador, envia-o para o próximo computador na Internet, para eventualmente encontrar o seu caminho para a pessoa a quem este email pertence. Às vezes o email irá directamente do remetente para o receptor; mas se enviares email a uma pessoa muito longe, poderá ter de atravessar vários computadores. Existem milhões de computadores na Internet que passam adiante email. E podes obter acesso a quase qualquer um destes computadores sem uma password! Além do mais, como logo aprenderás, é fácil obter os endereços Internet destes milhões de computadores. Alguns destes computadores têm uma segurança muito boa, fazendo difícil que nos possamos divertir com eles. Uma das alegrias do hacking é explorar estes computadores para encontrar aqueles que se adequam ao nosso gosto. OK, agora estamos no país da Morris Worm, o que é que podemos fazer com isso? ********************************
Bom, aqui está o que eu fiz. (Os meus comandos não têm número à sua frente, enquanto que os do computador são assinalados por números.) helo santa@north.pole.org
O que aconteceu aqui foi que eu enviei algum email falso para mim própria. Agora vamos ver o que recebi na minha caixa de email, mostrando o cabeçalho inteiro: Aqui está o que eu vi usando a versão grátis do Eudora: X POP3 Rcpt: cmeinel@socrates Esta linha diz-nos que X-POP3 é o programa do meu ISP que recebeu o email, e que o meu email é tratado pelo computador Socrates. *****************************
Return Path: <santa@north.pole.org> Esta linha acima é o endereço do meu email falso. Apparently From: santa@north.pole.org
Apparently To: cmeinel@nmia.com
It works!!! Agora aqui está um facto interessante. Diferentes programas de email mostram diferentes cabeçalhos. Por isso a qualidade do teu email falso depende em parte do programa de leitura de email que é usado para o ler. Aqui está o que o Pine, um programa de email que corre em sistemas Unix, mostra com este mesmo email: Return Path: <santa@north.pole.org>
Isto identifica o computador no qual eu executei o programa smail. Também diz que versão do programa smail estava a correr. Apparently From: santa@north.pole.org E aqui está a mensagem "apparently-from" outra vez. Por isso tanto o Pine como o Eudora mostram que isto é email falso. Received: from santa@north.pole.org
by callisto.unm.edu with smtp Oh, oh! Não só mostra que pode ser email falso -- tem uma identificação da mensagem! Isto significa que algures no Callisto há um registo de identidades de mensagens a dizer quem usou a porta 25 e o programa smail. É que, todas as vezes que alguém entra na porta 25 naquele computador, o seu endereço de email é registado no registo juntamente com a identificação dessa mensagem. Date: Fri, 12 Jul 96
12:18 MDT Se alguém usasse este programa de email para cometer um acto vil, essa identificação da mensagem seria o que poria a polícia na sua pista. Por isso, se queres falsificar email, é mais difícil escapar disso se o enviares a alguém que use o Pine do que se usar a versão grátis do Eudora. (Podes saber que programa de email uma pessoa usa lendo o cabeçalho do seu email.) Mas -- os programas de email na porta 25 em muitos hosts da Internet não são tão bem defendidos como o callisto.unm.edu. Alguns estão melhor defendidos, e alguns nem sequer o são. De facto, é possível que alguns possam nem sequer manter um registo de utilizadores da porta 25, fazendo-os perfeitos para falsificação de email criminosa. Por isso, só porque recebes email com cabeçalhos perfeitos não significa que é genuíno. Precisas de algum tipo de esquema de verificação encriptado para ter quase a certeza de que é genuíno. ******************************************
Aqui está um exemplo de um programa de email diferente. Isto dar-te-á uma ideia das pequenas variações que encontrarás com este hack: Aqui está o meu comando: telnet ns.Interlink.Net 25 O computador responde: Trying 198.168.73.8...
Depois eu digo: helo santa@north.pole.org E ele responde: 250 InterLink.NET Hello santa@north.pole.org (plato.nmia.com) Oh, oh! Esta versão do sendmail não se deixa enganar! Vês como ele põe "(plato.nmia.com)" -- o computador que eu estava a usar para este hack -- ali só para me dizer que sabe de qual computador eu telnetei? Mas, e então, todos os hosts da Internet sabem esse tipo de informação. Vou mas é enviar email falso de qualquer maneira. De novo, os meus comandos não têm números à frente, enquanto que as respostas do computador são antecedidas pelo número 250: mail from:santa@north.pole.com
OK, que tipo de email é que este computador gerou? Aqui está o que eu vi usando o Pine: Return Path: <santa@north.pole.org>
Oops. Aqui o computador InterLink.NET revelou o computador em que eu estava quando telnetei para a porta 25. Contudo, muitas pessoas usam esse computador host da Internet. Date: Fri, 12 Jul 1996
15:43:20 0400 OK, aqui não diz "Apparently-From", por isso agora eu sei que o computador ns.Interlink.Net é muito bom para enviar email falso. Um aficionado do email experiente saberia a partir da linha Received: que isto é email falso. Mas a sua falsidade não é logo perceptível. Vou experimentar outro
computador. Mmmm, a Universidade da California em Berkeley é famosa
pela sua pesquisa em informática. Pergunto-me como serão
os seus hosts? Tendo primeiro procurado o endereço Internet numérico
de uma das suas máquinas, eu dei o comando: Responde com: Trying 128.32.152.164...
214 To report bugs
in the implementation send email to Epá, um programa sendmail ligeiramente diferente! O que será que vai dizer-me acerca destes comandos? HELP mail Grande me**a! Oh, pronto, vejamos o que este computador (que sabemos agora ser chamado remarque) fará para falsificar email. MAIL FROM:santa@north.pole.org
Eiiii... isto é interessante... eu não disse "helo" e este programa sendmail não me deu uma bofetada no pulso. O que será que isto significa... RCPT TO:cmeinel@techbroker.com
Agora vamos para o Pine vermos como é que está o cabeçalho: Return Path: <santa@north.pole.org>
Olha para as três mensagens "received". O computador do meu ISP recebeu este email não directamente do remarque.berkeley.edu. mas do merde.dis.orgf, que recebeu o email do Remarque. Ei, eu sei a quem pertence o merde.dis.org! Então o computador de Berkeley enviou este email falso através do computador host do famoso perito em segurança informática Pete Shipley! Dica: o nome "merde" é uma piada. Também o é o "dis.org". Agora vejamos o que o email do remarque parece. Usemos o Pine outra vez: Date: Thu, 11 Jul 1996
12:49:56 0700 (PDT) Mas nem todos os programas sendmail são tão amigáveis para falsificar email. Verifica o email que eu criei a partir do atropos.c2.org! telnet atropos.c2.org
25 Chiça, estás muito irritadiço hoje, não... Que se lixe, vamos em frente na mesma... helo santa@north.pole.org
Ei, o que é que tens a ver com isso, camarada? Outros programas sendmail não se importam com o nome que eu uso com o "helo". OK, OK, eu dou-te um nome de domínio válido. Mas não um nome de utilizador válido! helo satan@unm.edu
Muiiiitooo divertido, pá. Aposto que estás mesmo contente por conhecer-me. Porque #%&@£ me pediste um nome de domínio válido se já sabias quem eu era? mail from:santa@north.pole.com
OK, que tipo de email é que aquele pequeno insolente programa sendmail gerou? Fui logo para o Pine e vi: Return Path: <santa@north.pole.com> Bem, que simpático deixares-me usar o meu endereço falso. Received: Oh, que verdadeiramente especial! Não só o computador atropos.c2.org denunciou a minha verdadeira identidade, também revelou aquela coisa do satan.unm.edu. Chiça...isto é para me ensinar. by atropos.c2.org (8.7.4/CSUA)
with SMTP id PAA13437 for cmeinel@nmia.com; Fri, 12 Assim, o moral deste pequeno hack é que existem muitos programas de email diferentes a flutuar na porta 25 de hosts da Internet. Por isso, se queres divertir-te com eles, é uma boa ideia verificá-los primeiro antes de os usares para te exibires. Como falsificar email Primeiro, certifica-te que leste este GPHEI sobre como falsificar email. Depois, o único problema que resta é descobrir um servidor vulnerável. Aqui está como encontrar computadores que te deixarão falsificar email: Parece que isto é ridiculamente fácil, mesmo se usares o Windows 98. Segue estes passos para computadores Windows: 1) Liga-te à net com um ISP. Alguns serviços online não te dão conexões Internet verdadeiras. Se estas instruções não funcionarem, provavelmente precisas de arranjar um ISP real. 2) Clica start --> Programs --> MSDOS 3) Na janela do DOS, dá o comando "netstat -n". Isto dar-te-á algo como: Active Connections Proto Local Address
Foreign Address State Guarda aquele primeiro número. 4) Aponta o teu browser para http://www.ipswitch.com e faz o download do programa "What's Up Gold." 5) Usa-o para rastrear todos os endereços de Internet para a porta 25 aberta noutras pessoas usando o mesmo ISP para acesso dialup. Por exemplo, eu rastrearia todos os números que começassem por 38.29.999. Nota que este número foi desfigurado, por isso usa os teus próprios números IP que descobrires com o "netstat n". Aviso -- prepara-te para seres expulso do teu ISP por mapeamento de portas. Enquanto que é legal na maioria dos sítios, é grosseiro e as pessoas desconfiarão de estares a planear um crime informático importante. 5) O endereço IP com a porta 25 a correr são muitas vezes pessoas a usar sistemas Linux antigos e que não sabem desactivar os seus servidores de email. Enquanto estas pessoas estiverem online, podes usar os seus computadores para falsificar email. 6) Se usas o Linux, e tens o sendmail instalado, verifica se é a versão 8.9 ou acima. Se sim, está tudo bem. Se não, actualiza-o ou vê o http://www.sendmail.org/~ca/email para instruções sobre como impedir a transmissão de email em cadeia. _________________________________________________________ Carolyn Meinel ****************************************************************************** |