analise de sistemas
Guia do Hacker
(Parte 1 de 8)

| Prefácio | 5 |
| Introdução à segurança | 6 |
| Definições de segurança | 7 |
| Segurança em informática | 7 |
| Estamos seguros? | 7 |
| Características de um sistema inseguro | 7 |
| Administrador | 8 |
| Sistemas operacionais | 8 |
| A segurança ao longo da história | 8 |
| Invasores digitais | 9 |
| Hackers | 9 |
| Crackers | 9 |
| Phreakers | 10 |
| Funcionários | 1 |
| Mitos e fantasias | 1 |
| Engenharia social | 1 |
| Como conseguir uma política eficiente de proteção | 12 |
| Analisando o nível de perigo | 13 |
| A influência do sistema operacional | 13 |
| Unix versus Windows | 13 |
| Vantagens do open source | 13 |
| Configurações malfeitas | 14 |
| Ataques restritos a um tipo de sistema | 14 |
| Ataques universais intra-sistemas | 14 |
| Recusa de serviço e invasão | 14 |
| Protocolos , ferramentas de rede e footprinting | 15 |
| Protocolos | 16 |
| Tipos de protocolos | 16 |
| Protocolos Abertos | 16 |
| Protocolos Específicos | 16 |
| Tipos de transmissão de dados | 16 |
| Unicast | 17 |
| Broadcast | 17 |
| Multicast | 17 |
| NetBios | 17 |
| IPX/SPX | 20 |
| AppleTalk | 21 |
| TCP/IP | 21 |
| IP | 21 |
| Portas | 23 |
| DNS | 23 |
| SMTP | 24 |
| POP3 | 24 |
| TELNET | 24 |
| FTP | 25 |
| HTTP | 25 |
| SNMP | 26 |
| Ferramentas TCP/IP | 27 |
| Arp | 27 |
| FTP | 28 |
| IPCONFIG | 31 |
| Nbtstat | 32 |
| Ping | 3 |
| Telnet | 34 |
| Tracert | 35 |
| Winipcfg | 36 |
| Footprinting | 37 |
| Whois | 37 |
| Análise de homepages | 38 |
| Pesquisa geral | 38 |
| Ferramentas e segredos | 39 |
| Trojans | 40 |
| Definição de Trojan | 40 |
| Perigo real | 40 |
| Tipos de cavalo de tróia | 40 |
| Invasão por portas TCP e UDP | 40 |
| Trojans de informação | 41 |
| Trojans de ponte | 41 |
| Rootkits | 41 |
| Trojans comerciais | 41 |
| Escondendo o trojan em arquivos confiáveis | 42 |
| Utilizando compressores de executáveis | 42 |
| Spoofando uma porta | 4 |
| Métodos eficazes e os não tão eficazes de se retirar o programa | 4 |
| Detecção por portas | 45 |
| Detecção pelo arquivo | 45 |
| Detecção por string | 45 |
| Detecção manual | 45 |
| Passo-a-passo: cavalos de tróia | 45 |
| Utilizando um trojan | 45 |
| Utilizando o Anti-Trojans | 46 |
| Denial of Service | 48 |
| Definição | 48 |
| Danos sem invasões | 48 |
| Utilizando o broadcast como arma | 48 |
| Syn-flood | 49 |
| OOB | 49 |
| Smurf | 50 |
| Softwares Zumbis | 50 |
| Diminuindo o impacto causado pelos ataques | 50 |
| Sniffers | 52 |
| Definição | 52 |
| Filtrando pacotes na rede | 52 |
| Capturando senhas | 53 |
| Sniffers em trojans | 53 |
| Roteadores | 53 |
| Anti-Sniffers | 53 |
| Scanners | 54 |
| Definição | 54 |
| Descobrindo falhas em um host | 54 |
| Portas abertas com serviços ativos | 5 |
| Máquinas ativas da subnet | 56 |
| Scanneando o netbios | 57 |
| Analisando partes físicas | 59 |
| Wardialers | 59 |
| Instalando proteções | 59 |
| Passo-a-passo: Scanneando | 60 |
| Scanneando hosts conhecidos de uma rede | 60 |
| Scanneando o NetBIOS | 60 |
| Scanneando à procura de falhas | 62 |
| Criptografia | 64 |
| Introdução | 64 |
| Chaves públicas e privadas | 64 |
| PGP | 64 |
| Saídas alternativas | 65 |
| Crackeando | 6 |
| Conceito de “crackear” | 6 |
| Wordlists | 6 |
| O processo de bruteforce | 67 |
| Senhas padrões | 67 |
| Multi-bruteforce | 84 |
| Política de senhas não-crackeáveis | 85 |
| Falhas | 86 |
| Definição | 86 |
| Como surge o bug | 86 |
| Exemplos de falhas | 86 |
| Buffer overflows | 87 |
| Race condition | 87 |
| Descobrindo se algum sistema têm falhas | 87 |
| Utilizando exploits | 89 |
| Instalando patches | 89 |
| Anonimidade | 90 |
| Ser anônimo na rede | 90 |
| Usando o anonymizer | 90 |
| Proxys | 90 |
| Wingates | 91 |
| Remailers | 91 |
| Shells | 91 |
| Outdials | 91 |
| IP Spoof | 92 |
| Non-blind spoof | 92 |
| Blind spoof | 92 |
| Sistemas operacionais | 93 |
| Unix e Linux | 94 |
| Como tudo começou | 94 |
| Autenticação de senhas – a criptografia DES | 94 |
| Shadowing | 96 |
| SSH, Telnet e Rlogin | 96 |
| Vírus e trojans | 96 |
| Buffer overflows e condição de corrida | 97 |
| Aumentando a segurança do sistema | 97 |
| Microsoft | 98 |
| Como tudo começou | 98 |
| Diferenças das plataforma Windows ME e 2000 | 98 |
| Autenticação de senhas | 9 |
| Vírus e trojans | 100 |
| Buffer overflows | 100 |
| Worms | 100 |
| Aumentando a segurança do sistema | 101 |
| DOS | 102 |
| Por quê o DOS? | 102 |
| Arquivos BAT | 102 |
| Badcoms | 102 |
| Caracteres ALT | 103 |
| Macros do doskey | 105 |
| Variáveis do sistema | 105 |
| Comandos ANSI | 106 |
| Velhos truques | 108 |
| Aprendendo a se proteger | 109 |
| Firewall | 110 |
| Conceito de Firewall | 110 |
| Eficiência | 1 |
| Firewall analizando a camada de rede | 1 |
| Firewall analizando a camada de aplicação | 1 |
| Conclusão | 112 |
| Códigos-fonte | 113 |
| A importância da programação | 113 |
| Por quê programar? | 113 |
| Linguagens orientadas a objeto | 113 |
| Aprendendo a usar o Delphi | 113 |
| Instalando os componentes necessários | 114 |
| Algoritmo | 116 |
| Object Pascal | 118 |
| Criando os aplicativos | 119 |
| Visão geral | 119 |
| Trojan simples | 119 |
| Mini-firewall | 124 |
| Perguntas mais frequentes | 126 |
| O que é um FAQ (perguntas mais frequentes)? | 126 |
| Como descobrir o ip e derrubar pessoas em um bate-papo | 126 |
| Como posso diferenciar trojans de anti-trojans com um scanner? | 127 |
| Eu posso usar o telnet para entrar em qualquer porta? | 127 |
| Por quê você colocou tão pouco de Linux / Unix no livro? | 127 |
| Você me ajuda a invadir o sistema fulano de tal? | 128 |
| Conhecendo mais do assunto | 129 |
| Sites de segurança versus sites de hackers | 129 |
| A importância do profissional de segurança | 129 |
| Sites com matérias sobre o assunto | 129 |
| Filmes | 130 |
Prefácio
Esse livro se destina àquelas pessoas que gostam de informática e de aprender cada vez mais. Não importa se ao usuário comum ou o técnico, todos se identificarão muito com a obra. Os assuntos serão apresentados de maneira objetiva e universal. Mostrada em uma linguagem clara mas direta, é como um livro de história. Explica, como, onde e por quê a segurança na informática hoje é um problema tão grande. Ela está em nossa vida quando retiramos dinheiro do caixa eletrônico, fazemos compras pela Internet e até quando tiramos algum documento. Viver sem a Internet hoje é indispensável. Conhecer melhor a rede e os seus perigos é imprescindível. O lado mais obscuro da computação atualmente é a segurança, pois é uma faca de dois gumes. Se você sabe como invadir um sistema, sabe como protegê-lo.
É como uma arma. Você sabe que se atirar irá matar alguém, mas entre saber e fazer existe uma grande diferença. Eu não posso me assegurar que você use o conhecimento contido aqui para se proteger, apenas aconselho-o a fazê-lo. Não existe um sistema operacional ideal para estudar junto a esse livro. O meu interesse é mostrar a segurança como um todo, estudando problemas comuns que englobam os sistemas e apenas pequenas diferenças. Na maioria dos exemplos utilizarei programas em Windows, pois são mais fáceis de se explicar para quem está começando. E todos esses programas possuem similares em outros sistemas. Não têm enrolação como páginas e páginas de códigos fontes e informações inúteis: será uma deliciosa viagem de conhecimento real e verdadeiro, adquirido durante meus mais de 6 anos de aventura pela Net.
Meu nome é Marcos Flávio Araújo Assunção, moro em Lavras, MG e estou me mudando em fevereiro de 2002 para Poços de Caldas, MG. Tenho 20 anos e amo a Internet e computação em geral, sou pesquisador amador na àrea, não fiz e nem penso em fazer ciëncias da computação (vou fazer direito), pretendo melhorar esse “livro” a cada nova versão para que se torne um ótimo guia brasileiro sobre hackers. Meu e-mail é mflavio2k@yahoo.com.br e meu UIN no icq é 27672882. Dúvidas e sugestões, à vontade. Se quiser me ligar, meus telefones são: 35-38220176 (Lavras) ou 35-38612309 (Nepomuceno). Não tenho formação nem fiz cursos na àrea. Sou apenas um interessado em estar sempre aprendendo.
A maioria dos programas mencionados no livro podem ser conseguidos nos sites w.blackcode.com. e ftp.technotronic.com Para os outros é só usar sites de downloads como w.superdownloads.com.br .Ferramentas de busca também servem, tais como
Altavista (w.altavista.com) ou Google (w.google.com). Tente também meu site (w.anti-trojans.cjb.net) . Se quiser tirar textos desse livro, indique meu nome na frente.
1 Definições de segurança
Segurança em informática
Estamos seguros?
A fragilidade dos sistemas informatizados não é nenhuma novidade. A décadas, celebridades como Robert Morris Jr, Capitão Crunch, Kevin Poulsen e Kevin Mitnick, esses últimos dois mais recentes, fazem com que as pessoas se preocupem e tenham um medo maior do computador. Esse medo virou pânico em pleno século XXI. Piratas novamente existem, mas sua arma não é mais a espada, é o fax-modem. Graças à essa maravilha do mundo moderno, dados podem navegar por linhas telefônicas, cabos e satélites, diminuindo as distâncias entre os povos e iniciando a nova era digital. Ladrões assaltam bancos confortavelmente no Havaí enquanto desviam o dinheiro para a Suíça. A espionagem industrial é um dos problemas agravados. Ela sempre existiu, mas com a facilidade de acesso à Internet, qualquer pessoa pode conseguir dados confidenciais e vendê-los para concorrentes.
Diariamente, páginas e páginas são tiradas do ar por piratas digitais. Grupos de hackers e crackers brasileiros, como Prime Suspectz e Inferno.br (esse último já extinto), junto a outros centenas pelo mundo realizam façanhas extraordinárias, como invadir vários sites da
Microsoft, a Nasa, FBI, Interpol e muitos outros. Os grupos brasileiros atualmente são os que mais invadem homepages em todo o mundo, fazendo com que a própria Nasa restrinja acesso ao Brasil em algumas de suas páginas. Mas nem todos são ruins. Existem grupos que se especializam em criar ferramentas e ajudar usuários comuns, como o UHOL. Toda essa fama já criou até um novo termo no mundo da segurança: o Backer. Ou seja, Brazilian Hacker
(Hacker Brasileiro). Isso demonstra a fragilidade da situação. Respondendo à pergunta do tópico: estamos seguros? Com certeza que não.
Características de um sistema inseguro
A segurança de sistemas existe por um conjunto de fatores. Engana-se quem pensa que somente por utilizar uma plataforma Unix ao invés de Windows está seguro. Ou que é só colocar um anti-vírus e um firewall na sua empresa que está tudo bem. A proporção do problema é bem maior. Geralmente os sistemas mais vulneráveis da rede possuem dois pontos em comum:
Administrador
O ponto chave e essencial para qualquer sistema de computador é o administrador. Ele é responsável por fazer com que tudo corra perfeitamente. Checa os dados, administra usuários, controla servidores, checa logs, tudo todos os dias. Acontece que a grande maioria dos administradores hoje não se preocupa com a segurança como deve. Logo terá problemas com o seu sistema, não importa qual seja. É como se fosse mãe e filho. Se uma mãe alimenta seu filho, cuida dos seus deveres de casa, compra roupas novas, dá brinquedos mas não é capaz de comprar um seguro de vida, ou pior, zela tão pouco pela segurança dele que ao sair de casa deixa as portas ou janelas abertas. Essa não pode ser uma boa mãe.
Mesmo que uma rede utilize um sistema operacional que contenha muitas falhas, os bons administradores todo dia estarão checando por falhas descobertas e corrigindo-as. Já os outros provavelmente vão ficar em algum chat comendo sanduíches.
Sistemas operacionais
Como eu disse anteriormente, não há realmente um sistema que seja melhor que o outro.
Existem vantagens e desvantagens de cada um. Tudo bem que alguns possuem erros muitos grandes, mas podem facilmente ser corrigidos. A intenção do sistema também importa. Não adianta ter uma rede e utilizar Windows 98 ou ME. Os recursos de segurança deles são muito escassos, pois foram feitos para o usuário comum e não para o ambiente empresarial. Não adianta também instalar o Digital Unix, FreeBSD ou AIX se o seu administrador só possui experiência em Lantastic. O sistema também vai depender do tipo de rede que você terá. Se você terá um servidor Web ou algum tipo de acesso externo, seria melhor utilizar o Linux ou o Windows NT. Se for uma rede interna somente, utilize Novell Netware, que ainda não fez a sua história quanto à Internet, mas ainda é insuperável nas redes locais.
A segurança ao longo da história
Anos atrás, os operadores de um computador ENIAC se depararam com uma coisa curiosa. Um inseto havia ficado preso dentro da máquina e estava atrapalhando o funcionamento da mesma. Daí surgiu o termo bug (inseto) que virou sinônimo de falha. Hoje quando se descobre um erro em algum programa, se diz: “novo bug descoberto”. De lá pra cá, as coisas evoluíram muito, mas os bugs continuam a existir. Muitos deles são frutos da história do próprio programa ou sistema. O Windows por exemplo. O Windows NT foi construído a partir do zero, mas o Windows ME não. Desde o início da criação de sua primeira interface gráfica, a Microsoft vêm tendo problemas com erros graves em seu sistema operacional. Já o sistema Unix, foi criado pelos desenvolvedores da linguagem C, para ser um sistema versátil e poderoso. Para conhecer melhor sobre a história de cada sistema, leia a seção sistemas operacionais .
A Internet também têm seus problemas ligadas à história de sua origem. Desde que se chamava Arpanet e foi criada pelo exército americano para resistir à guerra fria, a rede evoluiu muito e foram criados novos serviços como E-mail, World Wide Web, Gopher, Wais e outros. Milhões de computadores se juntaram a ela e seus recursos são cada vez mais sofisticados. Mas alguns problemas bem antigos ainda prejudicam hoje. Uma falha na implementação do TCP/IP( conjunto de protocolos em que a Internet se baseia) por exemplo, possibilita que o ataque de Spoof aconteça.
Invasores digitais
Todos os dias surgem notícias sobre piratas digitais na televisão e na Internet. Um pirata invadiu o computador de um sistema de comércio eletrônico, roubou os números de cartão, comprou Viagra e mandou entregar na casa do Bill Gates. Outro conseguiu derrubar sites famosos como YAHOO, CNN, AMAZON e ZDNET. Mais recentemente um grupo estrangeiro conseguiu tirar mais de 650 sites do ar em um minuto. Para entender como se organiza a hierarquia virtual da Internet, vamos estudar seus principais integrantes:
Hackers
Na verdade, os hackers são os bons mocinhos. Para os fãs de Guerra nas Estrelas, pensem no hacker como o cavaleiro jedi bonzinho. Ele possui os mesmos poderes que o jedi do lado negro da força (cracker) mas os utiliza para proteção. É um curioso por natureza, uma pessoa que têm em aprender e se desenvolver um hobby, assim como ajudar os “menos prevalecidos”. Um bom exemplo real foi quando o cracker Kevin Mitnick invadiu o computador do analista de sistemas Shimomura. Mitnick destruiu dados e roubou informações vitais. Shimomura é chamado de hacker pois usa sua inteligência para o bem, e possui muitos mais conhecimentos que seu inimigo digital. Assim facilmente montou um honeypot (armadilha que consiste em criar uma falsa rede para pegar o invasor) e pegou
Kevin. Infelizmente a imprensa confundiu os termos e toda notícia referente a baderneiros digitais se refere à hacker.
Essa é a imagem do hacker que você deve ter.
Crackers
Esses sim são os maldosos. Com um alto grau de conhecimento e nenhum respeito, invadem sistemas e podem apenas deixar a sua “marca” ou destruí-los completamente.
Geralmente são hackers que querem se vingar de algum operador, adolescentes que querem ser aceitos por grupos de crackers (ou script kiddies) e saem apagando tudo que vêem ou mestres da programação que são pagos por empresas para fazerem espionagem industrial. Hackers e crackers costumam entrar muito em conflito. Guerras entre grupos é comum, e isso pode ser visto em muitos fóruns de discussão e em grandes empresas, as quais contratam hackers para proteger seus sistemas.
O Darth Maul representa bem um cracker
Os hackers e crackers são eternos inimigos. Um não gosta do outro e sempre estão lutando por seus ideais. Usei a analogia do guerra nas estrelas pois expressam exatamente bem pessoas de poderes iguais mas de ideologias opostas. Nossos invasores digitais são assim: mocinhos e vilões brigando. E brigas feias.
Phreakers
Maníacos por telefonia. Essa é a maneira ideal de descrever os phreakers. Utilizam programas e equipamentos que fazem com que possam utilizar telefones gratuitamente. O primeiro phreaker foi o Capitão Crunch, que descobriu que um pequeno apito encontrado em pacotes de salgadinhos possui a mesma freqüência dos orelhões da AT&T, fazendo com que discassem de graça. Um programa comum utilizado é o blue box, que gera tons de 2600 pela placa de som, fazendo com que a companhia telefônica não reconheça a chamada. Também têm o Black Box que faz com que você possa ligar de graça do seu telefone doméstico e o
Red Box que possibilita que se ligue de orelhões. Se quiser saber mais sobre o assunto, consulte o site w.txt.org .
Outra técnica muito usada principalmente no Brasil é a de utilizar um diodo e um resistor em telefones públicos. Ou de cobrir o cartão telefônico de papel alumínio para que os creditos não acabem (nunca testei, mas me disseram que funciona). Técnicas como essas são utilizadas no mundo inteiro. O phreaker é uma categoria à parte, podem ser hackers, crackers ou nenhum dos dois. Alguns phreakers brasileiros são tão avançados que têm acesso direto à centrais de telefonia, podendo desligar ou ligar telefones, assim como apagar contas. Um dos programas muitos usados para isso é o ozterm, programinha de terminal que funciona em modo dos. Por sinal, muito difícil de encontrar na net.
Funcionários
Outro problema grave. 60% das invasões hoje acontecem de dentro da própria empresa, por funcionários insatisfeitos ou ex-funcionários que querem vingança. Utilizam-se do conhecimento adquirido e arrasam com dados do sistema. Copiam coisas do seu interesse (como o banco de dados que possui o telefone da loira do setor B) ou instalam joguinhos em rede que podem comprometer a segurança, pois com certeza não se preocupam em passar anti-vírus. Utilizam trojans, scanners e sniffers para capturar o que lhes interessa. Firewall é ineficaz contra eles. Afinal, do que adianta a grande muralha da china se algum soldado é o traidor?
Mitos e fantasias
O maior mito existente na Internet é que o cracker pode invadir qualquer computador na hora que quiser. Não é bem assim. Invasões por ICQ por exemplo, pura besteira. Só era possível em versões antigas e mesmo assim se o servidor web que vêm com o programa estivesse ativo. Isso porquê para conseguir acesso ao interpretador de comandos do sistema por alguma porta, têm de existir um serviço próprio para isso. Para se invadir um computador pessoal, só existem duas maneiras: trojans e netbios. A não ser que seja um computador que rode muitos serviços (FTP, Web, Telnet), o perigo é mínimo.
Outro mito é o que o hacker e o cracker são vistos como gênios da informática. Bom, os de antigamente realmente eram e ainda existem alguns poucos mas a grande maioria que se diz “hacker” hoje em dia se aproveita das ferramentas encontradas na Internet. Nem programar sabem. São os famosos Script Kiddies, sub-categoria de crackers. Não têm um alvo certo, vão tentando invadir tudo que vêm na frente. Pior que eles só os Lamers, aqueles que chegam nos chats anunciando “vou te invadir, sou o melhor” mas acaba desistindo pois não consegue descompactar nem um arquivo ZIP.
Engenharia social
A engenharia social é uma tática muito usada pelos crackers, desde o início dos tempos. É o que a lei chama de estelionato. Consiste em enganar uma pessoa para se conseguir vantagens. Como no caso do indivíduo que liga para o provedor e pergunta: “Por favor, perdi minha senha de Internet. Poderia olhá-la para mim?”. Alguns provedores pedem documentação para comprovar que é o dono da conta, outros (com funcionários insatisfeitos em sua maioria) não ligam, passam até o número do cartão de crédito de algum usuário se lhe pedirem. Esse método é utilizado também para conseguir informações sobre uma certa pessoa.
Vá a uma companhia telefônica e peça a segunda via de um telefone qualquer. Na grande maioria das vezes não lhe pedem documento e você consegue o endereço residencial de qualquer pessoa. Alguns filmes como Hackers e Caçada Virtual mostram bastante essa técnica.
Como conseguir uma política eficiente de proteção
Leia muito sobre as novidades do mundo da segurança. Veja se o seu administrador realmente se preocupa com a proteção do sistema ou contrate alguém somente com essa função. Faça sempre backup dos logs e varredura do sistema por falhas. Cheque o computador dos funcionários procurando por programas escondidos e passe um bom anti- vírus neles. Se for usar algum programa de segurança, como firewalls, detectores de invasão e outros, dê preferência para aqueles mais conhecidos e confiáveis.
Tenha certeza de que quando despedir alguém, mudar as senhas de acesso ao sistema.
(Parte 1 de 8)










