sábado, 7 de junho de 2008

Entendendo e implementando a Norma ABNT NBR ISO/IEC 17799:2005 – Módulo 4

Aquisição, desenvolvimento e manutenção de sistemas de informação

Requisitos de segurança de sistemas de informação
Visa garantir que segurança é parte integrante de sistemas de informação, a partir do estabelecimento de mecanismos de controle que enfatizem essa característica no processo de aquisição, desenvolvimento e manutenção dos sistemas de informação.
Uma vez estabelecidos um método para a execução, acompanhamento e controle dos processos de aquisição, desenvolvimento e manutenção dos sistemas de informação, é necessário garantir a segurança como parte integrante dos sistemas de informação, desde o primeiro momento do projeto. O objetivo desse item é exatamente garantir que segurança é parte integrada de sistemas de informação, a partir do estabelecimento de mecanismos de controle que enfatizem essa característica no processo de aquisição, desenvolvimento e manutenção dos sistemas de informação.
Análise e especificação dos requisitos de segurança
Este elemento de controle prioriza a aderência aos requisitos de segurança estabelecidos pela política de segurança da organização, tornando-os parte do processo de análise e especificação. Desse modo, os requisitos para controles de segurança nas especificações de requisitos de negócios devem ser estabelecidos e especificados, em consonância com a política de segurança, quer seja para novos sistemas de informação a serem adquiridos, desenvolvidos, ou para a realização de manutenção ou implementação de melhorias em sistemas já existentes.
É importante que esse elemento de controle esteja plenamente integrado aos processos de desenvolvimento interno ou externo, de forma que não apresente complexidade em sua operacionalização e não comprometa os prazos, custos e objetivos dos sistemas de informação, pois, de outro modo, certamente será deixado em segundo plano em caso de necessidade.
Processamento correto nas aplicações
Os principais objetivos dos requisitos de segurança dos processos de aquisição, desenvolvimento e manutenção dos sistemas de informação deve ser prevenir a ocorrência de erros, perdas, modificação não autorizada ou mal uso de informações em aplicações.
Convém salientar que tais ocorrências representam perdas para o negócio, e boa parte delas expressam vulnerabilidades que expõem a organização a riscos. Um sistema de informações seguro é aquele que reduz o risco, se antecipa às ameaças e, principalmente, evita desvios no objetivo de sua aplicação.
Validação dos dados de entrada
Este item de controle estabelece que deva ser incorporados elementos de controle cujo objetivo é garantir que os dados de entrada de aplicações estejam corretos e sejam apropriados aos requisitos de negócios e aos requisitos de segurança. Para tanto, esses dados devem ser validados também sob a ótica da política de segurança da organização.
Esses elementos são de fundamental importância para a segurança da informação, pois é sabido que a grande maioria das tragédias tem sua origem em falhas na validação inicial dos dados que possibilitam a inserção de informações que induzem os sistemas de informação a erro, quer seja pelo descuido, pelo desconhecimento ou despreparado, ou mesmo intencionalmente.
Controle do processamento interno
É um item de controle que implica no dever de incorporar, nas aplicações, checagens de validação com o objetivo de detectar qualquer corrupção de informações, por erros ou por ações deliberadas.
Falhas no processamento interno das aplicações geralmente implicam em perdas para a organização e, além disso, expõem elementos internos fundamentais para a segurança da informação. Consequentemente representam vulnerabilidades e risco, que deve, ser mitigados através desse controle. Se uma aplicação é realmente segura, então o resultado de um processamento interno deve ser conhecido ou esperado, e, portanto, pode ser objeto de validação.
Integridade de mensagens
Mecanismos de controle precisam ser incorporados ao processo para assegurar que os requisitos de garantia de autenticidade e a proteção da integridade das mensagens das aplicações sejam devidamente implementados.
As mensagens das aplicações são os elementos principais da comunicação com os usuários, e contêm informações importantes para o sistema e para o negócio.
Validação de dados de saída
Esse item estabelece a necessidade de um controle, uma vez que os dados se saída das aplicações devem ser validados para assegurar que o processamento das informações armazenadas está correto e é apropriado às circunstâncias.
É importante notar que, de maneira muito freqüente, os dados de saída de uma aplicação ou processamento constituir-se-ão dados de entrada para outra aplicação ou processamento, internamente ou no ambiente externo da organização
Controles criptográficos
É comum afirmar que a criptografia é um eficiente meio de proteger a
confidencialidade, autenticidade ou integridade das informações. Por meios criptográficos os sistemas de informação podem evitar o acesso indevido ou a corrupção dos dados. Esse item enumera os requisitos para o correto e proveitoso uso da criptografia nos sistemas de informação da organização.
Política para o uso de controles criptográficos
Esse elemento de controle objetiva um política para a aplicação da criptografia nos sistemas de informação.
Deve ser desenvolvida e implementada uma política para o uso de controles criptográficos para a proteção das informações, sua correta classificação e a definição dos meios de acesso e circulação das informações, além da definição do nível de acesso de cada usuário às informações classificadas.
Gerenciamento de chaves
Esse mecanismo de controle tem por objetivo a definição e implementação de um processo de gerenciamento de chaves para apoiar o uso de técnicas criptográficas pela organização.
Segurança dos arquivos do sistema
Os arquivos do sistema sejam bibliotecas, rotinas ou arquivos de configuração são salvos prediletos dos ataques intencionais. Além disso, são também cruciais para garantir a disponibilidade das informações e o correto funcionamento dos sistemas de informação.
Controle de software operacional
O alto grau de dependência entre os sistemas de informação e os sistemas operacionais, aliados ao fato de estes serem seu funcionamento e funcionalidades amplamente divulgados e estudados, representam um elevado grau de risco.
Controle de acesso ao código-fonte de programa
Por definição, o acesso ao código-fonte deve ser restrito. O acesso, manuseio e o armazenamento desses devem estar submetidos a um rígido controle,e devem ser objeto de destaque na elaboração dos requisitos de segurança. Preferencialmente, deve ser evitado ou limitado o acesso ao conjunto dos códigos-fonte, o qual deverá ocorrer apenas no momento de geração das versões executáveis para teste e entrega, em ambiente especificamente preparado para isso e, evidentemente, seguro. O uso de produtos de controle de acesso e de versão é altamente recomendável, chegando mesmo a ser essencial.
Segurança em processos de desenvolvimento e de suporte
Seja por falhas ou por ações intencionais, grande parte das vulnerabilidades é decorrência dessas etapas ou atividades. O objetivo dos controles preconizados nesse item é manter a segurança de sistemas aplicativos e da informação durante o processo de desenvolvimento e as atividades de suporte à operação dos sistemas de informação.


Procedimentos para controle de mudanças
Especial atenção deve ser dada aos impactos das mudanças propostas em todos os aspectos dos negócios e da segurança da informação. Ações preventivas e corretivas devem ser estabelecidas, e o tratamento da comunicação das mudanças requer planejamento e apoio, o que implica em comprometimento.
Análise crítica técnica das aplicações após mudanças no sistema operacional
O objetivo desse mecanismo de controle é possibilitar que aplicações críticas de negócios sejam analisadas e testadas quando houver alterações nos sistemas operacionais, para garantir que não haverá nenhum impacto adverso nas operações da organização ou na segurança das informações causada por falhas nos sistemas de informação.
Restrições sobre mudanças em pacotes de software
O controle proposto por esse item estabelece a expressa limitação de modificações em pacotes de software. Mudanças mão devem ser incentivadas e devem ser limitadas àquelas estritamente necessárias.
Todas as mudanças devem ser estritamente controladas por procedimentos formais.
Vazamento de informações
A identificação de oportunidades para o vazamento de informações é o objetivo desse controle. Sua implementação destina-se também à prevenção do vazamento de informações e também deve planejar e estabelecer medidas de contenção e ações preventivas e corretivas no caso de ocorrências dessa natureza.
Desenvolvimento terceirizado de software
O desenvolvimento terceirizado deve ser tratado com especial atenção. Parceiros comerciais comprometidos no desenvolvimento de sistemas de informações seguro devem submeter-se às mesmas políticas de segurança da informação. Termos de sigilo e confidencialidade devem ter itens comuns de co-responsabilização, e a atuação dos terceiros avalizadas por órgãos da classe empresarial também é fundamental.
Cuidados no desenvolvimento:
Criar e usar funções intrinsecamente seguras;
Sempre testar o retorno das funções chamadas;
Documentar corretamente as funções (entrada, processamento e saída);
Verificar o tratamento de caracteres especiais;
Manter uma política de versões consistentes;
Só usar componentes e bibliotecas confiáveis;
Evitar manter informações sensíveis em arquivos temporários;
Não colocar senhas e chaves de criptografia no código;
Tratar todas as entradas como não confiáveis;
Exercer rígido controle de versão e acesso a código-fonte;
Geração da distribuição e instalação de código executável;
Ter em mente que a redução dos erros nos sistemas de informação significa a redução de riscos e de vulnerabilidades.


Gestão de incidentes de segurança da informação
Para que um sistema de gestão seja bem sucedido, é importante que se institucionalizem alguns aspectos básicos do comportamento organizacional e também que nos certifiquemos que o mesmo possua uma série de decisões rápidas previemente definidas, evitando um dispendioso atraso na tomada de decisões.
Algumas das comunicações mais importantes dizem respeito à notificação de incidentes de segurança da informação. Deve existir um caminho fácil e bem documentado a ser seguido por todos os funcionários, fornecedores e terceiros que possam via a identificar um evento como este.
Aspectos da gestão da continuidade de negócios, relativos à segurança da informação
Um plano de continuidade de negócios compreende uma série de atividades desenvolvidas para suportar o negócio em um situação adversa, situação em que, os ativos que suportam os processos de negócios não estejam disponíveis ou aptos a sustentar o negócio.
Conformidades
Objetivo: "evitar a violação de qualquer lei criminal ou civil, estatuto, regulamentação contratuais e de quaisquer requisitos de segurança da informação".
Nos dias atuais. Pode-se afirmar que o que há de mais importantes no mundo corporativo é a informação. Os detentores obtêm larga vantagem na disputa pelo exigente mercado, porém só isso não basta, é imprescindível ainda garantir a disponibilidade e o acesso à mesma.
Conformidades com normas e políticas de segurança da informação e conformidade técnica
Garantir conformidade dos sistemas com as políticas e normas organizacionais de segurança da informação, através de:

- Conformidade com as políticas e normas de segurança da informação;
- Verificação da conformidade técnica com as normas de segurança da informação.
Considerações quanto à autoria de sistemas de informação
Objetivo: elevar ao máximo a eficácia e diminuir a interferência no processo de auditoria dos sistemas de informação, protegento-se a integridade das ferramentas de autoria.

sexta-feira, 6 de junho de 2008

Entendendo e implementando a Norma ABNT NBR ISO/IEC 17799:2005 – Módulo 3

Gerência de Operações e comunicações
Gestão de Mudanças
Em todo processo de modificação sempre ocorre algum tipo de impacto, seja ela positiva ou negativa. O objetivo da gestão de mudanças é minimizar os impactos negativos (como quebra de integridade do sistema ou falhas de segurança) provocados pela implantação das modificações, ou seja , gestão de mudanças é o processo de identificar novos requerimentos de segurança quando ocorrem mudanças no sistema.
Gerir mudanças é uma tarefa que requer planejamento, controle, comunicação e monitoramento da implantação.
A gestão de mudanças deverá documentar todos os processos de implementação, antes de serem aplicados no ambiente produtivo, essa documentação deverá ser revisada e atualizada durante e depois do processo de mudança, a fim de mantê-lo atualizado.
O ciclo de vida de um processo de gestão de mudanças passa pelos seguintes itens:
· Requisição de mudança
· Escolha do responsável pela mudanças
· Identificação e registro das mudanças significativas
· Avaliação de risco impactos potenciais das mudanças
· Planejamento da mudança
· Testes das mudanças
· Criação de procedimentos de recuperação
· Procedimento formal de aprovação das mudanças propostas
· Comunicação
· Implementação das mudanças
· Documentação
Separação de Recursos de Desenvolvimento, Teste e Produção
Com o objetivo de reduzir os riscos de acessos ou modificações não autorizadas aos sistemas operacionais, é necessário separar os recursos de desenvolvimento, teste e produção. Esses três ambientes deverão ter recursos de hardware e software semelhantes. Porém, os dados reais, necessários para a execução dos serviços da organização, armazenados em arquivos e bancos de dados, somente existirão no ambiente de produção, enquanto dados fictícios existirão nos ambientes de desenvolvimento e teste. Esta precaução evitará que os dados reais seja perdidos ou danificados em outros processos.
Outro cuidado importante, que o acesso a cada ambiente seja feito apenas por pessoal destinado a sua ária de atuação.
Gerenciamento de Serviços Terceirizados
Por questão de segurança envolvidas no processo de contratação de serviços de terceiros, requerem cuidados para não expor a organização, um vez que suas informações estarão acessíveis a uma parte externa. Contratar um serviço de terceirização, requer uma avaliação profunda da empresa a ser contratada, observando, por exemplo, seu histórico, o tempo de atuação no mercado, referências de outros clientes que a contrataram, a qualidade do serviço prestado e a qualificação dos profissionais.
Terceirizar é um processo que deve ser mantido através de acordos de entrega de serviço, onde são explicitados os controles de segurança, as definições de serviços e níveis de entrega.
Nos contratos firmado com os prestadores de serviços deve ficar claro que eles são integralmente responsáveis por suas ações, estando sujeitos à monitoração interna e as leis em vigor.
Monitoramento e Análise Crítica de Serviços Terceirizados
O monitoramento e análise crítica de serviços terceirizados, objetivam a avaliação do desempenho do serviço terceirizado e dos possíveis problemas e incidentes de segurança da informação. A norma sugere o envolvimento de processos e relações de gerenciamento de serviços entre as parte para:
· Monitorar níveis de desempenho de serviços
· Analisar os relatórios de serviços produzidos por terceiros
· Agendar reuniões de análise de progresso
· Fornecer para análise informações sobre incidentes de segurança da informação
· Analisar trilhas de auditoria e registros de eventos
· Resolver e gerenciar problemas identificados
Controles Contra Códigos Maliciosos
Segundo a norma ABNT ISO/17799:2005, recomenda que sejam implantados controles de detecção, prevenção e recuperação para proteger contra códigos maliciosos, bem como procedimentos de conscientização dos usuários, para isso ela propõe uma serie de medidas:
· Implantação de política de proibição de uso de software não autorizados
· Medidas de proteção contra riscos inerentes à importação de arquivos e software
· Atualização periódica de software de detecção e remoção de códigos maliciosos
· Verificação, antes

Entendendo e implementando a Norma NBR ISO/IEC 17799 - Módulo 2

GESTÃO DE ATIVOS

Os ativos de uma organização, são os bens móveis, imóveis e até mesmos
intangíveis, como a informação armazenada em meios diversos e abordaremos as responsabilidades pelos ativos, como inventariá-los,classificá-los e como rotular a informação.
Responsabilidade Pelos Ativos
As informações de uma organização podem ser identificadas como um ativo como tantos outros tradicionais (imóveis, móveis, equipamentos, etc.). Assim, ele possui um valor e deve ser classificado e valorado. Para que os ativos sejam protegidos, é necessário que possua um proprietário. O proprietário pode ser uma pessoa ou entidade autorizada à controlar o uso e a segurança dos ativos, tornando-se o responsável pelos mesmos.

Inventário dos Ativos
Objetivo: procura classificar os ativos de informação,de acordo com sua importância para o negócio em si.
O ponto inicial para a gestão dos ativos é a identificação do que é um ativo e quais
são eles dentro de nossa organização. Para se ter um levantamento mais fidedigno,
podemos agrupá-los por área e solicitar que a alta direção nomeie um gestor
(proprietário) da informação. Cada área deve realizar um levantamento, ou inventário, destes ativos. Para o sucesso desta etapa torna-se importante que os gestores sejam instruídos quanto aos tipos de ativos e como classificá-los, para manter um controle de seu estado e
numa segunda etapa conceder as permissões de acesso adequadas a cada um.

Proprietário (Gestor) dos Ativos
Responsável por:
. Responder pelo ativo
. Cuidar da manutenção dos ativos
. Classificá-lo quanto a:
. Confidencialidade,
. Integridade e
. Disponibilidade
Para que se tenha um controle efetivo dos ativos é essencial que cada ativo de
informação dentro de uma organização possua uma pessoa responsável, essa
pessoa é denominada “proprietário” do ativo. Apesar de a palavra proprietário expressar posse, o proprietário é apenas uma pessoa designada pela empresa para responder pelo ativo e classificá-lo quanto à sua necessidade de confidencialidade, integridade e disponibilidade. Por estes motivos muitos autores preferem chamá-lo de gestor do ativo. A utilização do termo
“gestor” ao invés do termo “proprietário” pode evitar futuros problemas de interpretação.

Uso Aceitável dos Ativos
Além de proprietário, os ativos da empresa possuem usuários. É importante que sejam criadas regras que irão compor a política da empresa quanto a permissões de uso das informações e de ativos associados aos recursos de processamento das informações. Cada usuário deve conhecer e cumprir essa política para uso dos recursos, a fim de não comprometer a empresa e ao próprio usuário. Exemplos de ativos que necessitam de cuidados especiais quanto ao seu uso são: Internet,Correio eletrônico,Estações de trabalho (a estação de trabalho do usuário, assim como sua mesa ou cadeira pertence exclusivamente à empresa e deve ser tratado como
um recurso precioso),Notebooks.

Rótulos e Tratamento da Informação
. Sensíveis
. Confidenciais
. Privadas
. Proprietárias
. Públicas
Cabe a cada empresa analisar quantos e quais níveis de classificação deverão ser utilizados para classificar seus ativos de informação quanto à sua confidencialidade,não existindo uma forma única definida para tal.

SEGURANÇA EM RECURSOS HUMANOS
A implantação da segurança depende mais das pessoas que a conduzem do que dos recursos utilizados. Não basta que se utilizem as melhores ferramentas, sem que os usuários estejam comprometidos com a segurança da informação.Desta forma é necessário que consideremos os usuários (funcionários, fornecedores e terceiros) em três momentos de sua vida profissional na organização: antes da contratação, durante a execução das suas funções profissionais e quando do encerramento de suas atividades profissionais para a organização.

Antes da Contratação
Cada função profissional deve ter suas responsabilidades explicitamente definidas e
de conhecimento das pessoas que vão exercer um cargo na organização. Antes da
contratação o candidato deve entender sua função profissional e concordar com o
papel que vai desempenhar. As responsabilidades do cargo e suas características
devem estar definidas em um documento que descreve as condições de contratação.

Papéis e Responsabilidades
Na descrição da função profissional, as responsabilidades relativas à segurança da
informação devem incluir exigências de seguir a política de segurança, proteger
ativos, executar as orientações e relatar situações de riscos.

Durante a Contratação
Durante o exercício das funções profissionais para a organização, precisamos
garantir que a pessoa:
. Esteja consciente dos controles necessários para a manutenção do nível
adequado de segurança;
. Saiba quais são suas responsabilidades;
. Apóie a política de segurança e demais regulamentos.
. Seja conscientizada quanto a educação e treinamento em segurançada informação;
. Passa por um processo disciplinar

Encerramento ou Mudança da Contratação
Quando do encerramento do trabalho ou mudança do tipo de atividade o usuário deve perder o acesso aos recursos de informação que não mais precisará acessar. Deve-se ter definido como ficarão as informações da organização que eram utilizadas pelo usuário que está encerrando suas atividades ou mudando de tipo de trabalho e tambem deve-se fazera devolução dos ativos e a retirada dos direitos de acesso. A orientação básica é que o funcionamento do negócio não pode ser impactado.

SEGURANÇA FÍSICA DO AMBIENTE
O objetivo de segurança física é o de prover um ambiente seguro para todos os ativos da organização, incluindo atividades envolvendo sistemas de informação.

Ameaças a Segurança Física
Efeitos da natureza
. Falhas em sistemas de suprimento
. Ameaças humanas (sabotagens, armas, etc.)
. Ameaças por motivação política (terrorismo, espionagem industrial)

Controle de Entrada Física
Uso de:
. Funcionários e terceiros sempre identificados atravéz de crachá com foto;
. Visitantes devem ser identificados e acompanhados por um responsável;
. Controles adicionais em locais com informações sensíveis;
. Revisão periódica dos controle de acesso.

Proteção Contra Ameaças Externas e do Meio Ambiente
. Revise as instalações elétricas e hidráulicas;
. Evite material de fácil combustão nessas áreas;
. Se possível use sala-cofre para proteção máxima;
. Crie backups e armazene-os em local distante deste ambiente.

Trabalhando em Áreas Seguras
Ambientes considerados seguros não devem ser identificados a fim de dificultar sua localização por quem não é autorizado para estar lá. Somente aqueles que precisarem acessá-lo devem conhecer sua localização dentro da organização e quais os métodos de acesso e mecanismos de proteção dos mesmos.

Acesso do Público, Áreas de Entrega e de Carregamento
O acesso a área de entrega deve:
. Materiais sejam inspecionados e registrados;
. Não dar acesso a outras áreas;
. Protegidas enquanto abertas;
. Separar o que entra e o que sai.
. Ser restrito a pessoal autorizado;

Manutenção dos Equipamentos
Devem ser periódicas e haver registros de execução
. Obedecer recomendações de fabricantes
. Feitas por pessoal autorizado
. Falhas devem ser registradas

Reutilização e Alienação Segura dos Equipamentos
No descarte substituição ou recuperação de equipamentos:
. Remova todos os dados sensíveis
. Destrua fisicamente em caso de descarte
. Em caso de recuperação, avalie a necessidade real

Resumo do Livro - Conheça o seu inimigo

O projeto Honeynet


O meu comandante costumava dizer que para se defender do inimigo primeiro é preciso conhecer o inimigo, ou seja, conhecer seus métodos de ataque, suas ferramentas, táticas e objetivos. Essa doutrina militar se aplica facilmente à segurança de rede, assim como foi aplicada ao exército. A comunidade blackhat é o adversário. Nós precisamos nos defender dessa ameaça. Entretanto, para ter sucesso, primeiro temos de conhecer o nosso inimigo.

Parte I

1- A Honeynet

No passado, se você perguntasse a um profissional da segurança sobre os bandidos, provavelmente teria uma resposta técnica sobre as diversas ferramentas de exploração e algumas adivinhações elaboradas sobre as táticas e os motivos dos diversos atacantes. Nós entendemos que a comunidade blackhat tradicionalmente tem se limitado às ferramentas usadas pelos atacantes, com pouca compreensão do modo como essas ferramentas estavam sendo usadas, por quem ou por que. Os profissionais da segurança podiam explicar com muitos detalhes como o mais recente ataque de estouro de buffer funcionava ou podiam falar sobre a funcionalidade de um ataque baseado na web, mas muito provavelmente eles teriam dificuldades para explicar quem estava atacando esses sistemas, por que eles estavam sendo atacados ou o que acontecia depois que um sistema estava comprometido. Nossa compreensão se limitava às ferramentas de exploração usadas e a algumas teorias sobre as ações do inimigo.
Esse enfoque é fácil de entender. Dentro da comunidade da segurança a maioria de nós tem uma formação altamente técnica. As nossas funções exigem um conjunto altamente técnico de habilidades para que possamos entender as tecnologias envolvidas, implementar e solucionar os problemas dessas tecnologias. Como esse é o ambiente que tradicionalmente entendemos melhor, também é mais fácil entender nossas ameaças nesses termos técnicos. Da mesmo forma. As evidências com as quais tivemos de aprender são os próprios sistemas comprometidos, as ferramentas e os danos que os bandidos deixaram para trás. Com freqüência, a única coisa que um profissional da segurança pode determinar pode determinar é qual vulnerabilidade foi explorada e, potencialmente, como ela foi explorada. Eventualmente, os blackhats deixam ferramentas nos sistemas comprometidos, mas elas quase sempre são apagadas ou são difíceis de entender. Da mesma forma, dadas todas as outras atividades de rede, os sistemas e seus aplicativos, talvez seja difícil determinar o que é a atividade de produção normal e o que é atividade suspeita ou mal intencionada.
O Honeynet Project é uma tentativa de mudar tudo isso. O seu objetivo é aprender o máximo sobre a comunidade blackhat. O nosso objetivo é aprender não apenas as suas ferramentas, como também as suas táticas e motivos. Nós queremos entender não apenas quais são as ferramentas que os bandidos estão usando, como também como e por que eles estão usando. É nesse ponto que o Honeynet entra em ação.
2- O que é uma Honeynet


As Hineynets são umas ferramentas de aprendizado – especificamente, as ferramentas, as táticas e os motivos da comunidade blackhat. O que torna uma Honeynet exclusiva é o fato de que nada é emulado. Ao contrário, uma rede altemente controlada é formada por máquinas que executem sistemas operacionais que são idênticos aos sistemas de produção. Após estarem comprometidos, os sistemas não apenas nos ensinam como a comunidade blackhat opera, mas também identificam os riscos e as vulnerabilidades que existem nos nossos ambientes. Esse é o principal valor da Honeynet: o aprendizado.

3- Como funciona uma Honeynet

Os dois principais elementos são o controle de dados e a captura de dados. O controle de dados é a filtragem de quais dados fluem para onde. O elemento crítico é controlar as conexões que podem ser iniciadas para fora, para minimizar o risco. A captura de dados é a coleta das informações, as quais são o objetivo final da Honeynet. O segredo da captura de dados são as camadas. Uma variedade de técnicas deve ser usada para coletar dados. Nenhuma camada deve ser um ponto de falha único. Por último, a engenharia social é um método de “manter a Honeynet doce”. Isso permitirá atrair e manter membros mais avançados da comunidade blackhat. Lembre-se, porém, de que independentemente das medidas usadas, sempre existe o risco. O Honeynet Project fez todo o possível para reduzir o risco, mas ele nunca poderá ser eliminado. No exército diríamos “nunca subestime o seu inimigo”.

4- Como criar uma Honeynet



Não existe um único produto, método ou solução para uma Honeynet. Tudo depende dos seus requisitos e do seu ambiente. Entretanto, a funcionalidade do controle e da captura de dados deve ser incluída. Independentemente da arquitetura que você deseja desenvolver e implementar, você deve poder controlar e capturar dados. As Honeynets não são uma solução do tipo “instalar e esquecer”. Elas exigem cuidado e manutenção constantes. À medida que as suas ameaças se adaptam e mudam, a sua Honeynet também deve se adaptar e mudar. Da mesma forma, deve existir um procedimento para reagir rapidamente a um sistema comprometido.

Parte II
Análise de Dados

Logs do Firewall
Na maioria das organizações, os logs de firewall tem pouco valor. São tantos os dados registrados pelo firewall que fica difícil determinar o que é trafego valido e o que é supeito, e isso exige maiores analises. As organizações passam semanas ou ate mesmo meses sem examinar os registros do firewall. Entretanto, em uma Honeynet todo o trafego é suspeito. Assim sendo , todo o trafego dos logs do firewall é potencialmente informação útil.
O firewall do Honeynet Project foi criado para enviar alertas de e-mail para todo o trafego recebido na Honeynet. Esses alertas são gerados sempre que alguém inicia uma conexão com a Honeynet. Isso simplifica o processo de coleta de dados. Em vez de examinar manualmente os logs do firewall, o firewall nos envia por e-mail todas as informações necessárias.
Para obter informações detalhadas sobre os pacotes enviados, átis como flags TCP, nos teríamos de examinar os pacotes capturados pelo farejador do IDS. Entretanto, os alertas do firewall nos dão o feedback em tempo real sobre o que esta acontecendo.
Esses alertas também funcionam para conexões para fora. O firewall dos alertas para todas as conexões iniciadas pela Honeynet para fora. Essas informações são muito importantes, uma vez que elas nos alertam quando um sistema foi comprometido. Normalmente, tal atividade é alertada tanto por e-mail como por um “paging” para a administração atual. É importante monitorar o sistema comprometido o mais rápido possível para garantir que o blackhat não contone nenhuma das medidas de segurança da Honeynet.

Análise do IDS
O IDS fornece três fontes de informações. A primeira fonte são os próprios alertas do IDS, quando alguma atividade suspeita é detectada, essa atividade geralmente é predefinida como uma assinatura especifica no banco de dados do IDS. A segunda fonte de informações são as capturas de pacotes, essas informações detalhadas são armazenadas em um arquivo de log binário e são referenciadas após um ataque para uma analise detalhada. A terceira fonte de informações são os logs de sessão ASCII, o lugar onde o IDS armazena os dado ASCII detectados na carda útil de casa pacote, tal como os pressionamentos de teclas.
O IDS da Honeynet net foi configurado para gerar um alerta sempre que ele detectar atividades suspeitas. Esses alertas são armazenados por meio do syslogd em um arquivo de log, que pe monitorado pelo Swatch uma ferramenta de analise de log adequada para a automação. O Swatch encaminha esses alertas por e-mail para o administrador.

Logs de Sistema
Os logs de sistemas podem ser usados para validar os logs do firewall e do IDS. Nesse caso nos confirmamos que uma exploração de rpc.statd foi, sem duvida, executada no sistema. Os registros também confirmam que as duas contas, operator e cgi, foram usadas para acessar o honeypot.
Nesse caso especifico o blackhat não tentou ocultar a atividade modificando os arquivos de log. Assim sendo, os logs do honeypot em si e os logs registrados no servidor de log remoto eram idênticos.

Análise de um Sistema Comprometido

A sondagem
Ao estudar um ataque você de começar pelo inicio. Onde o blackhat começou? Após identificarmos o inicio, nos podemos fazer o passo a passo do ataque decodificando o mesmo.
Os blackhats normalmente começam com a coleta das informações. Antes de atacarem ele precisam determinar quais são as vulnerabilidades. Se o sistema foi comprometido, em geral essa não é a primeira vez que o blackhat se comunica com aquele sistema. A maioria dos ataques envolve a coleta de informações antes do ataque ser iniciado.

A exploração
A próxima etapa é examinar o ataque. Para tanto, vamos examinar os pacotes de rede. Todas essa informações foram capturadas pelo Snort de IDS e armazenadas em um arquivo de log binário. Agora examinamos esse arquivo de log para identificar e analisar a exploração. O objetivo da maioria das explorações é obter um sell root ou um acesso root no sistema remoto. Após ganhar um Shell root, o blackhat pode executar qualquer comando como o root.

Ganhando acesso
Após iniciar a exploração com sucesso, o nosso blackhat conectou-se ao honeypot com TELNET e FTP. Felizmente para nos, esses sçao protocolos em texto simples em que os dados não são criptografados. Assim sendo, nos podemos decodificar o rastro do farejador e capturar todos os pressionamentos de teclas do blackhat. O Snort já fez isso convertendo o conteúdo em ASCII das sessões TELNET e FTP em arquivos de texto simples. Ao analisar os pressionamentos de teclas que o Snort capturou, nos podemos determinar o que nosso blackhat fez. Um dos benefícios da decodificação das sessões com o farejador de rede é que nós capturamos não apenas STDIN (os pressionamentos de teclas) como tambem STDOUT e STDER.

O retorno
Após o honeypot ter sido comprometido nos o colocamos off-line para examinar os dados. Entretanto, notamos na semana seguinte que uma serie de sistemas estavam tentando usar o TELNET no computador. Aparentemente, o blackhat queria voltar, muito provavelmente para usar o sistema comprometido para outras atividades. Assim sendo, nos deixamos o sistema comprometido novamente on-line, curiosos para ver se o blackhat voltaria. Quase duas semanas depois ele voltou. Novamente nós capturamos todos seu pressionamentos de teclas usando o Snort. Conseguimos determinar os motivos do blackhat. Neste caso, nós aprendemos como o nosso sistema comprometido seria usado com um cliente de recusa de serviço distribuída, o Trinoo. Esse blackhat queria ter a propriedade do máximo possível de sistemas para iniciar ataques de recusa de serviço distribuídos e altamente destrutivos.






Análise de Dados Avançada

Obtenção passiva de impressões digitais
No método de obtenção passiva de impressões digitais você aprende mais sobre o atacante sem se arriscar a ser detectado. Você pode determinar o sistema operacional, os serviços e os aplicativos de um hots remoto usando apenas os rastros do farejador (sniffer). Tradicionalmente, têm-se usado para a obtenção de impressões digitais ferramentas ativas, programas tais como o Queso ou o Nmap. Essas ferramentas operam de acordo com o principio de que toda pilha IP e todos os aplicativos do sistema operacional tem propriedades e particularidades exclusivas. É possível enviar uma seqüência de pacotes de sondagem para os sistemas de destino e examinar as respostas com muito cuidado.
A obtenção passiva de impressões digitais segue o mesmo conceito, mas é implementada de forma diferente. A obtenção passiva de impressões digitais se baseia nos rastros do farejador do trafego gerado pelo sistema remoto.
A obtenção passiva de impressões digitais tem algumas vantagens com relação a obtenção ativa de impressões digitais.
Nós podemos agir em todas as camadas de TCP/IP;
É possível detectar os sistemas com tempo de operação (uptime) baixo;
Nós podemos detectar paroes de comportamento;
As ações acontecem passivamente, sem que o usuário remoto saiba o que estamos descobrindo.
Mas a obtenção passiva de impressões digitais não é perfeita
Ela não é 100% precisa
Alguns aplicativos criam seus próprios pacotes e não produzirão a mesma assinatura que seria produzida pelo sistema operacional em si
Alguns dos valores padrões que usamos podem ser alterados facilmente; as informações podem ser alteradas.

O Exemplo ICMP
A requisição de eco (echo request) do ICMP é exclusiva no sentido que quase todos os sistemas operacionais tem essa capacidade. Isso faz com que os aplicativos baseados em ICMP sejam os mais usados pelos blackhats. Normalmente, o utilitário ping é usado para gerar as requisições de eco ICMP. Podemos faze uma distinção clara entre a implementação do ping em sistemas operacionais UNIX e semelhantes ao UNIX e a implementação do ping em sistemas operacionais da Microsoft.

Argumentação
A arqumentação (forensics) é outra técnica que permite faze uma analise muito mais detalhada dos dados, A argumentação pode recuperar os processos, os arquivos ou as ferramentas que o blackhat possa ter comprometido, permitindo recriar as atividades de usuário ou identificar atividades que não tenham sido identificadas por outras analises. A argumentação é o processo de examinar o sistema comprometido e volta passo a passo para saber o que aconteceu. Geralmente isso exige que se deixe o sistema comprometido off-line ou que se crie uma copia do sistema e se analise as imagens.


O Desafio da Argumentação

The Cotoner’s Toolkit
The Cotoner’s Toolkit (TCT) é um conjunto de ferramentas que oferece uma ampla variedade de funcionalidades. A finalidade do TCT, e da argumentação em geral, é tirar o máximo possível de informações de um sistema comprometido. Muitas pessoas tentam recuperar apenas informações especificas, mas isso é um erro. Em vez de tentar recuperar e analisar um subconjunto especifico de informações, recomendamos que você tente reunir o maxi possível de informações e, em seguida, junte as peças.

Os horários de MAC
Cada arquivo tem um inode que armazena os atributos de MAC (Modify/Access/Change, modificação/acesso/alteração) para manter p estado de um arquivo. Esses atributos são atualizados pelo inode quando os arquivos do sistema são usados.
O atributo Modify mantém o estado, como quando bytes de um arquivo são alterados, quando alguém escreve em um arquivo ou quando um arquivo é incluído ou excluído de um diretório. Access ocorre quando um arquivo é executado ou aberto, ou quando um diretório é acessado. Change se refere a quando um modo de arquivo oi o dono (ownership) muda ou quando um arquivo é alterado.

Inodes excluídos
Os horários de MAC são informações armazenadas dentro do inode de um arquivo. Se o inode puder ser recuperado, os horários de MAC também pode sê-lo. O Ils é um utilitário que recupera os inode excluídos. O Ils2mac é um utilitário que toma os inodes excluídos e determina os horários de MAC do arquivo.

Recuperação de dados
Os arquivos excluídos podem ser recuperados se identificarmos o inode.
Alem da recuperação do inode, O TCT tem outra opção, unrm, para recuperar os arquvos excluídos. O unrm toma uma partição e fornece todo o espaço excluído daquela partição. Ele só fornece os dados que foram excluídos. Esse pe um método excelente para recuperar dados que não podem ser recuperados com base nos inodes excluídos. Por exemplo, suspeitamos que o blackhat modificou os logs de sistema, provavelmente na tentativa de limpar qualquer log de acesso ou atividade.

Parte III

O Inimigo

Na parte I discutimos o conceito da Honeynet e definimos a rede e o seu valor para comunidade da segurança, na parte II explicamos como analisar os dados que uma Honeynet captura, e a partir dessa análise, obter inteligência sobre o oponete. Mais na Parte II discutiremos o comportamento e o que a Honeynet revelou sobre os Blackhats.

A Ameaça
Uma ameaça que todos nós enfrentamos normalmente é conhecida como metodologia scipt kidde (garotada de scripts, iniciantes que não cria suas próprias ferramentas de exploração. Mais sim usa scripts de terceiros para os ataques) que é a sondagem e a exploração de um ataque fácil.
Alguns desses blackhats são usuários avançados que desenvolvem suas próprias ferramentas e deixam no seu sistemas portas dos fundos (backdoors) sofisticadas. Os script kiddes procuram sistemas inseguros para fazer as explorações e o ataque fácil.

As Táticas
A tática que identificamos é simples. A maioria dos blackhats varre a internet aleatoriamente, procurando por uma fraqueza especifica, quando a encontram eles a exploram. Eles se concentram em uma vulnerabilidade específica que pode ser a única que eles conhecem. A comunidade blackhat tem até um nome para esses tipos de ferramentas: autorooter. Em primeiro lugar, o blackhat desenvolve um banco de dados com endereços IP que podem ser varridos, os sistemas em operação que o blackhat pode sondar. A etapa seguinte é obter as informações sobre aqueles endereços IP. Quais sistemas operacionais eles estão usando e todos os serviços ou aplicativos que eles estão oferecendo. Após essas informações serem obtidas, o blackhat ou ferramenta determinará se o sistema remoto é vulnerável.
Nmap ou Queso, essas ferramentas criam pacotes especiais que podem determinar remotamente o tipo do sistema operacional na maioria dos sistemas, eventualmente, até mesmo a versão do kernel ou o nível de correções (patches).
Após os sistemas terem sido comprometidos, os blckhats mais sofisticados implementam “Calos-de-Tróia” e portas dos fundos. As portas de fundos permitem o acesso fácil e não percebido ao sistema. Mesmo que o administrador mude as contas ou senhas do sistema, o blackhat ainda tem o acesso remoto.

As Ferramentas
As ferramentas usadas são difíceis de desenvolver, mas extremamente simples de usar. Desenvolver essas ferramentas exige um conhecimento profundo de programação de baixo nível, tal como programação em Assembler, bem como conhecimento do funcionamento interno dos sistemas operacionais e do desenvolvimento de aplicativos. Primeiro vêm as ferramentas usadas para criar um banco de dados de Ips. Essas ferramentas são verdadeiramente aleatórias, uma vez que varrem a Internet indiscriminadamente.

Mais após essa analise vale lembrar que nem todos os blackhats operem e pensem desses jeito.

Com a Palavra o Inimigo
Bom agora vamos analisar o perfil de um grupo de blackhats denominado kldd13. Porque o perfil e uma ferramenta extremamente útil quando fazemos a coleta de atribuição, previsão ou inteligência. Essa análise foi dividida em diversas partes:
1. Criamos os perfis de cada membro
2. Executamos uma análise de linha de tempo dos ataques, caracterizando os alvos
3. Em seguida, nos fazemos uma análise do trafego, a qual inclui os padrões de uso.
O grupo K1ddl3 é um grupo nomeado adequadamente e liderado por um adolescente para executar os ataques que o líder achava justificados por causa da disputa pela Cashemira. Infelizmente, apenas o líder (DLCK) parece motivado pela causa e o restante só o segue. Esse é um prupo não muito unido que se juntou apenas pela causa comum do hacking.
Dlck é o líder e principal investigador desse grupo. Sem ele o grupo não existiria. Ele é um adolescente sem supervisão dos pais que cria os sites, coordena o IRC e lidera os ataques. Parece ter pelo menos as habilidades básicas de programação em C, conhece os comandos do Unix e tem as habilidades de hacking nos sistemas Unix e Linux, embora use principalmente scripts prontos.
J4n3 é um adolescente, assim como os restantes. Aparentemente Jane também mora no Paquistão. Ela demonstra não ter conhecimento de programação e aparentemente precisa de ajuda para usar os scripts.
M4ry parece fala inglês. O seu conjunto de habilidades é ligeiramente superior ao de Jane. Mary tem algumas habilidades de programação, embora o seu nível de habilidade seja desconhecida.
Sp07 obviamente é americano.

Texto extraído do Livro: Conheça o Seu Inimigo
Autor: Honeynet Project
Adaptado por: GrupoCSI

Falhas

Definição

Todos os sistemas têm falhas. Elas consistem em pequenos erros na criação dos programas, possibilitando que cracker os utilizem para tomar o controle de alguma máquina. Essas falhas por mais insignificantes que pareçam, podem comprometer a segurança de uma rede inteira. E a maior de todas as falhas é o desinteresse dos muitos administradores de hoje que acham que o termo bug é algum desenho do Walt Disney.

Como surge o bug

O bug, ou falha, surge a partir do momento que o programador comete um erro. Ou seja, indiretamente é um erro humano que gera a falha nos programas. Por serem pequenos erros e não aqueles cabeludos que fazem o compilador até rir do programador, muitas vezes passam despercebidos e só são descobertos por algum hacker ou analista de segurança.

Exemplos de falhas

Algumas falhas são tão bobas que é difícil de acreditar. Como por exemplo novamente o sistema Windows, pois de longe é o que possui mais falhas (claro, todas podem ser corrigidas). O Windows 98 possui muitos erros, mas alguns são interessantes. Um é que não consegue executar nem abrir nenhum link com a url c:\con\con. Se você tentar ir em iniciar e executar, o sistema travará e mostrará a famosa tela azul.

Buffer overflows

O buffer overflow é um ataque usado a muito tempo e que ainda será muito usado. Compreende em lotar os buffers (memória disponível para aplicativos) de um servidor e inclui na lista de processos algum programa tal como um kaylogger ou um trojan. Todos os sistemas são vulneráveis a buffer overflows e a solução é a mesma, procurar se já existem correções existentes. Novos erros desse tipo surgem todo dia, até o XP já têm alguns. Se atualize sempre para não ficar para trás.

Race condition

O race condition consiste em fazer algum programa que rode como root (super-usuário) executar alguma falha que possa lhe enviar para o shell do sistema. O programa que mais teve problemas de race condition até hoje é o sendmail, serviço de e-mails padrão Unix. É possível encontrar falhas até em versões mais recentes.





Descobrindo se algum sistema têm falhas

Para o programador experiente é mais fácil verificar se um sistema têm falhas (se o programador for interessado e tiver boa vontade), utilizando de recursos de debug que checam por erros de buffer overflow e outros. Para o usuário é bem mais difícil descobrir algo, principalmente o usuário comum. O interessante seria visitar páginas especializadas no assunto, que a cada dia publicam novos tipos de erros descobertos. Algumas muito boas são a Security-focus (http://www.security-focus.com/) e a Hacker brasileira (http://www.hacker.com.br/).

Utilizando exploits

Exploits são programas criados para explorar falhas. Um exemplo é um exploit chamado iishack2000.Ele possibilita que somente digitando o IP de algum computador, você consiga acesso direto ao interpretador de comandos (ou shell). Assim podemos fazer o que quiser com o sistema.

Instalando patches

Toda vez que um erro for descoberto, deve-se visitar a página do fabricante do programa e pegar a correção. Isso não pode ser feito de mês em mês, é no máximo de três em três dias. Os erros aparecem muito rápido, e um sistema é composto de muitos softwares. Todos devem ser checados. É interessante também assinar uma lista de discussão sobre segurança, assim toda vez que uma falha for descoberta, você receberá um e-mail.

Scanners

São programas que analisam um sistema ou rede em busca de falhas de qualquer tipo. Existem dezenas de scanners diferentes, cada um com suas vantagens. Aprendendo melhor sobre eles, poderá se proteger melhor e evitar que algum invasor malicioso dê um passa à sua frente.

Descobrindo falhas em um host

Para saber quais portas estão abertas em um sistema remoto, utilizamos o scan de portas. Existem muitos e muitos programas desse tipo. Alguns exemplos são o Cha0scan, o Shadow Scan e o HaKtek.
Funciona da seguinte maneira: vão tentar se conectar a todas as portas de um endereço ip fornecido, mostrando todas as portas encontradas “ativas” e o seu conteúdo. É uma boa tática para encontrar cavalos de tróia sem depender de anti-vírus, já que todos usam portas.

Máquinas ativas da subnet

Esse tipo de scanner é o mais usado quando o objetivo do invasor é determinar todos os hosts ativos da subnet e saber seus nomes (DNS). Assim, supondo que o endereço principal de um provedor é http://www.phela.com.br/. Usamos um ping qualquer, ou o próprio scanner, e descobrindo que o endereço ip é 200.205.215.37.
Com isso conseguimos informações importantes do sistema. Sabemos por exemplo qual é o endereço do roteador, e onde deve ficar informações importantes. Se fosse um site de comércio eletrônico por exemplo, as chances de conseguir os dados era enorme, pois mesmo que o invasor não conseguisse acesso diretamente ao computador 200.205.215.37 (que pode inclusive ser um firewall) ele poderia se conectar a um outro IP da subnet e conseguir os dados a partir dele.

Scanneando o netbios

Netbios é uma espécie de protocolo que facilita a comunicação de uma pequena rede, porém não é roteável. Isso significa que: você pode conseguir invadir o computador e mapear drives de todas as pessoas que estão conectadas no mesmo provedor que você, pois estão na mesma subnet. Agora, se você estiver em um provedor e tentar alguma invasão em outro, ela não será possível com o SMB, apenas com o Netbios por TCP/IP. Alguns cuidados devem ser tomados. Que hacker iniciante nunca ouviu falar de “invasão por IP”, um texto que rola na internet há anos?. Pois é, ele corresponde à invasão por netbios. Para que você esteja protegido quanto a ataques, tome algumas providências:

· Se você não pertence a nenhuma rede ou não precisar de compartilhar arquivos pela Internet, desabilite as opções “Compartilhar arquivos e impressoras” no assitente de rede do painel de controle do Windows. Assim você não será detectado por netbios.
· Caso você precise do protocolo, ao menos quando for compartilhar algum disco, coloque uma senha. Assim dificulta o acesso não-autorizado.
· Corrija os bugs do seu sistema. Especialmente se utilizar o Samba para compartilhar uma conexão netbios entre Linux e Windows. O Windows 98, ME, NT, 2000 também possuem erros graves. Alguns deles possibilita que você possa mapear algum recurso da rede sabendo apenas o primeiro caractere da senha do netbios.
· Utilize algum bom scanner para netbios. Um excelente é o NAT (Netbios Auditing Tool). Ele utiliza um dicionário de senhas para tentar conseguir acesso ao sistema, e ainda checa se o mesmo possui falhas que possibilitem a conexão anônima. Uma outra maneira rápida de checar se o netbios está ativo é usando o comando ndtstat do Windows.

Checando as vulnerabilidades em servidores HTTP e FTP

Tranqüilamente o mais perigoso de todos. Os scanners de servidores HTTP e FTP, chamados de scanners de vulnerabilidades, podem encontrar erros em sistemas em segundos e ainda indica como explorar esses erros. Essa é a principal ferramenta do “Script Kiddie”, típico garoto que quer ser hacker, consegue um software destes e sai fazendo varreduras em diversos sistemas. Mesmo que você não tenha inimigos, pode ser alvo de algum desses indivíduos algum dia, pois ele se diverte em tirar páginas do ar, colocar mensagens bobas e rir das pessoas que o acham um mestre. Não tem interesse de espionagem, é apenas uma criança.
Alguns scanners são tão poderosos que possuem funções de scanneamento de portas, hosts e vulnerabilidade em um só host. Ou seja: descobre os hosts ativos, analiza as portas e analiza as vulnerabilidades encontradas nas portas. E meu amigo, se não tiver uma boa política de segurança, tudo acaba.

Analisando partes físicas

O firewall e o roteador, por também conter falhas, são muito analizados pelos scanners. Alguns deles (Firewalls) são tão sofisticados que enviam vários tipos de pacotes de informação somente para “deduzir” quais deles o firewall barra e quais não, assim descobrimos erros na sua implementação e para onde redirecionam os dados. O Shadow Scan poe exemplo, consegue descobrir o endereço real de um servidor através da grande maioria dos firewalls. Portanto não adianta apenas instalar a sua barreira. Precisa atualizá-la sempre.

Wardialers

Os wardialers ou discadores de guerra, são programas que checam uma lista de telefones procurando por telefones conectáveis. Podem ser bem úteis. Por exemplo, supondo que o telefone comercial de uma empresa seja 829-1122. Mande algum programa (como Toneloc) tentar se conectar a telefones do número 829-1100 a 829-1300. Bom, pode ficar um pouco caro os impulsos mas a chance se você conseguir algum número de modem externo é grande. E geralmente usando sistemas com senhas ridículas (ou até sem senhas).

Passo-a-passo: Scanneando

Scanneado hosts conhecidos de uma rede


Para esse exercício pode ser usado qualquer scanner. Usaremos o haktek.

1. Abra o programa
2. Clique no botãozinho que parece um controle remoto e coloque em range os ips que deseja procurar. Por exemplo: 200.187.0138.1 a 200.187.138.250 (esdereço fictício).
3. Mande ver.

O programa mostrará todos os hosts encontrados (que estão ativos) e mostrara seus respectivos nomes (se tiverem).

Scanneando o NetBIOS

Para realizarmos uma checagens de máquinas com NetBIOS ativa, utilizaremos primeiramente o programa Shadow Scan.

Abra o programa.

1. Clique em Internet Scaner de depois em scaners.
2. Selecione NetBios Scanner.
3. Clique em IP Zone e coloque a subnet que você irá procurar ( de qual a qual endereço ip). Não se esqueça que como o NetBIOS não é roteável você só pode faze-lo no seu provedor ou rede local.

Scanneando à procura de falhas

Nesse teste, utilizaremos algum dos scanners de vulnerabilidade para descobrir falhas em um host. Utilizaremos o TWWWSCAN como exemplo pois ele é bem simples.

1. Abra o prompt do ms-dos.
2. Execute o programa.
3. Após o programa mostrar essa tela, execute-o novamente com o seguinte comando: twwwscan80 –v –t3 –pa -ids

Pedimos ao scanner para utilizar a porta 80 (padrão), -v (mostrar o status), -t3 (utilizar dois tipos de métodos de teste), -pa(tentar erros de unix e de windows) e –ids(tática para conseguir um resultado mais eficiente). O programa irá rodar, testar diversas combinações e lhe fornecer os erros encontrados.

Trojans

Deinição de trojan

O nome trojan é uma alusão à história do antigo cavalo de tróia, em que o governante da cidade de Tróia na antiga Grécia foi presenteado com um cavalo de madeira no qual havia escondido soldados inimigos. Possui muitas características similares aos vírus, tais como: perda de arquivos, falhas na memória, erros em periféricos, etc... A grande diferença é que o trojan pode ser considerado um vírus inteligente, pois é controlado à distância pela pessoa que o instalou. Esse indivíduo então, consegue “enxergar” o seu computador, podendo realizar desde as mais simples tarefas como mexer o mouse à utilização do seu IP como ponte para outros ataques. Conseguem ficar escondidos em arquivos de inicialização do sistema operacional e se iniciam toda vez que a máquina é ligada.

Perigo real

A popularização da Internet e a facilidade de se criar um programa cavalo de tróia fazem com que esse método de invasão seja atualmente o mais perigoso de todos. Ele não depende de falhas no seu sistema, é quase indetectável e pela sua facilidade de uso pode ser operado por crianças de 6 anos. Pode-se esconder um trojan em fotos, arquivos de músicas, aplicativos e jogos. Sendo assim, nunca abra arquivos executáveis enviados por estranhos ou pegos em sites duvidosos.


Tipos de cavalos de tróia

Invasão por portas TCP e UDP

Possuem na sua maioria dois arquivos: um servidor para ser instalado no computador da vítima e em cliente com interface gráfica para manipular o servidor remotamente. O trojan que utiliza portas TCP, estabelece uma conexão como o servidor, atuando diretamente de dentro do sistema. Já o que utiliza portas UDP, comunica-se via pacotes de dados enviados ao host alvo. Não tão confiável como o TCP, não garante a entrega dos pacotes e o recebimento da resposta.

Trojans de Informação

Não é tão usado quanto o de portas mas igualmente (ou até mais) perigoso. Enquanto a maioria das funções dos trojans comuns é apenas para aborrecer (sumir com a barra de tarefas, apagar monitor, desligar Windows, etc...), o trojan de informação se concentra em ficar residente detectando todos os tipos de dados vitais do sistema. Ele consegue toda senha digitada no servidor junto ao endereço ip das máquinas e envia a informação para uma conta de e-mail configurada pelo invasor.


Trojans de Ponte

Consiste em instalar um servidor no seu computador que possibilite que através dele ( e do seu endereço ip) o invasor possa realizar atques de invasão e de recusa de serviço. Então, se um grande site for invadido e baterem na sua porta, procure pois deve haver algum desses no seu sistema.

Rootkits

Esse tipo especial de backdoor é utilizado no Unix e Linux. Ao ser executado pelo operador do sistema ele substitui arquivos executáveis importantes (como o os por exemplo) por versões “infectadas”. Essas versões podem ser tanto trojans de portas quanto de informação.

Trojans comerciais

Alguém já ouviu falar do PcAnywhere? Ou do terminal remoto do Windows 2000 e XP? Esses programas (além de muitos outros) possibilitam que você controle completamente a máquina de alguém, como se estivesse sentado ali. Quer jogar Quake no computador invadido? Clique no botão iniciar dele e faça tudo como se estivesse no seu próprio computador. A vantagem desses programas (já que são comerciais), é que o anti-vírus não pega.

Escondendo o trojan em arquivos confiáveis

Existem muitos programas na Internet que escondem os servidores em arquivos executáveis. Um deles é o The Joiner, que possibilita você juntar o trojan com algum outro executável e criar um terceiro contendo os dois. Além de possibilitar que o coloque em fotos. Um método engraçado muito utilizado hoje pelos que se dizem “hackers”, é renomear algum executável para foto e deixar um largo espaço. Por exemplo: supondo que o nosso servidor é o arquivo server.exe. Então iríamos renomeá-lo para loira.jpg____.exe.
Assim muitos usuários inexperientes caem no truque. Todos os métodos citados anteriormente têm somente uma falha: se você criar um executável pelo The Joiner ou renomear o servidor, qualquer programa anti-vírus logo detectará o arquivo. Para que o anti-vírus não o detecte, é só usar a imaginação. Crie um programa em alguma linguagem e coloque o servidor no meio dos arquivos. Faça com que o programa quando executado renomeie o servidor e o execute. Assim, se o servidor como voodoo.dll passe-o para sysconf.exe e execute. Esse método não é infalível mas engana maioria dos programas de detecção.

Utilizando compressores de executáveis

Consiste em usar um programa compressor de arquivos EXE, que apenas diminua o seu tamanho retirando espaços vazios desnecessários. Um programa comum é o Petite que diminui cerca de 30% ou mais do arquivo original. Um trojan (ou até mesmo um vírus) comprimido é absolutamente indetectável por anti-vírus e scanner. Isso porquê esses programas se baseiam na estrutura do arquivo para identifica-lo. É como se tivesse fotos na memória e as comparasse.
Spoofando uma porta

É muito raro a utilização do spoof em trojans. Isso porquê se a pessoa envia pedido de conexão a um servidor, ela precisa estar usando o seu endereço IP real para receber a resposta. Apenas com o protocolo UDP, que envia comandos sem estabelecimento de conexão, isso é possível. Em quase todos os casos, o endereço IP capturado por um programa anti-trojans é realmente o do invasor. A única exceção é quando se utiliza um trojan de ponte para se conectar a outro (geralmente TCP).

Métodos eficazes e os não eficazes de se retirar o programa

Detecção por portas

Funciona do seguinte modo: os programadores estudam as portas TCP e UDP utilizadas pelos trojans e criam um programa que abre essas portas. Assim, quando um invasor vir a porta aberta e pensar que é um cavalo de tróia que está instalado ali, cairá em uma armadilha tendo o seu endereço IP detectado. Esse método não é muito eficiente pois facilmente podemos mudar as portas que os trojans utilizam. Mas ainda é um método muito usado pois muitas pessoas não se lembram de trocar as portas.

Detecção pelo arquivo

Ele detecta o trojan checando a sua estrutura. Se o arquivo estiver renomeado (sem ser para executável) ou estiver comprimido, esse método se torna inútil. Para ser realmente eficaz, deve ser usado junto à detecção de portas. Assim, mesmo que se
Anti-vírus não encontrou um trojan, o Anti-Trojans pode encontrar.

Detecção por string

Pouco divulgado publicamente, se torna a melhor garantia para se detectar um trojan sem falhas. Isso porquê mesmo que o programa for comprimido ou mude as portas, ele ainda estará usando uma das 65535 portas do sistema e se comunicará com o cliente. A comunicação entre cliente e servidor se dá por uma string(texto) enviada. Por exemplo: O Netbus 1.7 envia uma string assim “Netbus 1.7x” quando alguma conexão for estabelecida. Se for o cliente, ele responderá com outra string. Então para analisar todas as portas do seu sistema e saber quais estão abertas e possuem string, utilize um programa como o Chaoscan ou algum outro scanner de portas que lhe dê essas informações.

Deteção manual
A checagem manual do sistema pelo operador pode facilitar muito a vida. Olhando registros, arquivos de inicialização, conferindo os programas carregados na memória, o tamanho dos arquivos, etc... Todas essas precauções evitam dores de cabeça. Essa política adotada junto aos outros tipos de detecção faz com que você exclua em 100% a chance de uma invasão por cavalos de tróia.

Protocolos

Protocolos são programas e dever ser instalados em componentes de rede que precisam deles. Computadores só podem comunicar-se entre si se utilizarem o mesmo protocolo. Se o protocolo usado por um computador não for compatível pelo usado em outro, eles não podem trocar informações.

Tipos de Protocolos

Dois tipos de protocolos existem hoje: abertos e específicos.

Protocolos Abertos

Protocolos abertos são protocolos feitos para o padrão da indústria. Eles se comunicam com outros protocolos que utilizam o mesmo padrão. Um protocolo aberto não possui dono e todos os sistemas podem fazer implementações livremente.

Protocolos Específicos

Protocolos específicos são feitos para ambiente de rede fechados e possuem dono.

Tipos de Transmissão de dados

Protocolos roteáveis permitem a transmissão de dados entre diversos segmentos de uma rede. O problema é que o grande volume de certo tipo de tráfego deixa a velocidade de conexão muito lenta. A quantidade de tráfego gerada em uma rede, pode ser de três tipos: Unicast, Broadcast e Multicast.

Unicast

Em uma transmissão unicast, uma cópia separada dos dados são enviados de sua origem para cada computador cliente que os requeste. Nenhum outro computador na rede precisa processar o tráfego gerado. No entanto, em uma rede com muitos computadores o unicast não é muito eficiente pois o computador de origem terá que transmitir múltiplas cópias dos dados(resultado, ficará lento). O unicast é bom de ser usado em apenas pequenas redes.

Broadcast

Esse é o tipo de transmissão preferido da turma que gosta de um Denial of Service. Nesse tipo de transmissão, os dados são enviados apenas uma vez mas para toda a rede. Esse processo não é muito eficiente pois faz a velocidade cair bastante já que todos os computadores irão receber os dados. Mesmo os hosts que não fizeram o pedido receberão os dados. Somente não irão processa-los.




Multicast

É uma mistura dos dois. É enviada apenas uma cópia dos dados e somente os computadores que fizeram o pedido os recebem, assim evitando de se causar um tráfego muito intenso e consequentemente um congestionamento no rede.

NetBios

A interface NetBIOS (NetBEUI) foi um dos primeiros protocolos disponíveis para uso em redes compostas de computadores pessoais. Como o próprio nome diz, o NETwork Basic Input Output System, foi designado para ser um protocolo eficiente e pequeno para uso em redes caseiras não roteadas de cerca de no máximo 200 computadores.

IPX/SPX

Internetwork Packet Exchange/Sequenced Packet Exchange (IPX/SPX) é um protocolo desenvolvido especificamente para a estrutura Novell NetWare. O IPX define o endereçamento da rede NetWare e o SPX fornece segurança e confiabilidade ao IPX. (O SPX é como aqueles caras que só se sentem seguros ao lado da esposa).

Apple talk

Protocolo criado pela apple para utilização em redes macintosh para o compartilhamento de arquivos e impressoras. É componente específico, ou seja não é um padrão do mercado.

TCP/IP

Diferentes dos outros protocolos visto aqui, o TCP/IP na verdade é um conjunto de muitos protocolos. Usando uma arquitetura cliente-servidor quase perfeita, esse conjunto de protocolos possibilita praticamente todo tipo de sistema operacional e rede de se comunicarem entre si, possibilitando até a criação da Internet.

IP

O IP (Internet Protocol) é o responsável por rotear e entregar os pacotes contendo as informações que serão enviadas. O endereço IP contém um cabeçalho aonde estão indicados os endereços de redes e de hosts. Esse endereço é representado por quatro bytes separados por pontos. Por exemplo:

200.202.36.251

Portas

Se você quisesse colocar um servidor de homepage e um servidor de jogos em um host tendo um só endereço IP seria impossível. Como o cliente saberia indentificar qual dos servidores precisa conectar? Para isso criaram as portas. Elas indentificam conexões utilizando números de 0 a 65536.

DNS

Já imaginou se você tivesse que decorar o endereço IP de todas as páginas que visita na Internet? No máximo uns 10 você decoraria, mas e o resto? Para acabar com esse problema surgiu o DNS. A sua função é procurar em um banco de dados um nome que corresponda a um IP. Quando digitamos http://www.yahoo.com/ por exemplo, não precisamos saber o endereço IP. O DNS do nosso provedor de acesso vai checar nome em seu banco de dados e se encarregar de nos direcionar ao IP encontrado. Olha que protocolo conzinho J.

SMTP

O Simple Mail Transfer Protocol é o protocolo responsável por entregar mensagens de e-mail a um destinatário. Toda vez que seus e-mails são enviados, um servidor smtp se encarrega de leva-los ao seu destino. O interessante do SMTP é que ao contrário do POP3 (visto a seguir), não é necessário senha para enviar um e-mail. Eu posso abrir o Microsoft Outlook e mandar e-mails como se fosse George Bush ou Tom Cruise. A falta de segurança no envio de mensagens é o ponto de partida para a facilidade da se enviar e-mails anônimos (como visto em anonimidade).

POP3

O POP3 já necessita de senhas para poder habilitar o acesso dos usuários às suas caixas postais, além de saber “re-montar” os arquivos enviados em formato MIME com o SMTP. Uma grande desvantagem dele é que fica muito fácil fazer um ataque de bruteforce pra tentar descobrir as senhas, já que a maioria dos servidores possui falhas que possibilitam softwares maliciosos de ser rodados.

TELNET

Telnet, ou terminal remoto é um modo de se acessar remotamente sistemas como se você estivesse operando localmente. Por exemplo: usando o telnet (e um trojan instalado) podemos ter acesso ao MS-DOS de qualquer um. Do mesmo modo que poderíamos digitar comandos para listas, copiar e apagar dados, conectados a outro computador também podemos.

FTP

File Transfer Protocol é seu nome real. O protocolo de transferência de arquivos serve única e exclusivamente para ser um banco de software. Não se pode executar programas remotamente como no caso do telnet. Apenas pegar e colocar arquivos. Uma de suas vantagens é, como ele é usado somente para transferência de arquivos, sua velocidade pode chegar a ser muito maior do que pegar arquivos em HTTP (visto mais à frente).





HTTP

O Hyper Text Transfer Protocol é o protocolo responsável de transmitir textos, imagens e multimídia na Internet. Sempre que você abre uma homepage ( mesmo que ele só contenha textos ), você está usando esse protocolo. Quando você for baixar um arquivo, preste atenção no link. É muito provável que de uma página navegada por HTTP, se envie a um servidor FTP.

SNMP

Simple Network Management Protocol. Algo como protocolo simples para manejar a rede. E é exatamente isso o que ele faz. Usando o SNMP você pode obter informações detalhadas sobre contas de usuários, equipamentos de rede, portas e serviços abertos e muito mais.

Resumo Livro Etica hacker


A lei de Linus
Segundo a lei de Linus, os fatores que atuam como motivações podem ser classificados em três categorias fundamentais. E o mais importante é, assim como o processo de evolução, passar de uma fase para outra ou mudar de categoria. As categorias são, netas ordem, “sobrevivência”, “vida social”, e “diversão”.
A primeira etapa, sobrevivência, é uma verdade incontestável. Qualquer se vivo procura a sobrevivência em primeiro lugar.
É certo que existem pessoas que valorizem os laços sociais mais que suas próprias vidas. O exemplo clássico da literatura em que essa valorização é encontrada em Romeu e Julieta, o ideal de “morrer por sua família, país, religião”.
Diversão pode parecer uma escolha meio estranha, mas o que quero dizer com diversão é mais do que jogar Nintendo. É xadrez. É pintura. É o exercício mental de tentar explicar o universo.
A Lei de Linus por si só não se preocupa com o fato de que essas são as três coisas que motivam as pessoas, mas que a evolução depende da passagem da fase da sobrevivência para a vida social, e desta para a diversão.

Capitulo 1
A Ética dos hackers no trabalho
Linus Torvalds diz que “para um hacker, o computador pro si só já é diversão”. Com isso, ele quer dizer que o hacker programa porque acha a programação uma atividade intrinsecamente interessante, excitante e lúdica.
O hacker sente-se fascinado pela programação, ele recarregar as suas energias. Originário do MIT da década de 1960, o hacker clássico emergiu da letargia e partiu para a programação com furor e, uma luz que ilumina o caminho quando o fogo é aceso, ela nasce na alma e alimenta-se imediatamente.
Visto por este prisma, os hackers de computadores representam um exemplo excelente de uma ética geral de trabalho, que podemos chamar de ética de trabalho dos hackers, que está ganhando espaço na sociedade virtual, na qual o papel dos profissionais de informação está se expandindo.
Vejamos que tipos de forças históricas duradouras e de forte cunho social a ética de trabalho dos hackers enfrenta nesse sentido. A expressão familiar, “ética protestante do trabalho” advém do famoso ensaio de Max Weber “A Ética Protestante e o Espírito do Capitalismo”.
Weber Demonstra a forma pela qual a outra principal força descrita em seu ensaio, a ética do trabalho ensinada pelos protestantes surgida no século 16 prove esses objetivos. O pastor Richard Baxter descrê a forma purista da ética do trabalho da seguinte forma: “É através da ação que Deus nos manteve e às nossas atividades; o trabalho é a ética e o fim natural do poder”, e dizer “Vou orar e meditar [em vez de trabalhar] é como se seu servo se recusasse a seu trabalho maior e se lançasse a algo menor e mais fácil”.
Baxter aconselha aos empregados a incutir nos trabalhadores a idéia de que o trabalho deve ser feito da melhor forma possível, tratando o assunto como um problema de consciência: “Um bom servo de Deus deve fazer todo o serviço em obediência ao Senhor, como se Ele Próprio tivesse ordenado”. Baxter resume essa postura referindo-se ao trabalho como um “chamado” que pe uma boa expressão das três atitudes básicas da ética protestante do trabalho: o trabalho de ser visto como um objetivo em si. Deve ser feito da melhor maneira possível; e deve ser encarado como um dever, que deve ser feito simplesmente porque deve ser feito.
A Razão de Viver
O ponto de vista de Richard Baxter em relação ao trabalho era completamente estranho à igreja do período pré-protestantismo. O trabalho não ocupava posição preponderante na igreja. Deus mesmo trabalhou sei dias e descansou no sétimo. O principal objetivo dos seres humanos também era esse: no Paraíso, assim como nos domingos, não seria necessário trabalhar. Estar no paraíso era esta fora do escritório. A resposta original do Cristianismo para a pergunta sobre qual seria o objetivo da vida era o que objetivo da vida era o domingo.

Vida e Paixão
Para os hackers, paixão descreve de forma geral o teor de suas atividades, embora sua realização talvez não seja totalmente um jogo divertido em todos os seu aspectos. Dessa forma, Linus Torvalds descreveu seu trabalho no Linux como uma combinação de um passatempo divertido e trabalho sério: “O Linux foi sempre pra mim um passatempo”. Embora um passatempo sério e criativo, o hackerismo também gera trabalho pesado. Em seu guia Como Torná-se um Hacker, Raymond comenta: “Ser um hacker é muito divertido, mas ao mesmo tempo é engraçado que a atividade exija muito esforço”. Contudo, o significado maior do objetivo final faz com que as partes mais chatas valham a pena. Raymond escreve que: “O trabalho árduo e a dedicação passam a ser uma espécie de jogo intenso em vez de trabalho pesado”.

Capitulo 2
Tempo é Dinheiro?
Outro aspecto central da maneira dos hackers trabalharem é sua relação com o tempo. O Linux, a Internet e o PC não foram desenvolvidos num escritório durante o horário comencial. Quando programou as primeiras versões do Linux, geralmente Torvalds trabalhava ate tarde da noite e acordava no começo da tarde para continuar seu trabalho. Torvalds às vezes flanava entre codificar o Linux e brincar com o computador, pu faze alguma outra coisa completamente diferente. Essa relação de liberdade com o tempo é característica dos hackers, que apreciam esse ritmo individual de vida.

Otimização do tempo
Não é possível evitar as conseqüências da otimização do tempo. Um bom indicador cultural de como o tempo é um assunto cada vez mais palpitante é a maneira como é apresentado o noticiário.
Mudanças tecnológicas ocorridas em um curto espaço de tempo tornam imperativo levar novas tecnologias aos consumidores de forma rápida, antes que outros concorrentes o façam. Os produtos retardatários ficam obsoletos, sendo que reações tardias às mudanças tecnológicas fundamentais são ainda piores.
Há exemplos excelentes da cultura da velocidade: a Amazon.com, a Netscape e a Dell Computer, que representam símbolos da mídia da economia da informação.
A compressão do tempo chegou a tal ponto que a competição tecnológica e econômica consiste em prometer ao consumidor que o futuro chegará a ele de forma mais rápida que chegaria por intermédio dos concorrentes. Comercializam-se novas invenções tecnológicas alegando que as mesmas trazem o futuro até o presente. De forma correspondente, na economia, ninguém que crescer esperando o futuro, motivo pelo qual as empresas da Rede valorizam-se tremendamente o ganho de tempo, muito antes de perceberem sua expectativas para o futuro.
Transformação do Domingo em Sexta-feira
Na velha ética do Protestantismo, centra no trabalho, não havia espaço para a diversão no trabalho. A glorificação dessa época reflete-se no fato de que o ideal da otimização do tempo está se estendendo à vida fora do trabalho.
A diversão, que a principio tinha sido banida do trabalho, também foi banida do lazer, e o que restou foi tempo de lazer otimizado.
No tempo de qualidade, todo o tempo ocioso é minimizado ou eliminado. Um pai que já tiver internalizado toda a cultura da velocidade poderá até mesmo acreditar que a própria criança também vivencia esse tipo de relacionamento da mesma forma ou até melhor um relacionamento em que o adulto tem tempo para dedicar aos filhos. Hochschild comenta: “Qualidade de tempo afasta a esperança de que programar extensos períodos de tempos juntos possa compensar toda a perda de tempo geral”.
A Transformação da Sexta-feira em Domingo
Se utilizarmos essa nova tecnologia para promover a centralização no trabalho, tecnologias como o telefone celular, poderão facilmente levar à dissolução do elo entre o trabalho e lazer. Tanto a otimização quanto a flexibilidade do tempo farão como que os domingos se pareçam cada vez mais com as sextas-feiras.

O Ritmo da Criatividade
Os hackers sempre respeitam o indivíduo, sempre se mostram contra o autoritarismo. Raymond define a posição dos hackers da seguinte forma: “A atitude autoritária tem que ser sempre combatida, pois, senão, sufocará você e outros hackers”.
A ética dos hackers também faz lembrar que, no meio da suspensão do valor e da liberdade realizada em nome do “trabalho”, essa pe a nossa vida e tem de ser vivida agora. Otrabalho é uma parte da vida, o modo de trabalho não é apenas uma forma de respeitar os trabalhadores, mas os seres humanos como tais. Os hackers não são adeptos do provérbio “tempo é dinheiro”, mas a outro ditado, “tempo é minha vida”. E, de certo, essa é a nossa vida, que deve ser vivida integralmente, e não como um protótipo da versão definitiva cheia de erros.

Capitulo 3
O Motivo é Dinheiro
Como já foi visto, a ética dos hackers é uma ética de trabalho que desfia a ética predominante do Protestantismo.
Ao escrever sobre as dimensões do principio do velho capitalismo, representada pela ética do dinheiro do Protestantismo, weber diz: “O summum bonum desta ética”, seu maior bem é ganhar cada vez mais dinheiro. Na ética do Protestantismo, trabalho e dinheiro são encarados como objetivos.
Alem de fortalecer a posição do dinheiro, a nova economia também fortalece a idéia da propriedade, que é a idéia central do velho capitalismo.

Dinheiro é um Motivo
Tais simplificações obviamente ignoram muitas facetas da natureza humana mas, dado o alerta teórico, o modelo de Torvalds e de Maslow podem lançar uma luz sobre as diferenças entre a motivação dos hackers e a motivação intrínseca da ética do Protestantismo. “Sobrevivência”, ou “Preciso ganhar a vida” é a resposta que a maioria das pessoas daria ao serem consultada sobre seus motivos para trabalhar ( e, provavelmente, a resposta seria dada com ar de surpresa, como se a mesma fosse óbvia). Mas o que ocorre de fato é que essas pessoas não querem dizer sobrevivência no sentido estrito, ou seja, ter comida, etc. Sobrevivência, segundo esses indivíduos, reflete um determinado estilo de vida, pois os mesmos não trabalham simplesmente para sobreviver, mas para satisfazer necessidades características de uma sociedade.
Estruturar a vida é questão básica e de vital importância. Se ganhar dinheiro for o objetivo principal, muitas vezes o individuo acaba deixando de lado seu verdadeiro interesse, que seria, na verdade, o reconhecimento. Acrescentar outros valores quando a idéia fixa de ganhar dinheiro já esta instalada é muito mais difícil que torna um interesse pessoal financeiramente viável ou menos rentável. No primeiro caso, o que se faz não é especialmente interessante nem para si nem para terceiros e, para vender o trabalho para terceiros, é preciso primeiramente fazê-los crer que essa tarefa extremamente enfadonha é, no final das contas, interessante.

Hackers Capitalistas
Bill Gates, o inimigo número um dos hackers, é um bom exemplo disso. Quando fundou sua empresa em 1975, Gates era um hacker, exatamente como Joy, Wozniak ou Torvalds. Os computadores eram sua paixão desde a infância, e todo o seu tempo livre era passado no computador da empresa local de informática. Gates ganhou reconhecimento como hacker ao programar o primeiro interprete da linguagem BASIC de programação sem acesso ao computador ao qual destinava-se (o MITS Altair); funcionava! Juntamente com seu amigo Paul Allen, Gates fundou a Microsoft com a intenção expressa de, inicialmente, cria linguagens de computador para PC’s. Esse ponto de partida, na verdade, é bem característico dos hackers, já que somente os hackers usam essa máquina para programação.
Após a fase de implementação da Microsoft, Gates ocasionalmente descreia seu comportamento em relação ao trabalho com um tom que se assemelhava mais à ética do Protestantismo do que à dos hackers.

Capitulo 4
A Academia e o Mosteiro
Na ética do dinheiro original dos hackers, o posicionamento que rege a nova economia, “que visa à obtenção do lucro racional e sistematicamente”, é desafiado pelo modelo aberto, no qual o hacker dá sua criação livremente para terceiro para que possam usá-la, testá-la e desenvolvê-la.
As atividades dos hackers têm como máximas a paixão e a liberdade de agir; entretanto, a essas máximas pode-se acrescentar um aspecto mais pratico de que, na Era da Informação, as novas informações são criadas mais efetivamente se introduzidos o elemento lúdico e a possibilidade de trabalhar segundo o ritmo individual de cada um.
A Academia e o Mosteiro
Outra metáfora possível para o modelo de fonte aberta é, novamente. A academia, à qual tal modelo assemelha-se ainda mais diretamente do que à catedral. Os cientistas também divulgam seu trabalho abertamente para que ele seja utilizado, testado e desenvolvido por terceiros. Suas pesquisas são baseadas na idéia de um processo aberto que autocorrige. Robert Merton também considerava essa idéia de auto-correção um marco. Ele a denominou de ceticismo organizado – historicamente, é ima continuação da synusia da Academia de Platão, que também incluía a idéia de abordar a verdade através do diálogo critico.
Sob um ponto de vista mais abrangente, pode-se dizer que, no modelo acadêmico, o ponto de partida também é um problema ou um objetivo no qual um indivíduo tem um interesse pessoal; então, o indivíduo acha sua solução particular (embora em muitos casos, a mera consolidação do problema ou a sua proclamação por si só já seja interessante).
O oposto desse modelo acadêmico aberto dos hackers pode ser denominado de modelo fechado, que não só permite o acesso apenas restrito às informações, mas que é também ditatorial.
Tanto cientistas quanto hackers aprenderam na prática que a ausência de estruturas fortes é uma das razões que torna esse modelo tão poderoso, Os hackers e os cientistas só têm de concretizar sua paixões e trabalhar em grupo com outros indivíduos com quem as compartilham.

O Modelo de Aprendizagem dos Hackers
O processo típico de aprendizagem dos hackers começa quando um problema interessante é estabelecido. O hacker, então, se lança em busca da possível solução utilizando, para tanto, diversas fontes e, depois, submete seu resultado a exaustivos testes. Aprender cada vez mais sobre determinado assunto torna-se uma obsessão para o hacker. A princípio, Linus Torvalds, um auto-didata, aprendeu a programas computadores num computador herdado de seu avô. Ele criava problemas para si mesmo e descobria do que ele precisava para resolvê-los. Muitos hackers aprenderam a programa dessa maneira informal, perseguindo suas próprias paixões. A capacidade que muitas crianças possuem de aprender problemas intrincados de programação demonstra a importância da paixão no processo de aprendizagem, em contraposição ao ritmo lento a que seus contemporâneos são submetidos em escolas tradicionais.
Um aspecto bem característico do modelo de aprendizagem dos hackers reside no fato de que o conhecimento de um hacker ensina a outro. Quando um hacker estuda código-fonte de um programa, não é raro esse hacker desenvolver ainda mais esse código e, dessa forma, outras pessoas podem aprender com seu trabalho. Quando um hacker verifica fontes de informação úteis a partir de suas próprias experiências. Forma-se uma discussão contínua, crítica e crescente em relação a diversos problemas. O mérito de participar dessas discussões é simplesmente adquirir reconhecimento.

O Modelo Social
Um aspecto de suma importância do hackerismo é que a mesma procura tem sempre em mente que resultados de grandes proporções podem ser obtidos pela cooperação direta das pessoas, e a única coisa que limita os resultados é a nossa imaginação. O modelo aberto dos hackers, por exemplo, poderia ser transformado num modelo social, que pode ser batizado de modelo de fonte aberta, através do qual seria anunciado: “tenho uma idéia, posso contribuir com X para implementá-la e espero adesões! Embora essa idéia de modelo aberto também envolva ação física, a Rede poderia ser utilizada como um método efetivo para reunir forças e, posteriormente, disseminar e explorar ainda mais essa idéia”.

Capítulo 5
Da Netiqueta à Ética da Rede
Além do trabalho dos hacker e da ética do dinheiro, a ética dos hackers apresenta ainda um terceiro aspecto, que pó ser chamado de ética da rede, ou nética. Essa expressão refere-se à relação entre hackers e as redes de sociedade em rede, e é aplicada num sentido mais abrangente que a expressão netiqueta (que diz respeito aos princípios de boas maneiras que devem ser observados na comunicação na Rede - por exemplo “evite críticas severas”, leia o arquivo com as perguntas mais freqüentes antes de enviar a mensagem.). Mais uma vez, nem todos os hackers compartilham dos elementos da ética da rede, mas ainda assim esses elementos estão unidos no seu contexto social e na sua relação com a ética dos hackers.
Privacidade ou Onisciência Eletrônica
A Rede talvez seja um meio de liberdade de expressão, mas também pode ser transformada num meio de vigilância. Tradicionalmente, muitos hackers trabalharam para evitar esse tipo de atitude, defendendo a privacidade no ciberspaço. Recentemente, os governos e empresas tentam violar a privacidade de diversas maneiras.
Na Era da Eletrônica, os usuários constantemente deixam rastros eletrônicos em vários bancos de dados. Quando mais eletrônica torna-se nossa era, mais vestígios podem ser encontrados.
Os hackers há muito chamam a atenção para o foto de que a manutenção da privacidade não é, de forma alguma, uma dádiva da Era da Eletrônica, mas, ao contrario, requer mais proteção consciente do que nunca.
No futuro, a privacidade não será apenas uma questão ética, mas também tecnológica. A implantação tecnológica de redes eletrônicas tem um grande impacto sobre o direito individual à privacidade. A ética virtual dos hackers de defesa da privacidade tornou-se um trabalho de união de forças: além de proteger a Rede, sua influencia tem de ser exercida em outras redes que armazenam detalhes sobre a vida das pessoas.



Realidade Virtual
A respeito desta ultima observação, a natureza da mídia convencional (especialmente da televisão), que faz de seu usuário um mero receptor, é muito diferente.
Embora muitas vezes a Rede seja chamada de “realidade virtual”, atualmente o telespectador freqüentemente experimenta situações virtuais, no sentido de serem irreais. Da forma como se apresenta, assistir a televisão evoca a sensação de que não pode existir nada pior.
O surgimento da sociedade virtual não traz, por si só, nenhum motivo que leve a crer na ilusão geral propagada, e livros como O Fim do Emprego de Jeremy Rifkin. De acordo com Rifkin, o papel do trabalho em nossas vidas diminuiria e nossa energia poderia ser mais concentrada em atividades de lazer. Na verdade, nas duas ultimas décadas, o tempo de trabalho não diminuiu, mas tornou-se mais longo. Qualquer reivindicação no sentido de reduzir a jornada de trabalho só se justifica comparando-se a sociedade industrial do século XIX (na qual chegava-se ao extremo de 12 horas de trabalho), mas não num contexto histórico ou cultural mais complexo.
Capitulo 6
O Espírito do Informacionalismo
Na Era da Informação, quase todo o conhecimento fica ultrapassado rapidamente. Então, para manter-se atualizado com os desafios de seus projetos em mutação, o profissional auto-programável precisa reprogramar sua experiência constantemente. Os desafios dessa época acelerada em que vivemos combinam-se com os desafios da flexibilidade do tempo, que são igualmente exigentes. Com as novas possibilidades mais flexíveis de trabalho – como a execução do trabalho em casa e o seu envio por computador -, os profissionais de informação devem aprender a ser também seus próprios gerentes e a se programarem com mais eficiência em favor do gerente.

Os Sete Hábitos do Desenvolvimento Pessoal
Através do desenvolvimento pessoal, esse mundo veloz e complicado é administrado ensinando pessoas a perseguirem objetivos cada vez mais específicos. Para alcançar suas metas num ambiente marcado pela competição a nível mundial, é preciso que as pessoas “façam pontaria” com mais precisão. É preciso focalizar um objetivo e excluir todo o resto, administrando a velocidade concentrando atenções no momento atual. É mais fácil administrar a vida quando os objetos são reduzidos a um apenas, e a um momento de cada vez. Tudo torna-se mais simples quando nos perguntamos se estamos vivendo de acordo com o objetivo que traçamos. O desenvolvimento pessoal simplifica tudo ainda mais ao dar respostas fixas para cada caso.
O tom religioso do desenvolvimento pessoal deixa claro que embora a finalidade desse método seja a consecução do objetivo que está mais próximo, em termos psicológicos ela não é somente um meio para atingir esse objetivo, Espiritualmente, a vida torna-se mais fácil na sociedade virtual se houver um atalho ao qual possa recorrer, e em cujo poder de salvação seja possível acreditar incondicionalmente.

O Espírito do Informacionalismo
A principio a sociedade virtual aparentemente não tem valores: empresas virtuais adaptam seus produtos aos valores de qualquer cultura, e inclusive incorporam tais valores culturais se encontrarem um mercado promissor. Alem disso, algumas culturas estão começando a abandonar os valores tradicionais que impedem a atividade das empresas virtuais para não serem excluídas da economia global.
Dessa forma, ao mesmo tempo em que a economia da informação acrescenta novos valores aos valores já existentes, tais valores são projetados essencialmente para garantir a continuidade do velho Ideal de ganhar dinheiro. Dinheiro é um objetivo peculiar: embora o objetivo da sociedade – maximização do dinheiro, a realização deste objetivo não requer nenhuma mudança concreta no mundo. Isso está relacionado ao valor da flexibilidade.
A otimização é importante para as empresa virtuais, e a auto-programação está, novamente entrando nesse cenário.
A estabilidade completa a lista de valores que definem o padrão predominante nas sociedades virtual. Em nível governamental, a idéia manifesta-se na forma como os políticos reformularam a utilização de palavras como justiça e pás, por exemplo, substituindo-as pelo novo termo, estabilidade.

A Ética Virtual
Dentre os valores discutidos, a estabilidade é o que mais se aproxima dos valores éticos antigos. Entretanto, possui diferenças em relação aos outros valores em aspectos que demonstram perfeitamente as dificuldades encontradas pela ética na Era Virtual.
A lógica virtual requer constante otimização conectando e desconectando recursos conforme a necessidade, sendo que a única limitação é a necessidade de manter a rede estável.
Para relacionar essa lógica da exclusão dos grupos de trabalho alguns hackers defendem a formação de grupos de trabalho de inclusão como uma espécie de objetivo. O caso em tela é a instituição do hacker como o ponto central do desenvolvimento da Rede, a Sociedade da Internet. Sua ética é expressa pelo principio do “uso indiscriminado da Internet, independente de raça, cor, sexo, idioma, religião, etc.” A Sociedade da Internet defende a difusão da Rede e do ensino de habilidades em grupos a todos os que foram excluídos do desenvolvimento de empresa e governos.

A Ética dos Computadores
A aplicação da metáfora dos computadores aos seres humanos e à sociedade torna a ética real bastante difícil de ser aplicada. A otimização dos seres humanos e das empresas em termo de computadores leva à lógica da velocidade, fazendo com que a vida seja direcionada à sobrevivência, mas de uma forma diferente. Os objetivos perseguidos pelos pilotos de carro, ou seja, manter a estabilidade do carro para impedir que ele saia da pista. Mais uma vez, o ideal da estabilidade ameaça afastar as noções de ética.
A ética também exige uma perspectiva ao longo prazo: responsabilidade pelas conseqüências dos desenvolvimentos e capacidade de imaginar que o mundo esta se transformando em algo diferente.
Para se antecipar, os hackers tradicionalmente reservam algum tempo para experiências com idéias associadas a um futuro mais distante. Sabe-se que os hackers de computadores ficam à vontade no campo das pesquisas envolvendo o futuro e que muitos são fãs da ficção cientifica. Dessa forma não é de surpreender que um grupo de hackers tenha se juntador a Hillis pra fundar a Long Now Foundation, cujo objetivo é incentivar as perspectivas atuais.

Anonimidade

Ser anônimo na rede
Anonimidade na rede é algo muito discutido atualmente. Existe alguma maneira de ser
totalmente indetectável na Internet? Existe sim e é bem simples. Muitos programas e
ferramentas prometem tornar seu usuário invisível mas são pura enganação. O que você
precisa é de conhecimento, não de softwares. Um usuário pode conseguir passar em
computadores no Japão, Alemanha e Finlândia antes de atacar um site no Brasil. Aí que se
faz a fama dos “metidos a crackers”. Um cracker pega o seu notebook, vai a um telefone
público, utiliza uma conta roubada de internet, se conecta a cinco computadores pelo mundo
e utilizando-os conecta-se a um sistema de anonimidade. Após isso entra na página do FBI e
apaga alguns arquivos. Nunca, digo nunca realmente com muito ênfase, será pego. Todos os
bons crackers não são pegos, justamente pela facilidade de se esconder. Ou seja, não dependa
de ferramentas de rastreamento, nem da polícia, nem nada. Apenas com a segurança do seu
sistema. É a sua maior garantia.

Usando o anonymizer
O anonymizer é um dos muitos serviços gratuitos de anonimidade na net. Visitando a sua
homepage (www.anonymizer.com) ele possibilita que você digite algum endereço e seja
redirecionado para ele. Exemplo: eu digito www.felainternet.com.br na página do serviço e
ele me redirecionará para o provedor de Internet FELA, só que com o endereço IP do
anonymizer. Ou seja, se os administradores da página consultarem o log, não verão meu real
endereço. Em sua versão básica (gratuita) o serviço possibilita apenas que você abra páginas
HTTP. Ou seja, nada de FTP. Há ainda um serviço pago que pode ser conferido na página.
Último detalhe: não é possível utilizar um anonymizer para conectar-se a outro.

Proxys
O proxy, antigo conhecido de muitas pessoas que mexem com rede, possibilita uma ponte
entre um computador e um servidor. Para exemplificar melhor, imagine que você possui uma
rede local, mas somente um dos seus computadores têm placa fax-modem. Então você se
conecta por ele e utiliza um proxy para que o outro computador da rede faça uma ponte e
acesse a Internet pelo servidor. O endereço IP utilizado será do servidor. Acontece que
existem muitos proxys gratuitos na Internet. Brasileiros ou internacionais, eles possibilitam
que você navegue tranqüilamente e às vezes ficam até mais rápidos do que com a conexão
comum. O proxy também têm uma vantagem: você pode usar um proxy para entrar no
92
anonymizer (assim escondendo seu endereço IP duas vezes). Endereços gratuitos de proxy
podem ser encontrados na página www.cyberarmy.com.

Wingates
O Wingate parece muito com o proxy, mas sua aplicação é um pouco mais perigosa por
dois fatores. Primeiro: o wingate é acessado por telnet, então possibilita a conexão a qualquer
tipo de servidores, sejam telnet, ftp, smtp, pop, ou até algum trojan. Segundo: ao contrário do
anonymizer e do proxy que só pode ser usado uma vez, o wingate não têm limites. Você pode
conectar-se a um wingate chinês, depois utilizá-lo para entrar em um argentino e um italiano.
A cada conexão, você terá um novo endereço IP. Imagine o trabalho para algum
administrador descobrir quem invadiu o sistema. Terá que entrar em contato com a
autoridade de cada país e mesmo assim se ela quiser ajudar. É claro que a cada novo wingate
a conexão vai ficando mais lenta. Só é bom mesmo para quem possui uma conexão de alta
velocidade. Existem alguns scanners que procuram subnets por wingates. Alguns deles
podem ser pegos em ftp.technotronic.com. Para uma lista de wingates, visite o site
www.cyberarmy.com.

Remailers
O Remailer é muito parecido com os outros, mas é somente para se enviar e-mails
anonimamente. Com ele não é preciso utilizar um wingate para se conectar a um servidor
smtp, o próprio remailer já é um servidor anônimo. Mas por via das dúvidas, fique com o
bom e velho wingate pois ele é mais garantido. Antes de sair mandando bombas de e-mail,
saiba que esses serviços geralmente não conseguem manipular muitas mensagens em um
pequeno intervalo. Isso quer dizer que qualquer um que dê uma de esperto e queira inundar a
caixa de e-mails de outra pessoa com centenas de e-mails provavelmente vai ter o seu
endereço IP real revelado.

Shells
Esse é realmente uma mão na roda. Uma vez alguém disse “O bom cracker não é o que
consegue utilizar bem um sistema Unix e invadir uma rede. É o que utiliza Windows e
consegue o mesmo resultado”. Isso é uma verdade. Afinal, o Unix e o Linux podem até ser
mais complicadinhos de se usar mas existem centenas de ótimas ferramentas para eles. É só
pensar que quase todos os exploits disponíveis na Internet hoje são códigod-fonte em C. Já o
Windows não possui tantos recursos assim, o que torna mais difícil alguma invasão usando
esse sistema. Para facilitar existem os shells, máquinas utilizando serviços Unix na Internet
que possibilitam que você se conecte nelas por telnet e ftp e as utilize como se fossem locais.
Execute programas, compile códigos-fonte, utilize o bom e velho VI, use o sendmail e tudo o
mais. Para uma lista de shells consulte a página www.cyberarmy.com ou cadastre-se no
endereço http://cyberspace.org/.

Outdials
Citarei esse método mais como estudo pois ele é bem difícil de ser feito. O Outdial
consiste em se conectar via telnet em algum sistema que possibilite conexão via modem.
Deixe-me explicar melhor: você quer invadir um sistema nos EUA. Não têm dinheiro para se
conectar diretamente (e pagar caro, apesar da prograganda das operadoras), então procura um
outdial, se conecta via telnet e indica o telefone do sistema a ser invadido. O computador que
roda o outdial discará e você conectará no sistema sem pagar absolutamente nada. O
problema é encontrar outdials hoje em dia. Não vai adiantar muito mas se quiser obter uma
lista antiga de outdials, pegue o FAQ da 2600 em www.2600.com.

IP Spoof
A técnica mais antiga e devastadora de invasão de computadores. Trabalha a nível de
protocolo, abaixo da camada dos aplicativos. É como o trojan de ponte, mas bem mais eficaz.
No caso do trojan por exemplo, uma máquina era Windows, o que facilitou a sua instalação.
Mas e uma rede que só existam máquinas Unix, mesmo assim fortemente seguras? Vamos
supor que queremos invadir uma rede militar qualquer com 1000 computadores. O servidor
central aonde ficam os dados confidenciais só se comunica com mais dois computadores,
assim evitando o perigo de acesso pela Internet.
Ora, o erro está aí. Apesar de se comunicar só com duas máquinas, elas têm acesso à rede
externa. Existe então uma relação de confiança entre esses computadores e o servidor. Aí que
entra o IP SPOOF. Ele consiste em estudar com um sniffer as sequencias numéricas do
cabeçalho ip que é enviado à maquina alvo. Supondo que a máquina alvo seja A (a que
queremos invadir) e a que têm relação de confiança com ela seja B. Após aprender a
sequência correta, inundamos a máquina B com pacotes syn malformados (criando um denial
of service para “amordaçá-la”). Então criamos um pacote IP com cabeçalho falso, fingindo
ser a máquina B ( que não pode falar tadinha). Além disso, existem dois tipos de IP SPOOF.

Non-blind spoof
Esse spoof é realizado dentro da própria subnet em que se encontra o atacante. Ele é um
spoof “não cego” pois permite que o atacante receba (usando um sniffer) a resposta da
máquina A para a B após nosso ataque. Supondo que enviamos o comando:
<> >> /etc/rhosts
Esse é um comando para que o computador alvo passe a nos considerar “de confiança” ,
cedendo-nos espaço para quando fizermos um rlogin. Mas como saber se o comando
funcionou? Com o non-blind spoof isso é possível