Guia de Referência
Rápida Segurança
   Inter-Redes




   Felipe Pereira da Silva


           2010
Dedicatória




               Primeiramente a Deus,
       fonte de todas as minhas
       inspirações e a minha família,...
Índice


Introdução.............................................................................1
Importância da Segurança...
Prefácio

       Não pretendo neste livro encerrar todos os assuntos de
segurança nem mesmo os detalhados ao longo deste. ...
Guia de Referência Rápida – Segurança Inter-Redes                    1
       1. Introdução

       É apresentado um conju...
Guia de Referência Rápida – Segurança Inter-Redes          2
   2. Importância da Segurança da Informação

        Uma que...
Guia de Referência Rápida – Segurança Inter-Redes           3
        Com o advento da internet, diversos benefícios surgi...
Guia de Referência Rápida – Segurança Inter-Redes      4
financeira, por ser considerado um elemento de valor para um
indi...
Guia de Referência Rápida – Segurança Inter-Redes                   5




Figura 1.0 – Onipresença da Informação nos princ...
Guia de Referência Rápida – Segurança Inter-Redes         6
representa o que conhecemos a respeito de ameaças e
vulnerabil...
Guia de Referência Rápida – Segurança Inter-Redes               7
    3. Filtro de Pacotes

        Permitem-nos controlar...
Guia de Referência Rápida – Segurança Inter-Redes           8
instalar e esperar que ele faça as coisas por você, é necess...
Guia de Referência Rápida – Segurança Inter-Redes                  9
    4. Proxy

       É utilizado no controle de acess...
Guia de Referência Rápida – Segurança Inter-Redes            1
implementação será agilizar o acesso a sites na WEB, por
ex...
Guia de Referência Rápida – Segurança Inter-Redes                     1
que desempenham esta função, alguns são proprietár...
Guia de Referência Rápida – Segurança Inter-Redes            1
Squid-cache encaminhará a requisição ao Dansguardian que
fi...
Guia de Referência Rápida – Segurança Inter-Redes                    1
          Talvez este represente o grande “triunfo”...
Guia de Referência Rápida – Segurança Inter-Redes                        1
       instalar, fique à vontade.
# apt-get ins...
Guia de Referência Rápida – Segurança Inter-Redes                       1
   os procedimentos abaixo poderiam ser executad...
Guia de Referência Rápida – Segurança Inter-Redes                         1
         negado o acesso discriminado em uma a...
Guia de Referência Rápida – Segurança Inter-Redes           1
       E assim termina mais este checklist. Vale dizer que o...
Guia de Referência Rápida – Segurança Inter-Redes          1
   2. IDS

        Analisando os aspectos Segurança da Inform...
Guia de Referência Rápida – Segurança Inter-Redes            1
                       4. Não intrusiva e anômala (falso
  ...
Guia de Referência Rápida – Segurança Inter-Redes                     2
              Sempre que possível, a utilização do...
Guia de Referência Rápida – Segurança Inter-Redes                        2
       instalar, fique à vontade.
#     apt-get...
Guia de Referência Rápida – Segurança Inter-Redes                     2
       para criar as tabelas necessárias ao snort ...
Guia de Referência Rápida – Segurança Inter-Redes                       2
       arquivo. No caso do “vi” isso é feito pre...
Guia de Referência Rápida – Segurança Inter-Redes                     2
$DBlib_path = "/var/www/acid/adodb";

$alert_dbnam...
Guia de Referência Rápida – Segurança Inter-Redes                2




Figura 5.1: Página WEB de setup do acid.
    o Agor...
Guia de Referência Rápida – Segurança Inter-Redes                       2
    o   Repare nos indicativos de sucesso:
     ...
Guia de Referência Rápida – Segurança Inter-Redes           2
   3. Honeypot

        Segundo a nossa série de comentários...
Guia de Referência Rápida – Segurança Inter-Redes           2
Honeynet.BR. Recomendo o acesso ao site www.honeynet.org.br
...
Guia de Referência Rápida – Segurança Inter-Redes                      2
        Será abstraída a forma em que você irá po...
Guia de Referência Rápida – Segurança Inter-Redes                     3




Figura 6.0: resultado do netstat com o portsen...
Guia de Referência Rápida – Segurança Inter-Redes                     3
 IDS. Não irei abordar muito sobre isso. A apenas ...
Guia de Referência Rápida – Segurança Inter-Redes         3
    4. SMTP-Relay

       Também conhecido como Gateway de E-m...
Guia de Referência Rápida – Segurança Inter-Redes         3
            –  3º Caso a mensagem não seja para uma conta no
 ...
Guia de Referência Rápida – Segurança Inter-Redes                 3
mail, além da sua característica intrínseca na utiliza...
Guia de Referência Rápida – Segurança Inter-Redes                     3
    # cd /usr/local/src/
       o   Acessando um d...
Guia de Referência Rápida – Segurança Inter-Redes                           3
   o     Acessando o diretório gerado “ucspi...
Guia de Referência Rápida – Segurança Inter-Redes                    3
# cd /usr/local/src/
     o   Acessando o diretório...
Guia de Referência Rápida – Segurança Inter-Redes                      3
     o    Checando as dependências para compilar ...
Guia de Referência Rápida – Segurança Inter-Redes                            3
   o Coloque o conteúdo acima nele. Altere ...
Guia de Referência Rápida – Segurança Inter-Redes                        4
/var/log/qmail/smtpd/
   o   Coloque este conte...
Guia de Referência Rápida – Segurança Inter-Redes       4
stop)
  echo "Stopping qmail..."
  echo " qmail-smtpd"
  svc -d ...
Guia de Referência Rápida – Segurança Inter-Redes                       4
    echo "* Restarting qmail-smtpd."
    svc -u ...
Guia de Referência Rápida – Segurança Inter-Redes                         4
   o     Os parâmentros são utilizados para: “...
Guia de Referência Rápida – Segurança Inter-Redes                      4
   o     Acessando o diretório que contém os todo...
Guia de Referência Rápida – Segurança Inter-Redes                    4
    o    Acessando o diretório “simscan-1.3.1
#./co...
Guia de Referência Rápida – Segurança Inter-Redes                     4
    o Iniciando o simscan.
 # rm -f /var/qmail/con...
Guia de Referência Rápida – Segurança Inter-Redes           4
   5. Considerações Finais

        Por questões de objetivi...
Guia de Referência Rápida – Segurança Inter-Redes     4
        Termino este livro aqui, agradecendo pela leitura e
solici...
Guia de Referência Rápida – Segurança Inter-Redes   4
   6. Referências

ABNT NBR ISO/IEC 17799
2005
ABNT – Associação Bra...
Segurança Inter-redes
Segurança Inter-redes
Upcoming SlideShare
Loading in …5
×

Segurança Inter-redes

2,927 views

Published on

Guia de Referência Rápida
Segurança Inter-Redes

Published in: Education, Business, Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,927
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
212
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Segurança Inter-redes

  1. 1. Guia de Referência Rápida Segurança Inter-Redes Felipe Pereira da Silva 2010
  2. 2. Dedicatória Primeiramente a Deus, fonte de todas as minhas inspirações e a minha família, alicerce e apoio de minha vida. Agradecimento A minha esposa Patrícia pelo apoio para realização desta obra e ao meu amigo Renato pelas correções técnicas.
  3. 3. Índice Introdução.............................................................................1 Importância da Segurança da Informação............................2 Filtro de Pacotes...................................................................7 Proxy....................................................................................9 IDS........................................................................................18 Honeypot..............................................................................27 SMTP-Relay.........................................................................32 Considerações Finais............................................................47 Referências...........................................................................49
  4. 4. Prefácio Não pretendo neste livro encerrar todos os assuntos de segurança nem mesmo os detalhados ao longo deste. Para qualquer profissional de Segurança da Informação a leitura e aprendizado constante são indispensáveis. Assim sendo, não encare esta obra como uma fonte final de pesquisa. Recomendo que leia todo o livro e não se preocupe em decorar nada, nem mesmo os procedimentos extremamente técnicos contidos nos checklists. Conforme for fazendo uso destes recursos você verá que irá absorver todos esses e mais outros conhecimentos naturalmente. Na leitura dos checklists haverá sempre uma linha indicando um comando, uma tag ou mesmo um procedimento, e na linha imediatamente abaixo dessa estará a explicação da linha passada. Espero que o livro esteja condizente com suas expectativas. Boa leitura!
  5. 5. Guia de Referência Rápida – Segurança Inter-Redes 1 1. Introdução É apresentado um conjunto de informações acerca da importância da segurança da informação que já há algum tempo se tornou um processo indispensável para a manutenção do funcionamento das empresas. Este livro foi escrito para servir de guia na implementação de mecanismos de segurança em redes de computadores, fornecendo um conjunto de soluções que tem como finalidade a proteção de um perímetro de rede. Devido à diversidade de perímetros possíveis, que não se resume apenas a topologia da rede, será sempre abstraído este fator, que na maioria das vezes apenas determinará o posicionamento do mecanismo de segurança na rede. Atendendo ao quesito objetividade, tenho como foco apresentar informações diretas e úteis colocando, ao final de cada capítulo1, que apresenta algum mecanismo de segurança em rede de computadores, um checklist com o passo a passo necessário para instalação de uma solução sobre o mecanismo estudado no capítulo. 1 Com a única exceção do capítulo que aborda o tema: Filtro de pacotes.
  6. 6. Guia de Referência Rápida – Segurança Inter-Redes 2 2. Importância da Segurança da Informação Uma questão que vem sendo bastante questionada hoje em dia é a globalização. Cada vez mais as empresas procuram a expansão de seus negócios a fim de se tornar mais competitiva no mercado e consequentemente aumentarem seus faturamentos. Com a Internet as longas distâncias que antes eram fatores que implicavam em investimentos grandiosos e muitas vezes arriscados simplesmente deixaram de existir, com a possibilidade de acesso quase que instantâneo as mais diversas regiões do globo terrestre. Eu me arriscaria ainda a dizer que os sólidos desenvolvimentos da Telemática foi o principal fator que permitiu que a globalização ocorresse de forma tão rápida e abrangente, uma vez que é aberto o leque de empresas que antes não tinham condições de fazer um investimento tão alto para poder ter acesso aos mercados internacionais. Não quero dizer com isso que a globalização não ocorreria se não fosse a Telemática, pois com certeza ocorreria mas não da forma a qual é hoje. Existe uma frase que diz: “Aonde o dinheiro vai o ladrão vai atrás”. Infelizmente tenho que concordar com isso. Os interesses “obscuros” em relação à internet e aos sistemas de computação como um todo, vêm crescendo cada vez mais, impactando em perdas muitas vezes inestimáveis para as empresas que contrariamente utilizam os recursos computacionais para expansão de seus negócios ou simplesmente como uma ferramenta de trabalho. Por esses e outros fatores, a preocupação com Segurança da Informação está se tornando cada vez mais intensa nas organizações, tendo em vista que seus ativos ficaram muito mais expostos à medida que acompanharam o crescimento tecnológico com o propósito de atender as exigências que o próprio mercado impõe, tornando-se assim uma absoluta necessidade e não mais uma opção. Consequentemente pela grande visibilidade que ganharam essas operações, diversas ameaças objetivaram a descoberta e exploração de vulnerabilidades, onde muitas até então eram desconhecidas.
  7. 7. Guia de Referência Rápida – Segurança Inter-Redes 3 Com o advento da internet, diversos benefícios surgiram, permitindo maior comodidade e flexibilidade tanto para o comerciante quanto para o consumidor, uma vez que se desejado foi dispensado a necessidade da presença física para compra de um determinado produto. Por exemplo: uma pessoa pode acessar um site de e-commerce e realizar a compra do produto desejado, sem a necessidade de saber onde é que está a localização física da loja (até mesmo porque, pode ser que nem exista uma estrutura física, apenas a virtual, como no tipo de comercialização C2C – consumidor para consumidor) e sem o trabalho de sair do local onde se encontra. Por sua vez a empresa irá receber o pedido e realizar a entrega. Todas as informações de uma transação como essa, podem ser transmitidas em tempo real. Para tanto, uma enorme e complexa estrutura de comunicação estará presente permitindo que os sinais possam trafegar e chegar aos seus devidos destinatários. Acrescento que no processo de segurança, é necessário saber como ponderar os diversos fatores que podem influenciar no meio que permite a troca de informações do negócio, com o intuito de se conseguir a solução de segurança adequada. Analisando ainda o exemplo citado, observa-se que tudo que permite a tal comercialização é a informação, pois é ela que indica o produto (senão é o próprio), informa se existe o produto, o recebimento, o pagamento e por fim, se o produto foi entregue ou não. Se em qualquer momento, ou processo, a informação for de alguma forma comprometida, ocorrerá um impacto no funcionamento do negócio, impacto este que é maléfico. Por exemplo: se após o produto tiver sido entregue, o estoque continuar indicando que este ainda não foi, será reenviado um outro produto. Basta imaginar isso ocorrendo com 100 clientes e duas vezes com cada um, o impacto pode fazer com que o negócio seja totalmente interrompido. Nota-se, portanto, que a informação passou a ser o ativo de maior importância em uma organização, uma vez que a sua correta proteção tornou-se indispensável para o negócio. “O termo ativo possui esta denominação, oriunda da área
  8. 8. Guia de Referência Rápida – Segurança Inter-Redes 4 financeira, por ser considerado um elemento de valor para um indivíduo ou organização...” (Sêmola, 2003, p.45). A norma de ISO/IEC 27001(2005) informa que as empresas necessitam identificar e administrar muitas atividades para funcionar efetivamente, com o propósito de definir um mapeamento dos processos existentes, Sêmola (2003) completa dizendo que as empresas sofrem a todo momento as interferências externas e internas nos processos de negócio. Experiências, conceitos, modelos e métodos surgem a cada instante, incentivado pelo desbravamento de novos horizontes nas barreiras do conhecimento. Importante notar que essas mudanças não se limitam apenas à área tecnológica, mas também na área de pessoas, físicas e ambientais. Em todos esses processos de mudanças, a informação sempre está presente, desempenhando um papel fundamental independente do segmento de mercado, de seu core business2 e porte. Conforme a figura 1.0, a informação está presente nos principais processos do negócio. Estão em todos os setores, além de ser elas próprias os modelos de negócio, tomada de decisão, diferencial de mercado e em muitos casos o próprio produto de comercialização. Também fica evidente notar que a informação não se restringe apenas a uma área da organização, estando presente em todas, sendo, portanto necessário que a sua proteção não seja aplicada somente na área de tecnologia, porque se assim fosse, conforme Sêmola ter-se-á a aplicação da segurança tecnológica e não da informação. 2 O núcleo do negócio da empresa.
  9. 9. Guia de Referência Rápida – Segurança Inter-Redes 5 Figura 1.0 – Onipresença da Informação nos principais Processos de Negócio. (Sêmola, 2003, p. 2) Cada vez mais se faz necessário a implementação de um processo de Segurança da Informação para as organizações tornando-se inclusive um diferencial de mercado, uma vez que diversos benefícios surgem a partir do momento em que foi garantido a confidencialidade, integridade, disponibilidade, autenticidade e legalidade, do ativo de maior valor, a informação. Pode-se fazer analogia da Segurança como um iceberg, Figura 1.1 - Iceberg conforme ilustra a figura 1.1. Geralmente, o que vemos em um iceberg é a parte de cima da água, que representa 1/5 de seu tamanho real. Assim é a Segurança, esta parte que podemos ver
  10. 10. Guia de Referência Rápida – Segurança Inter-Redes 6 representa o que conhecemos a respeito de ameaças e vulnerabilidades. Para tanto, é necessário a definição de um sistema de gerenciamento da segurança, a fim de permitir a continuidade com maestria. O processo de segurança, que como o próprio nome diz, trata-se de um processo, não tem fim porque a todo o momento haverá mudanças nos contextos humanos, tecnológicos, ambientais, físicos e estruturais, diferentemente de um projeto que tem início, meio e fim bem definidos. No entanto, muitas organizações ainda negligenciam a necessidade de segurança da informação em seus processos de negócio, muitas vezes por razões falsas que não representam a sua realidade, tais como: um gasto excessivo, despesa em vão, contra o bem estar dos funcionários, etc. Esta visão fechada aponta para modelos de segurança da informação mal aplicados e mesmo, mal estruturados, fazendo com que não haja o retorno sobre o investimento (ROI). Dawel (2005) ainda complementa dizendo que na maior parte das empresas há uma grande desinformação por parte da alta direção em relação ao tema. Segundo o site IDG Now, citado por Alves (2006), os 10 maiores códigos maliciosos (malware3) de todos os tempos geraram um custo de perdas de algo em torno 72 bilhões de dólares. Pode-se observar que se houvessem planos de segurança aplicados de forma correta, não teria ocorrido prejuízos catastróficos como esses. A Segurança da Informação deve ser aplicada de acordo com o core business da empresa, ponderando todos os elementos envolvidos e aplicando a medida ideal para proteção dos ativos da empresa em específico, ou seja, para cada unidade de negócio uma necessidade diferente, sendo, portanto, necessário que com base nos processos da organização o ambiente, as pessoas e o plano de negócio, o melhor modelo seja elaborado de tal forma que seja justificado como sendo a melhor medida para aquela situação e que garanta o melhor ROI. 3 Softwares maliciosos
  11. 11. Guia de Referência Rápida – Segurança Inter-Redes 7 3. Filtro de Pacotes Permitem-nos controlar o acesso à rede de computador por meio de endereços, portas, protocolos, flags e status. O objetivo da utilização de um Filtro de Pacotes é definir de forma clara e direta os acessos que serão permitidos e os que serão negados dentro das redes nas quais estarão sob o controle deste mecanismo. A figura 3.0 mostra uma topologia de rede com um possível posicionamento de dois destes mecanismos juntos. Figura 3.0 – Topologia com a presença de dois filtros de pacotes. Em uma definição razoável do Filtro de Pacotes para controle de acesso teríamos pelo menos: endereço de origem, endereço de destino, porta de origem e porta de destino. Se for necessário envolver portas de serviços, nos remete saber anteriormente o protocolo. Muitas vezes o Filtro de Pacotes é chamado de Firewall e de fato é, quando este for o único mecanismo de segurança que esteja protegendo pelo menos duas redes. Segundo a norma de segurança NBR ISO/IEC 17799 Firewall é um sistema ou combinação de sistemas que controla a fronteira entre duas ou mais redes. Assim sendo, será abordado neste livro o conceito mais correto de Firewall que nem sempre se resume apenas a um filtro de pacotes, tudo dependerá do contexto. Um bom exemplo de filtro de pacotes é o iptables, que além de ser open source, tem a vantagem de ser modularizável. Funções podem ser adicionadas ao mecanismo ampliando as possibilidades oferecidas. Assim como a grande maioria dos mecanismos de segurança, o iptables não funciona de forma automática, não basta
  12. 12. Guia de Referência Rápida – Segurança Inter-Redes 8 instalar e esperar que ele faça as coisas por você, é necessário a criação de regras que serão responsáveis pela filtragem dos pacotes.
  13. 13. Guia de Referência Rápida – Segurança Inter-Redes 9 4. Proxy É utilizado no controle de acesso geralmente entre duas redes distintas. Comumente filtra os acessos relacionados a Internet, no entanto, este mecanismo pode ser utilizado de forma mais abrangente. Por conseqüência da variedade enorme de informações que existem na Internet muitas empresas questionam a sua eficiência no ambiente de trabalho em relação ao uso por seus funcionários. A presença deste mecanismo objetiva, dentre outras características, justamente permitir o controle da utilização deste meio além do aspecto relacionado ao desempenho da rede que pode ser melhorado substancialmente se utilizado com cache. Importante entender que o Proxy não substitui o Filtro de Pacotes, cada um atua de forma própria. Na figura 4.0 pode-se observar uma topologia de rede com a possível localização do Proxy. Figura 4.0 – Topologia de rede com a presença de um proxy. Veja que em momento algum as funções dos Filtros de Pacotes foram substituídas. Embora exista outra categoria de Proxy, a de circuito, não iremos entrar no mérito deste assunto, tendo em vista a nossa objetividade e pelo fato de que o mais utilizado é o Proxy de Aplicação ou como também é conhecido Proxy HTTP4. Além da possibilidade de controle de acesso é possível associar um cache ao Proxy, no entanto, isso não é um elemento obrigatório no funcionamento deste mecanismo. Com a sua 4 Embora seja por muitas vezes chamado dessa forma, um Proxy de Aplicação não necessariamente limita-se ao protocolo HTTP para controle de acesso.
  14. 14. Guia de Referência Rápida – Segurança Inter-Redes 1 implementação será agilizar o acesso a sites na WEB, por exemplo. Figura 4.1 – Topologia com um Proxy cache. Para utilizar diversos serviços na Internet é feito o uso do DNS que por sua vez irá se encarregar de realizar as resoluções de nome em endereços de rede. Para simplificar, a princípio abstrairemos este serviço e focaremos no funcionamento do Proxy propriamente dito. Veja na figura 4.1 como que funcionaria este mecanismo com cache. Conforme a numeração ilustrada na figura 4.1, primeiramente um cliente tenta acessar um site; este acesso será requisitado ao Proxy, que por sua vez verificará em seu cache se a página solicita já está armazenada, caso não esteja, o Proxy acessará a página na Internet e posteriormente armazenará em seu cache para finalmente exibir a página para o cliente. Este processo pode parecer lento, no entanto, é costuma ser bem rápido e com uma grande vantagem: essa aparente lentidão só ocorrerá no primeiro acesso àquela página na Internet, porque uma vez que a página está armazenada em cache, quando o mesmo ou um outro cliente solicitar a essa página não será executado os passos 4 e 5 observados na figura 4.1, apenas eventualmente para atualização de conteúdo, o que economizará de forma grandiosa o tráfego da rede. Como o nosso intuito é mostrar como controlar o acesso a Internet por meio deste mecanismo, e por se tratar de um mecanismo que controla um serviço muitas vezes crítico para empresa, é necessário a escolha correta acerca do Software que será o nosso Proxy-cache. Atualmente existem diversos Softwares
  15. 15. Guia de Referência Rápida – Segurança Inter-Redes 1 que desempenham esta função, alguns são proprietários5 e outros gratuitos. Vale dizer que particularmente prefiro de longe o Squid- cache o qual considero o melhor Proxy-cache que existe. Além ser gratuito é Open Source, o que possibilita a manipulação de seu código fonte. Recomendo que interrompa a leitura deste livro por um momento e acesse o site www.squid-cache.org que contém informações sobre este Software. Devido algumas limitações existentes no Squid-cache como, por exemplo: para carregar grandes listas de bloqueio, é possível fazer com que ele interaja com algum outro software que permita a flexibilidade desejada. Um exemplo de software que pode trabalhar com o Squid-cache é o Dansguardian. Vejamos a seguir, um pouco do ambiente que resultaria com a utilização destes dois softwares citados trabalhando juntos. A interação dos dois softwares ocorre conforme mostra a figura 4.2. Resquisição Dansguardian Resposta Usuários Requisição Internet Squid Resposta Figura 4.2 – Funcionamento do Squid com o Dansguardian. Os usuários tentam acessar uma página WEB fazendo suas requisições diretamente ao Dansguardian, que por sua vez irá verificar se esta página não estar na lista de sites bloqueados. Se estiver bloqueado o acesso não é nem feito, economizando largura de banda. O próprio Dansguardian exibirá uma mensagem de erro indicando o motivo, que no caso será de acesso negado. Caso a página não esteja na lista dos sites bloqueados e o endereço do solicitante tenha permissão para acesso, a requisição é encaminhada ao Squid-cache que verifica se o conteúdo da página já existe em seu cache; caso esteja, retornará ao Dansguardian. Se não estiver, o acesso à página WEB será realizado, sendo que o 5 Entende-se aqui como sendo Softwares Proprietários aqueles que necessitam o pagamento para liberação de uma licença de uso.
  16. 16. Guia de Referência Rápida – Segurança Inter-Redes 1 Squid-cache encaminhará a requisição ao Dansguardian que finalmente retorna ao usuário. Embora o processo possa parecer lento, estes dois softwares funcionam de forma muito “harmoniosa”. Além do mais, com cache os acessos ficam substancialmente mais rápidos. Sob o ponto de vista do negócio da empresa, as vantagens na utilização do Proxy-cache são:  Rapidez no acesso a Internet: Uma vez que os caches são criados conforme a utilização do serviço, os próximos acessos serão agilizados. Imagine uma rede com 100 computadores. Em dada circunstância, foi necessário baixar e instalar um novo pacote com arquivos diversos que tem um tamanho total de 50 MB. Se todas as máquinas fossem acessar diretamente a Internet, seria algo bastante demorado. No entanto, com este mecanismo, apenas a primeira requisição da primeira máquina sofrerá lentidão no processo normal. Após isso será feito o cache e quando todas as outras 99 máquinas forem fazer o download, este será rapidamente realizado, porque não haverá necessidade de interação com a Internet, já que os arquivos estão em cache e a entrega será imediata.  Transparência/Controlado: Possibilidade de atuar de forma que os usuários não necessitem saber que estão sendo controlados – Transparência, e o inverso também, exigindo do usuário um login e senha previamente cadastrada para determinar o perfil de acesso que este terá em relação ao acesso aos recursos da Internet – Controlado.  Simplicidade: É um mecanismo de implementação simples e rápida, desde que, é claro, se tenha um prévio conhecimento. A manutenção não é diferente, costuma também ser bastante simples e rápida.  Controle de acesso:
  17. 17. Guia de Referência Rápida – Segurança Inter-Redes 1 Talvez este represente o grande “triunfo” do Proxy, uma vez que é possível controlar o acesso de todos os computadores presentes na rede, definindo assim, o tipo de conteúdo que pode ser acessado na Internet. Basicamente existem oito formas de bloqueio ou liberação por meio do Squid-cache, a seguir:  URL i. Exemplo: http://www.empresa.com/Intro/ajuda.php  Domínio i. Exemplo: www.empresa.com.br  Palavra i. Exemplo: bate-papo  Extensão de arquivos i. Exemplo: .mp3  Aplicativos i. Exemplo: MSN  Endereços IP i. Exemplo: 10.1.0.3  Endereços MAC i. Exemplo: 00-AA-00-62-C6-09  Horário i. Exemplo: 12:00-14:00 Checklist de Instalação do Squid Em uma máquina com a distribuição Debian instalada e como acesso de root, seguem-se os passos comentados: # apt-get install vi o Embora na própria instalação do Debian por padrão já vem instalado o vi, este vem em uma forma “seca”, sem alguns recursos que permitem facilidade na edição de texto. Com a instalação do vi é criado um alias e assim podemos utilizar os mesmos recursos do vim que é um outro pacote igual ao vi só que com essas facilidades na edição de texto. Este é um passo opcional, caso não queira
  18. 18. Guia de Referência Rápida – Segurança Inter-Redes 1 instalar, fique à vontade. # apt-get install squid o Executa a instalação do squid. # apt-get install bind9 o Embora não seja obrigatório, recomendo que instale o bind, que é um servidor de DNS, que neste caso irá apenas desempenhar a função de cache nas resoluções de nomes. Isso melhora bastante o tempo de resposta do squid. # apt-get install sarg o Um outro pacote muito interessante é o sarg, que é um analisador de LOGs do squid. Essa ferramenta ilustra em uma página WEB os acessos registrados pelo squid. Também não é uma ferramenta obrigatória, mas sim recomendada para poder obter relatórios em HTML dos acessos realizados por meio do squid. # cd /etc/squid o Acessa o diretório onde o squid foi instalado. # cp squid.conf squid.conf.default o O squid.conf é o arquivo de configuração do squid, portanto, recomendo que se faça uma cópia de segurança deste arquivo, já que iremos executar diversas operações nele. # cat squid.conf.default | grep ^ > squid.conf o Limpa o squid.conf deixando a maioria das linhas que iremos necessitar. # vi squid.conf o Feito isso, vamos agora para configuração do squid.conf. Irei utilizar aqui o editor de texto vi, mas caso deseje algum outro de sua preferência, fique à vontade. http_port 3128 192.168.0.1 transparent o Na primeira linha, temos que configurar a porta, o endereço IP e o modo no qual o squid irá trabalhar. De acordo com o exemplo ao lado, “http_port” é a tag da sintaxe do squid.conf visible_hostname proxy o No final do arquivo squid.conf acrescente uma linha com o conteúdo ao lado. Onde “proxy” é o nome da máquina, altere de acordo com seu cenário. Feito isso o squid já estará funcionando, no entanto, já que um dos nossos objetivos neste checklist é controlar o acesso à Internet feita pelos nossos usuários da rede interna, é necessário a criação de acl (Access Control List) onde iremos determinar quem pode e quem não pode acessar sites por nós especificados. A partir deste ponto então, não estamos mais dando continuidade ao checklist, mas sim a explicações sobre as formas de utilização das acls do Squid. Portanto, vale dizer que
  19. 19. Guia de Referência Rápida – Segurança Inter-Redes 1 os procedimentos abaixo poderiam ser executados em ordem aleatória e também com a omissão de algumas acls, desde que se tenha certo conhecimento sobre as operações realizadas. O funcionamento é simples. O squid irá receber uma requisição de acesso à WEB e irá começar a leitura das tags “http_access” quando encontrar uma que se encaixe na requisição, ele para de ler as demais. Mãos a obra! acl rede_interna src “192.168.0.0/24” o Uma acl com o conteúdo da nossa classe de IP da rede que poderá utilizar o proxy. acl sites_bloqueados url_regex -i “www.empresa.com.br/musica” o Criação de uma acl de url cujo conteúdo é uma parte de um site “www.empresa.com.br/musica”. O parâmetro “i” é utilizado para tratar tudo como letras minúsculas, ou seja, não ser case-sensitive. Nas versões mais recentes do Squid não se faz mais necessário este parâmetro, uma vez que já está vindo com esta opção intrinsecamente. acl domínio_bloqueados dst_domain -i “teste.com.br” o Uma acl de domínio cujo conteúdo é um domínio. Repare que aqui será bloqueado todo domínio enquanto que na acl de url é bloqueado apenas parte de um domínio. O parâmetro “i” é utilizado para tratar tudo como letras minúsculas, ou seja, não ser case- sensitive. acl extensoes_bloqueadas url_regex -i “.exe” o Acima temos uma acl do tipo extensões, cujo conteúdo é uma extensão. Repare que é o mesmo tipo utilizado na acl de url. Isso é porque a forma de tratamento é a mesma, ou seja, o squid irá bloquear o tráfego de extensões de acordo com a url que, no caso de um download, esta conterá a extensão do arquivo, geralmente no final. Merecedor de uma ressalva é que o squid não é muito eficiente neste trabalho, porque caso algum usuário faça o download de algum arquivo .exe, por exemplo, mas este esteja com o nome da extensão alterada para .eee, por exemplo, o squid não será capaz de fazer essa detecção. Se necessitar que este recurso seja utilizado com eficiência, considere a utilização do dansguardian para trabalhar junto com o squid. acl pc_acesso_livre src “192.168.0.10” o Agora que já criamos as acls que iremos utilizar para este exemplo, vamos aplicar essas acls, ou seja, fazer valer, porque até o presente instante embora estas existam, elas não funcionaram pois dependem da chamada na tag “http_access” que irá dizer se será permitido ou
  20. 20. Guia de Referência Rápida – Segurança Inter-Redes 1 negado o acesso discriminado em uma acls ou mesmo na política padrão. http_access allow pc_acesso_livre o Nesta tag está sendo atribuído acesso livre ao computador possuidor do endereço IP que está na acl “pc_acesso_livre”. http_access deny sites_bloqueados o Aqui, está sendo bloqueado o acesso ao site que está na acl “sites_bloqueados”. http_access deny domínio_bloqueados o Agora os acessos ao domínio que está na acl “domínio_bloqueados” será negado. http_access deny extenssoes_bloqueadas o Bloqueia a extensão que está na acl “extenssoes_bloqueadas”. http_access allow rede_interna o Toda requisição que não se enquadrar em nenhuma das tags descritas acima desta, desde que seja da rede interna, terá o acesso permitido. Repare que caso algum computador não esteja na faixa de IPs da acl “rede_interna” não terá acesso permitido, salvo se estiver na acl “pc_acesso_livre”. o Após a execução dessas configurações, basta salvar e sair do arquivo. No caso do “vi” isso é feito pressionando a tecla < ESC > e em seguinda “:wq” # /etc/init.d/squid restart o Reiniciando o squid. o A partir deste momento o squid está pronto para ser utilizado como um proxy transparente em sua rede. O leitor deve estar se perguntando: e se eu quiser bloquear vários sites, tenho que criar uma acl para cada site? Para seu conforto a resposta é não. Na acl utilizadas você pode ao invés de informar um site, informar o caminho de um arquivo salvo no disco que contém uma lista de sites que irão fazer parte da mesma acl. Por exemplo: Na linha que contém: “acl sites_bloqueados url_regex -i “www.empresa.com.br/musica” Poderíamos substituir para: acl sites_bloqueados url_regex -i “/etc/squid/lista/sistes_bloqueado” Daí no arquivo “/etc/squid/lista/sistes_bloqueado” colocaremos todos os sites que quisermos bloquear. Da mesma forma pode-se utilizar nos demais tipos (domínio, extensão e endereço IP) de acls utilizadas.
  21. 21. Guia de Referência Rápida – Segurança Inter-Redes 1 E assim termina mais este checklist. Vale dizer que o squid tem mais algumas acls que não foram tratadas por fugir do nosso objetivo, mas deixo por conta do leitor o desbravamento deste conhecimento.
  22. 22. Guia de Referência Rápida – Segurança Inter-Redes 1 2. IDS Analisando os aspectos Segurança da Informação, pode-se observar a necessidade de atuação em três camadas: Prevenção, Detecção e Reação. Na verdade, se analisarmos bem, as três posturas não são eficientes separadamente, mas quando em conjunto sim, retorna um resultado bastante satisfatório. Este capítulo consiste em mostrar um mecanismo de Segurança que atua na segunda fase (Detecção), conforme a seqüência disposta acima. Este é o IDS atuará na rede capturando todo pacote que por ela trafega. Ao contrário do que muitos pensam o IDS não tem funcionalidade se for colocado na somente na DMZ, pois tudo dependerá do contexto em que deseja detectar ataques ou mesmo tentativas de ataques. Portanto caso queira analisar intrusões ou possíveis intrusões, em uma rede local, o IDS deverá ficar logicamente na rede interna. Caso queira tal análise na DMZ, ele deve ser colocado na DMZ e assim sucessivamente. Basicamente, existem duas metodologias de implementar um IDS. Posteriormente o leitor verá que é possível a associação dessas metodologias, a saber:  Por anomalias: Tem como objetivo identificar desvios de padrões na utilização de recursos presentes em uma rede por parte do usuário. Essas alterações de comportamento podem se caracterizar em um ataque. Com esta metodologia é necessário caracterizar quatro tipos de atividades possíveis do IDS: 1. Intrusiva e anômala (verdadeiro positivo); 2. Não intrusiva e não anômala (verdadeiro negativo); 3. Intrusiva e não anômala (falso negativo);
  23. 23. Guia de Referência Rápida – Segurança Inter-Redes 1 4. Não intrusiva e anômala (falso positivo); Um grande problema na utilização deste método é algo que vem sendo alvo de diversas pesquisas. Este problema é definir o que é “normal”. Assim podemos acreditar que no dia em que houver uma definição clara e objetiva em relação ao que é “normal” a utilização deste método será muito mais eficiente, me arriscaria até em dizer que a melhor forma de implementação de um IDS.  Por assinatura: Neste método, a análise para identificar se um determinado tráfego é referente a um ataque é feita com base em uma base de assinatura que estará presente. Vale ressaltar que assinatura é uma espécie de “hash” sobre um determinado tipo de ataque. Dessa forma, a análise não será subjetiva, mas sim objetiva, tornando a utilização deste método mais simples, além de, consequentemente, diminuir o número de falso positivo, o que representa um grande problema na utilização de IDS, porque um tráfego normal estará recebendo alertas do IDS informando que este tráfego é um ataque. A situação piora se for um IDS ativo que interaja com um Filtro de Pacotes, o que irá bloquear o acesso de um tráfego normal. Uma grande desvantagem é que o IDS apenas irá reconhecer aqueles ataques que tiverem uma assinatura associada em sua base de dados, ou seja, os novos também conhecidos como ataques do tipo zero day, não serão detectados por este método.  IDS Hibrido
  24. 24. Guia de Referência Rápida – Segurança Inter-Redes 2 Sempre que possível, a utilização dos dois métodos representaria uma solução mais apropriada, fazendo com que seja verificado o tráfego primeiramente por assinaturas e posteriormente por anomalias. Um fator muito importante que vale dizer é que o IDS não é um mecanismo que após implementado irá desempenhar sua atividade fim perfeitamente. Ao contrário, é necessário um período de treinamento desse mecanismo para que após este período sim, possa se ter o resultado desejado. Além do mais, é necessário um constante acompanhamento para que ele possa ter utilidade em um ambiente corporativo. A posição do IDS na rede é algo subjetivo. Eu digo inclusive que depende muito mais dos equipamentos disponíveis e do conhecimento do que qualquer outro fator. Checklist de instalação do Snort Será abstraída a forma na qual você irá posicionar a máquina IDS na rede, fique à vontade para executar tal tarefa. Em uma máquina com a distribuição Debian instalada no modo WEB6 e como acesso de root, seguem os passos comentados: # apt-get install vi o Embora na própria instalação do Debian por padrão já vem instalado o vi, este vem em uma forma “seca”, sem alguns recursos que permitem facilidade na edição de texto. Com a instalação do vi é criado um alias e assim podemos utilizar os mesmos recursos do vim que é um outro pacote igual ao vi só que com essas facilidades na edição de texto. Este é um passo opcional, caso não queira 6 No momento da instalação do Debian, são listadas várias opções de instalação dentre elas: Desktop, Banco de Dados, Servidor de E-mail e WEB. Sugiro que instale neste modo, que irá instalar o apache, php e alguns pacotes/bibliotecas que teríamos que instalar posteriormente. Assim podemos focar mais no nosso objetivo.
  25. 25. Guia de Referência Rápida – Segurança Inter-Redes 2 instalar, fique à vontade. # apt-get install mysql-server mysql-client libmysqlclient15-dev o Instalando o Banco de dados mysql na versão server, client e as bibliotecas de desenvolvimento. Nele o snort irá armazenar seus logs. # apt-get install php5-mysql php5-gd o Instalando o suporte ao mysql no PHP5. # mysql -u root mysql > SET PASSWORD FOR root@localhost = PASSWORD('123'); o Por padrão, a instalação do mysql deixa a senha de root em branco. Portanto, é utilizada a seqüência de comandos acima que irá acessará o prompt do mysql e assim alterar a senha do root. Substitua “123” pela senha que lhe convir. o A partir do momento em que se altera a senha do root do mysql, para acessar o prompt dele como root novamente é necessário a utilização do parâmetro “p”. mysql > CREATE DATABASE snort; o Comando SQL que cria um Banco de Dados com o nome de snort. mysql > GRANT INSERT, SELECT, DELETE, UPDATE, CREATE ON snort.* TO snort@localhost identified by ‘123’; o Atribui os privilégios ao usuário snort para inserir, selecionar, apagar, atualizar e criar o Banco de Dados snort. mysql > exit o Digite exit para sair do prompt do mysql. # apt-get install snort-mysql snort-rules-default o Será solicitado que digite a faixa de IPs da rede na qual deseja que o snort analise os pacotes inerentes a rede determinada. Para indicar qualquer rede, utilize “any”. Posteriormente, este dado poderá ser facilmente modificado, mas neste momento, até iria sugerir a você que colocasse a classe de IP da rede que deseja e necessita, mas essa configuração deverá ser feita novamente. o Posteriormente será perguntado se deseja que o armazenamento dos logs do snort seja feito no mysql. Apenas clique em “sim” ou “yes”, mas essa configuração também deverá ser feita de novo posteriormente. o Neste procedimento implicitamente também será instalado a biblioteca Libpcap que é a responsável em deixar nossa placa atuar em modo promíscuo. # cd /usr/share/doc/snort-mysql o Acesso ao diretório que contém o script em SQL que utilizaremos
  26. 26. Guia de Referência Rápida – Segurança Inter-Redes 2 para criar as tabelas necessárias ao snort no Banco de Dados mysql de forma automática. # gzip -d create_mysql.gz o Descompacta o pacote “create_mysql.gz”. # mysql -u snort -p snort < create_mysql o A linha acima é dividida em duas operações. Na primeira parte é chamado o prompt do mysql “mysql -u snort -p snort” informando que é com o usuário snort que será solicitada a senha do Banco de Dados “snort”. Repare que a última palavra deste comando informa o Banco de Dados. No entanto, ao invés de solicitar o prompt para digitação de comandos, estamos informando que é para executar o conteúdo do arquivo “create_mysql”. o Após pressionar a tecla “Enter” na digitação deste comando, será solicitada a senha do usuário snort. Basta digitá-la que o comando será executado certinho. o Por curiosidade, abra o arquivo “create_mysql” e veja que nele apenas contêm comandos em SQL. # cd /etc/snort/ o Acessando o diretório de configuração do snort. # vi snort.conf o Editando o arquivo de configuração do snort. var HOME_NET [127.0.0.0/16,10.1.0.0/29] o Localize a linha que contém a tag “HOME_NET”. Por padrão deve estar assim: “var HOME_NET any”. Nesta tag, temos que, finalmente, configurar a(s) classe(s) de IPs que desejamos que o snort analise. o Segundo algumas pessoas que utilizam o snort, se colocarmos a classe de rede de loopback nessa tag é diminuído o número de falso positiso. output database: log, mysql, user=snort password=123 dbname=snort host=localhost o Na linha de número 513 ou próximo dela, temos que descontentar a linha que informa que o armazenamento do log será no mysql, conforme mostra acima. Para retirar o comentário basta tirar o caractere “#” que se encontrará no início da linha. o Nesta linha é que informamos ao snort para que utilize o mysql para o armazenamento dos logs. o Alguns parâmetros devem ser alterados nessa linha, a saber: em user=root mude para user=snort; password=test mude para password=123; em dbname=db mude “db” para “snort”. A linha ilustrada acima já está alterada. o Após a execução dessas configurações, basta salvar e sair do
  27. 27. Guia de Referência Rápida – Segurança Inter-Redes 2 arquivo. No caso do “vi” isso é feito pressionando a tecla < ESC > e em seguinda “:wq”. o Para nosso objetivo, o snort está pronto! # snort -vde & o Iniciamos a execução do snort com os parâmetros “vde” que significam: “v” que indicará que ele irá enviar para tela as informações conforme a execução; “d” informa que é para realizar dump na camada de aplicação; e “e” que mostra informações de cabeçalho da segunda camada. # cd /usr/local/src o Acesso ao diretório “src” para posteriormente fazer alguns downloads # wget http://acidlab.sourceforge.net/acid- 0.9.6b23.tar.gz o Neste procedimento está utilizando o comando wget que nos permite interagir com uma página WEB diretamente do modo texto. Neste caso está sendo feito o donwload da ferramenta acid. o Acid é o nome do aplicativo que irá fazer a leitura dos logs do snort e, com o auxílio de alguns outros pacotes, mostrará em uma página WEB com gráficos e informações classificadas com fácil entendimento. # wget http://ufpr.dl.sourceforge.net/sourceforge/adodb/adodb496 a.tgz o Este pacote será o responsável em realizar a comunicação com o mysql. # wget http://hem.bredband.net/jpgraph/jpgraph- 1.21b.tar.gz o Por fim, o jpgraph irá produzir gráficos nas páginas WEB. # tar -xzvf acid-0.9.6b23.tar.gz -C /var/www/ o Descompactando o acid e colocando-o no diretório de páginas WEB na configuração padrão do apache no Debian. # tar -xzvf adodb496a.tgz -C /var/www/acid/ o Descompactando o adodb e colocando-o no diretório do acid. # tar -xzvf jpgraph-1.21b.tar.gz -C /var/www/acid/ o Descompactando o jpgraph e colocando-o no diretório do acid. # cd /var/www/acid/ o Acessando diretório do acid para realizar algumas modificações necessárias. # vi acid_conf.php o Edite o arquivo principal de configuração do acid e altere as linhas a serem descritas abaixo.
  28. 28. Guia de Referência Rápida – Segurança Inter-Redes 2 $DBlib_path = "/var/www/acid/adodb"; $alert_dbname = "snort"; $alert_user = "snort"; $alert_password = "123"; $archive_dbname = "snort "; $archive_user = "snort"; $archive_password = "123"; o Altere apenas os campos entre aspas expressos nas linhas acima pelos valores reais. No caso das configurações que estamos utilizando neste livro altere conforme os valores acima. o Atenção, essas linhas já existem. o Caso tenha colocado uma senha diferente de “123” ao usuário “snort” no mysql, altere este campo pela senha utilizada. # /etc/init.d/apache2 restart o Reinicialização do Apache. É um procedimento interessante já que instalamos alguns pacotes do PHP e queremos utilizá-los. Agora está pronto para ser utilizado. Basta ir até alguma máquina com modo gráfico, abrir um navegador de sua preferência e acessar a url: http://IP_DO_IDS/acid. No exemplo ilustrado na figura 5.0 o IP é: 10.1.0.10 Figura 5.0: Página WEB inicial de configuração do acid. o Clique no link “Setup page”.
  29. 29. Guia de Referência Rápida – Segurança Inter-Redes 2 Figura 5.1: Página WEB de setup do acid. o Agora clique no botão “Create ACID AG”. Assim será criado alguns usuários agentes do acid no mysql. o Após está operação, a seguinte página deve ser exibida. Figura 5.2: Página WEB de sucesso na criação dos agentes do acid.
  30. 30. Guia de Referência Rápida – Segurança Inter-Redes 2 o Repare nos indicativos de sucesso: Successfully created 'acid_ag' Successfully created 'acid_ag_alert' Successfully created 'acid_ip_cache' Successfully created 'acid_event' o Ok! Na mesma tela basta clicar em “Main page”. Figura 5.3: Página WEB principal do acid. o Por fim, essa será a página onde você poderá visualizar os logs do snort de forma muito amigável e simples. Como não é objetivo deste checklist mostrar a utilização das ferramentas, mas sim a instalação de uma solução de IDS, encerro por aqui. Acredito que o leitor, desde que se dedique, terá bastante facilidade na utilização desta ferramenta.
  31. 31. Guia de Referência Rápida – Segurança Inter-Redes 2 3. Honeypot Segundo a nossa série de comentários sobre mecanismos de segurança em redes de computadores, o Honeypot vem sendo um mecanismo cada vez mais utilizado. Uma das razões, ao meu ver, são duas: as crescentes tentativas de ataque por meio das redes e a conscientização sobre a importância da segurança cada vez mais constante. Este mecanismo, por sua própria característica de funcionamento permite um aprendizado que pode servir com antecipação ou mesmo criação de soluções para se proteger dos ataques assimilados. O Honeypot tem como intuito enganar um possível invasor direcionando-o a um ambiente que foi feito justamente para ser de fato invadido. Para tanto, um conjunto de providências é tomado, tal como: isolamento da rede, já que será um segmento que deverá sofrer constantes ataques. Uma outra característica é a possibilidade de desencorajamento do invasor, já que quando este tomar ciência, se tomar é claro, de que está executando suas operações em um serviço que não é o real, será provável que se afaste e desista da execução de seu objetivo malicioso. Claro que esta reação também pode ser adversa, despertando ainda mais o interesse do invasor em obter êxito em sua invasão. A implementação deste mecanismo basicamente pode ser feita de duas maneiras. A primeira seria: em um computador conectado a rede instala-se um Software de Honeypot apropriado que por sua vez irá emular diversos serviços reais, como por exemplo: HTTP, FTP, DNS, SSH, etc. Uma vez que os serviços estão sendo emulados, o registro em log está sendo feito para cada operação realizada no ambiente, possibilitando assim, o mapeamento dos passos executados pelo atacante. No “mundo do Software Livre”, um muito eficiente é o honeyd que além de ser um excelente Software tem contribuído para o desenvolvimento de toda uma filosofia acerca do tema. Também vale dizer que vem surgindo diversos merecedores de citação, dentre eles: o projeto
  32. 32. Guia de Referência Rápida – Segurança Inter-Redes 2 Honeynet.BR. Recomendo o acesso ao site www.honeynet.org.br para maiores conhecimento sobre. Uma outra boa alternativa de Honeypot é o portsentry, no entanto este é bem mais limitado. O portsentry é um projeto que vem crescendo bastante ultimamente devido a sua facilidade de implementação e análise. Pode atuar em duas formas: uma como Honeypot e outra como IDS. No checklist ficará bem evidente como realizar a alteração do modo de funcionamento deste Software. Uma outra forma de implementação do Honeypot é, ao invés de emular serviços por meio de um Software, fazer uso de um computador dedicado para desempenhar exclusivamente essa função com todos os serviços de um determinado servidor real. A grande vantagem na utilização deste modo, em minha opinião, é o processo de auditoria, que desde que planejado com a instalação de monitores de operações, poderá ser executado com muito mais detalhes e precisão do que se o serviço fosse emulado. Afinal, estaremos tratando de um serviço real sendo executado em Sistema Operacional também real, ou seja, tudo será real, menos é claro, o servidor, já que este será um Honeypot. Então, em outras palavras, o Honeypot é um mecanismo estrategicamente posicionado na rede para que possa servir de alvo de ataques e fonte de pesquisa, auditoria e desencorajamento, podendo assim ser entendido o comportamento do invasor na execução de ataques. Checklist de instalação do PortSentry Neste checklist será mostrado um Honeypot do tipo produção, ou seja, os serviços serão emulados em um aplicativo que será o portsentry. Este software foi escolhido por ser oriundo de um projeto que vem melhorando bastante com o passar do tempo e não se trata de um aplicativo complexo. Vale dizer que o PortySentry não possui recursos avançados em termos de funcionalidades, não sendo indicado para uso profissional. Para essa necessidade, recomendo o honeyd.
  33. 33. Guia de Referência Rápida – Segurança Inter-Redes 2 Será abstraída a forma em que você irá posicionar a máquina Honeypot na rede. Fique à vontade para executar tal tarefa. Em uma máquina com a distribuição Debian instalada e como acesso de root, seguem os passos: # apt-get install vi o Embora na própria instalação do Debian por padrão já venha instalado o “vi”, este vem em uma forma “seca”, sem alguns recursos que permitem facilidade na edição de texto. Com a instalação do “vi” é criado alias e assim podemos utilizar os mesmos recursos do “vim” que é um outro pacote igual ao “vi” só que com essas facilidades na edição de texto. Este é um passo opcional, caso não queira instalar, fique à vontade. # netstat –tap o Utilize este comando apenas para visualizar as portas que estão abertas na máquina que terá o portsentry instalando. o O portsentry irá emular a porta de diversos serviços, portanto, posteriormente o leitor poderá ver que o número de portas abertas será bem superior ao que será mostrado agora. # apt-get install portsentry o Executando a instalação do portsentry. Será exibida uma tela apenas informativa, dizendo que o portsentry não bloqueia nada por padrão, que os logs serão registrados no arquivo “/var/log/syslog” e que o arquivo principal de configuração é o “/etc/portsentry/portsentry.conf”, além de sugerir o acesso aos arquivos “/etc/default/portsentry” e “/etc/portsentry/portsentry.ignore.static” para conhecimento. # netstat -tap o Novamente com o comando “netstat” é possível visualizar agora o número de portas que estão abertas. Repare que o número é bem maior. Observe também o nome do programa que está associado a cada porta no canto direito da tela, conforme ilustra a figura 6.0.
  34. 34. Guia de Referência Rápida – Segurança Inter-Redes 3 Figura 6.0: resultado do netstat com o portsentry executando. o Dessa forma você pode emular a porta que desejar, assim, quando um possível atacante for realizar uma varredura de portas nessa máquina, visualizará diversas portas que não estão associadas a um daemon real, apenas o portsentry, só que essa pessoa não saberá disso, perdendo tempo á toa tentando invadir um serviço que não existe. o Resgatando os conceitos que já foram descritos neste capítulo, Honeypot não é um serviço para ser instalado juntamente com um servidor, mas sim uma máquina que deverá ficar isolada na rede. # vi /etc/portsentry/portsentry.conf o Editando o arquivo “portsentry.conf” podemos informar as portas em que desejamos que o portsentry trabalhe, dentre outras operações. TCP_PORTS="1,11,15,79,111,119,143,540,635,1080,1524,2000, 5742,6667,12345,12346,20034,27665,31337,32771,32772,32773 ,32774,40421,49724,54320" UDP_PORTS="1,7,9,69,161,162,513,635,640,641,700,37444,345 55,31335,32770,32771,32772,32773,32774,31337,54321" o Localize as tags “TCP_PORTS” e “UDP_PORTS” e acrescente as portas que deseja emular em cada protocolo. o Faça de acordo com sua necessidade. Um outro recurso muito interessante é que o portsentry também atua como
  35. 35. Guia de Referência Rápida – Segurança Inter-Redes 3 IDS. Não irei abordar muito sobre isso. A apenas para fins de conhecimento, basta seguir os segintes passos: # vi /etc/default/portsentry o Editando o arquivo de configuração do modo de atuação do portsentry TCP_MODE="atcp" UDP_MODE="audp" o Basta realizar as modificações conforme indicado acima. Essas duas tags determinam o modo de funcionamento do portsentry em relação a dois protocolos da camada de transporte. o Quando estes campos estão: TCP_MODE="tcp" e UDP_MODE="udp", o modo de funcionamento é honeypot, quando TCP_MODE="atcp" e UDP_MODE="audp" o modo é IDS. o Adianto em dizer que embora bastante prático, o portsentry ainda está longe de ser considerado um IDS profissional como o snort, por exemplo. o A grande vantagem na utilização do portsentry como IDS é que ele já tem como característica implícita a comunicação com o iptables, assim no momento em que o portsentry detecta um ataque ele cria uma regra no iptables bloqueando a origem do ataque em tempo real. Essa interação entre o portsentry e o iptables pode ser determinada e configurada no arquivo: “/etc/portsentry/portsentry.conf”. Assim encerro mais este checklist despertando no leitor a busca do conhecimento da interação do portsentry e o iptables, o que não é nenhum mistério, é muito simples. Outro comentário importante, é que com o snort também é possível interagir com o iptables por diversas formas, dentre elas está a utilização do guardian. A princípio recomendo que utilize um Honeypot simples de se utilizar com o portsentry, quando já estiver bom neste, considere a utilização do honeyd.
  36. 36. Guia de Referência Rápida – Segurança Inter-Redes 3 4. SMTP-Relay Também conhecido como Gateway de E-mail. É utilizado para intermediar a comunicação do servidor de E-mail com a Internet. A principal finalidade do SMTP-Relay é combater justamente o elemento que mais atrapalha o funcionamento do serviço de E-mail, os famosos SPAMs, que por serem mensagens não solicitadas e não esperadas, podem trazer consigo vírus que poderão consequentemente comprometer as estações dos usuários que venham a receber estes vírus ou qualquer outro tipo de Malwares. Os componentes de um servidor de E-mail são: MTA e MDA, e interagindo com este temos ainda a presença do MUA, conforme ilustra a Figura: 7.0 – Fluxo de funcionamento do serviço de E-mail. Analisando os fluxos exposto na figura 7.0, temos: – 1º O cliente que utiliza o protocolo SMTP para enviar uma mensagem para o Servidor de E-mail; – 2º O MTA verifica se esta mensagem é para uma conta existente no Servidor. Caso seja é executado o passo 2 e 4, entregando para o MDA que irá se encarregar de armazenar na caixa postal do usuário a mensagem recebida;
  37. 37. Guia de Referência Rápida – Segurança Inter-Redes 3 – 3º Caso a mensagem não seja para uma conta no Servidor local, a mensagem será enviada para um outro MTA que provavelmente será o Servidor de E-mail de destino; – Por fim o fluxo de número 5 mostra uma ação onde o cliente de E-mail está acessando suas mensagem no servidor. Os protocolos envolvidos neste modelo são: – SMTP (Simple Mail Transfer Protocol): utilizado no envio de e-mail do MUA para o MTA ou entre MTAs. Opera utilizando a porta 25 do protocolo TCP. – POP3 (Post Office Protocol , version 3): utilizado no recebimento de e-mail pelo MUA. Utiliza a porta 110 do protocolo TCP. – IMAP (Internet Message Access Protocol): como o POP3, é utilizado pelo MUA para o recebimento de e-mail. Opera através da porta 143 do protocolo TCP. Sem entrar muito no mérito do funcionamento do serviço de E-mail o qual necessitaria de um outro livro apenas para explicar-lo, observe na figura 7.1 uma possível topologia com o posicionamento do SMTP-Relay. Figura: 7.1 – Posicionamento do SMTP-Relay em uma rede. O leitor deve ter notado grande semelhança em relação à função desempenhada pelo Proxy, no entanto a grande diferença aqui é que o SMTP-Relay trata exclusivamente do serviço de e-
  38. 38. Guia de Referência Rápida – Segurança Inter-Redes 3 mail, além da sua característica intrínseca na utilização do protocolo SMTP. Geralmente SMTP Relay fica posicionado na DMZ, com o intuito de ser um intermediário no acesso ao servidor de e-mail, ou simplesmente como uma barreira de proteção contra vírus, worms, spams, etc. Neste checklist irei mostrar como executar a instalação de um SMTP-Relay sem abordar a implementação de softwares auxiliares que ajudariam e muito no funcionamento deste mecanismo. A razão é que a instalação destes programas depende muito da necessidade da Empresa que deseja instalar esta ferramenta. Se deseja se aprofundar mais no assunto, basta realizar uma boa pesquisa na Internet sobre ferramentas de combate a SPAM. Checklist de instalação do Qmail como SMTP- Relay Será abstraída a forma na qual você irá posicionar a máquina SMTP-Relay na rede, fique à vontade para executar tal tarefa. Em uma máquina com a distribuição Debian instalada no modo WEB e com acesso de root, seguem os passos comentados: Apenas informando ao leitor que para que este mecanismo funcione corretamente terá que haver no DNS primário da rede a configuração de maior privilégio na resposta MX para o smtp-relay. # /etc/init.d/exim4 stop o Parando o funcionamento do exim que é um servidor de e-mail que já vem instalado por padrão no Debian. # dpkg --ignore-depends=exim4 -r exim4 o Removendo o exim. # update-rc.d -f exim4 remove o Removendo os links de inicialização do exim. # apt-get install make gcc g++ o Instalando alguns compiladores que serão necessários.
  39. 39. Guia de Referência Rápida – Segurança Inter-Redes 3 # cd /usr/local/src/ o Acessando um diretório para fazermos os downloads dos arquivos necessários. # wget http://www.qmail.org/netqmail-1.05.tar.gz # wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz # wget http://cr.yp.to/daemontools/daemontools- 0.76.tar.gz # wget http://www.pldaniels.com/ripmime/ripmime- 1.4.0.7.tar.gz # wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcr e-7.4.tar.gz # wget http://www.inter7.com/simscan/simscan-1.3.1.tar.gz o Baixando todos os pacotes que serão necessários para instalação do nosso ambiente. # tar -xzvf netqmail-1.05.tar.gz o Extraindo e descompactando o pacote do netqmail. o É utilizado o comando “tar” para extrair os dados do pacote “ucspi- tcp-0.88.tar.gz” com os parâmetro: “x” ativa a função de extração; “z” informa que é para descompactar o pacote utilizando o gzip7; “v” indica que é para ser mostrado na tela o processo de descompactação e extração; “f” aponta para o arquivo alvo, o pacote que sofrerá a execução da operação. # cd netqmail-1.05 o Acessando o diretório do “netqmail-1.0.5”. # ./collate.sh o Aplicando os patches. # cd /usr/local/src/ o Acessando o diretório que contém os pacotes de origem, já baixados. # tar -xzvf ucspi-tcp-0.88.tar.gz o Descompactando e extraindo o pacote ucspi-tcp que será utilizado para gerenciar os processos do qmail. o É utilizado o comando “tar” para extrair os dados do pacote “ucspi- tcp-0.88.tar.gz” com os parâmetro: “x” ativa a função de extração; “z” informa que é para descompactar o pacote utilizando o gzip; “v” indica que é para ser mostrado na tela o processo de descompactação e extração; “f” aponta para o arquivo alvo, o pacote que sofrerá a execução da operação. # cd ucspi-tcp-0.88/ 7 Descompactador.
  40. 40. Guia de Referência Rápida – Segurança Inter-Redes 3 o Acessando o diretório gerado “ucspi-tcp-0.88/” # patch < /usr/local/src/netqmail-1.05/other- patches/ucspi-tcp-0.88.errno.patch o Aplicando o patch de correção “ucspi-tcp-0.88.errno.patch” ao pacote “ucspi-tcp-0.88/”. # make o Faz a leitura no arquivo makefile verificando a regularidade para instalação. # make setup check o Neste caso, compila e instala o pacote. # mkdir /package o Cria o diretório “package” na raiz da estrutura de diretórios utilizada no GNU/Linux. Este diretório posteriormente será utilizado para instalação do pacote daemontools. # chmod 1755 /package o Atribuindo as permissões ao diretório criado utilizando os parâmetros: “1” corresponde ao bit STICKY; “7” atribui permissão de leitura, escrita e execução ao proprietário; “5” permite a leitura e execução ao grupo principal e outros respectivamente. # cd /package o Acessando diretório “package”. # tar -zxvf /usr/local/src/daemontools-0.76.tar.gz -C /package/ o Descompactando o pacote “daemontools” no diretório “/package”. o É utilizado o comando “tar” para extrair os dados do pacote com os parâmetros: “x” ativa a função de extração; “z” informa que é para descompactar o pacote utilizando o gzip; “v” indica que é para ser mostrado na tela o processo de descompactação e extração; “f” aponta para o arquivo alvo, o pacote que sofrerá a execução da operação; e posteriormente o “C” que informa o diretório que receberá a descompactação. # cd /package/admin/daemontools-0.76/src o Acessando o diretório dos fonts do “daemontools”. # patch < /usr/local/src/netqmail-1.05/other- patches/daemontools-0.76.errno.patch o Aplicando o patch de correção no “daemontools”. # cd /package/admin/daemontools-0.76 o Acessando o diretório de administração do “daemontools”. # package/install o Instalando o “daemontools”.
  41. 41. Guia de Referência Rápida – Segurança Inter-Redes 3 # cd /usr/local/src/ o Acessando o diretório que contém os todos os pacotes. # groupadd nofiles o Adicionando o grupo “nofiles”. # useradd -g nofiles -d /var/qmail/alias alias # useradd -g nofiles -d /var/qmail qmaild # useradd -g nofiles -d /var/qmail qmaill # useradd -g nofiles -d /var/qmail qmailp o Criando os usuários do grupo “nofiles” necessários para instalação e funcionamento do qmail. # groupadd qmail o Adicionando o grupo “qmail” # useradd -g qmail -d /var/qmail qmailq # useradd -g qmail -d /var/qmail qmailr # useradd -g qmail -d /var/qmail qmails o Criando os usuários do grupo “qmail” necessários para instalação e funcionamento do qmail. # mkdir /etc/qmail # mkdir -p /var/qmail/supervise/qmail-send/log # mkdir -p /var/qmail/supervise/qmail-smtpd/log # mkdir -p /var/qmail/supervise/qmail-pop3d/log o Criando os diretórios de log necessários. o O qmail é quem irá fazer usos destes diretório. # ln -s /etc/qmail /var/qmail/control o Criando um link simbólico do diretório “/etc/qmail” em “/var/qmail” com o nome de “control”. # mkdir -p /var/log/qmail/smtpd # mkdir -p /var/log/qmail/send o Criando os diretórios necessários para armazenamento de log do qmail. # chown qmaill.nofiles /var/log/qmail –R o Atribuindo a posse do diretório “/var/log/qmail” para o usuário “qmail” e como grupo principal “nofiles”. o O parâmetro “R” é utilizado para indicar a recursividade, ou seja, será aplicado as modificações em todos os subdiretórios e arquivos contidos no diretório alvo (/var/log/qmail). # cd netqmail-1.05/netqmail-1.05 o Acessando o diretório “netqmail-1.05” # make o Preparando para compilar o pacote. # make setup check
  42. 42. Guia de Referência Rápida – Segurança Inter-Redes 3 o Checando as dependências para compilar o pacote. # ./config-fast mailrelay.DOMINIO.com.br o Instalando o qmail. o Altere “mailrelay” pelo alias que estiver utilizando no DNS primário de seu domínio; “DOMINIO.com.br” altere pelo domínio real. # cd /var/qmail/alias/ o Acessando o diretório de alias do qmail. # echo "postmaster@DOMINIO.com.br" > .qmail-root # echo "postmaster@DOMINIO.com.br" > .qmail-postmaster # echo "postmaster@DOMINIO.com.br" > .qmail-mailer-daemon o Criando os alias para melhor funcionamento. # chmod 644 .qmail-root .qmail-postmaster .qmail-mailer- daemon o Atribuindo as permissões aos arquivos “.qmail-root”, “.qmail- postmaster”, “.qmail-mailer-daemon”. o Os parâmentros são utilizados para: “6” permissão de leitura e escrita ao usuário proprietário do arquivo; “4” permissão de apenas leitura para os demais usuários. # chown root.qmail .qmail-root .qmail-postmaster .qmail- mailer-daemon o Definindo o usuário “root” como proprietário e como grupo principal “qmail” dos arquivos: “.qmail-root”, “.qmail-postmaster”, “.qmail-mailer-daemon”. # rm /usr/sbin/sendmail # ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail # rm /usr/lib/sendmail # ln –s /var/qmail/bin/sendmail /usr/lib/sendmail o Removendo as referências ao programa “sendmail” e criando links aos executáveis do qmail. # echo 20 > /etc/qmail/concurrencyincoming o Definindo o número máximo de mensagens recebidas simultaneamente. # chmod 644 /etc/qmail/concurrencyincoming o Atribuindo as permissões ao arquivo “concurrencyincoming” o Os parâmentros são utilizados para “6” permissão de leitura e escrita ao usuário proprietário do arquivo; “4” permissão de apenas leitura para os demais usuários. # vi /etc/tcp.smtp o Abrindo o arquivo “/etc/tcp.smtp” para edição. 10.1.0.:allow,RELAYCLIENT="" 10.2.0.:allow,RELAYCLIENT=""
  43. 43. Guia de Referência Rápida – Segurança Inter-Redes 3 o Coloque o conteúdo acima nele. Altere os endereços “10.1.0.” e “10.2.0.” para classe da rede interna existente. o Nesta opção está sendo configurado as máquinas que poderão fazer uso desta como relay. # vi /var/qmail/rc o Editando o arquivo “rc”. o Nas próximas linhas, o leitor irá encontrar diversos scripts que devem ser criados para o funcionamento do qmail. #!/bin/sh exec env - PATH="/var/qmail/bin:$PATH" qmail-start "`cat /var/qmail/control/defaultdelivery`" o Coloque o conteúdo acima no arquivo aberto (“rc”). o Repare que o que está sendo criado é um script, portanto não estranhe o fato da linha iniciar com “#! /bin/sh”, esta determinará a inicialização do shell na execução do arquivo. # chmod 755 /var/qmail/rc o Definindo as permissões de acesso ao arquivo “rc”. o Os parâmetros significam: “7” permissão de leitura, escrita e execução ao proprietário; “5” permite a leitura e execução ao grupo principal e outros respectivamente. # echo "./Maildir/" > /var/qmail/control/defaultdelivery o Definindo a forma de entrega de mensagem. # vi /var/qmail/supervise/qmail-smtpd/run o Editando o arquivo “.../qmail-smtp/run”. #!/bin/sh QMAILDUID=`id -u qmaild` NOFILESGID=`id -g qmaild` MAXSMTPD=`cat /var/qmail/control/concurrencyincoming` LOCAL=`head -1 /var/qmail/control/me` SOFTLIMIT=40000000 exec /usr/local/bin/softlimit -m $SOFTLIMIT /usr/local/bin/tcpserver -v -R -l "$LOCAL" -x /etc/tcp.smtp.cdb -c "$MAXSMTPD" -u "$QMAILDUID" -g "$NOFILESGID" 0 smtp /var/qmail/bin/qmail-smtpd 2>&1 o Coloque este conteúdo no arquivo aberto (.../qmail-smtp/run), salve-o e feche-o. # vi /var/qmail/supervise/qmail-smtpd/log/run o Editando o arquivo “.../qmail-smtp/log/run”. #!/bin/sh exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t s2500000
  44. 44. Guia de Referência Rápida – Segurança Inter-Redes 4 /var/log/qmail/smtpd/ o Coloque este conteúdo no arquivo aberto (.../qmail-smtp/log/run), salve-o e feche-o # vi /var/qmail/supervise/qmail-send/run o Editando o arquivo “.../qmail-send/run”. #!/bin/sh exec /var/qmail/rc o Coloque este conteúdo no arquivo aberto (.../qmail-send/run), salve- o e feche-o # vi /var/qmail/supervise/qmail-send/log/run o Editando o arquivo “.../qmail-send/log/run”. #!/bin/sh exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t s2500000 /var/log/qmail/send o Coloque este conteúdo no arquivo aberto (.../qmail-send/log/run), salve-o e feche-o. # vi /etc/init.d/qmail o Editando o arquivo “/etc/init.d/qmail”. #!/bin/sh PATH=/var/qmail/bin:/bin:/usr/bin:/usr/local/bin:/usr/loc al/sbin export PATH QMAILDUID=`id -u qmaild` NOFILESGID=`id -g qmaild` case "$1" in start) echo "Starting qmail" if svok /service/qmail-send ; then svc -u /service/qmail-send else echo qmail-send service not running fi if svok /service/qmail-smtpd ; then svc -u /service/qmail-smtpd else echo qmail-smtpd service not running fi if [ -d /var/lock/subsys ]; then touch /var/lock/subsys/qmail fi ;;
  45. 45. Guia de Referência Rápida – Segurança Inter-Redes 4 stop) echo "Stopping qmail..." echo " qmail-smtpd" svc -d /service/qmail-smtpd echo " qmail-send" svc -d /service/qmail-send if [ -f /var/lock/subsys/qmail ]; then rm /var/lock/subsys/qmail fi echo " qmail-pop3d" svc -d /service/qmail-pop3d ;; stat) svstat /service/qmail-send svstat /service/qmail-send/log svstat /service/qmail-smtpd svstat /service/qmail-smtpd/log qmail-qstat ;; doqueue|alrm|flush) echo "Sending ALRM signal to qmail-send." svc -a /service/qmail-send ;; queue) qmail-qstat qmail-qread ;; reload|hup) echo "Sending HUP signal to qmail-send." svc -h /service/qmail-send ;; pause) echo "Pausing qmail-send" svc -p /service/qmail-send echo "Pausing qmail-smtpd" svc -p /service/qmail-smtpd ;; cont) echo "Continuing qmail-send" svc -c /service/qmail-send echo "Continuing qmail-smtpd" svc -c /service/qmail-smtpd ;; restart) echo "Restarting qmail:" echo "* Stopping qmail-smtpd." svc -d /service/qmail-smtpd echo "* Sending qmail-send SIGTERM and restarting." svc -t /service/qmail-send
  46. 46. Guia de Referência Rápida – Segurança Inter-Redes 4 echo "* Restarting qmail-smtpd." svc -u /service/qmail-smtpd ;; cdb) tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp chmod 644 /etc/tcp.smtp.cdb echo "Reloaded /home/vpopmail/etc/tcp.smtp." ;; help) cat <<HELP stop -- stops mail service (smtp connections refused, nothing goes out) start -- starts mail service (smtp connection accepted, mail can go out) pause -- temporarily stops mail service (connections accepted, nothing leaves) cont -- continues paused mail service stat -- displays status of mail service cdb -- rebuild the tcpserver cdb file for smtp restart -- stops and restarts smtp, sends qmail-send a TERM & restarts it doqueue -- sends qmail-send ALRM, scheduling queued messages for delivery reload -- sends qmail-send HUP, rereading locals and virtualdomains queue -- shows status of queue alrm -- same as doqueue flush -- same as doqueue hup -- same as reload HELP ;; *) echo "Usage: $0 {start|stop|restart|doqueue|flush| reload|stat|pause|cont|cdb|queue|help}" exit 1 ;; esac exit 0 o Coloque este conteúdo no arquivo aberto (/etc/init.d/qmail), salve-o e feche-o. # chmod 755 /etc/init.d/qmail # chmod 755 /var/qmail/supervise/qmail-send/run # chmod 755 /var/qmail/supervise/qmail-send/log/run # chmod 755 /var/qmail/supervise/qmail-smtpd/run # chmod 755 /var/qmail/supervise/qmail-smtpd/log/run o Aplicando as permissões necessárias.
  47. 47. Guia de Referência Rápida – Segurança Inter-Redes 4 o Os parâmentros são utilizados para: “7” permissão de leitura, escrita e execução ao usuário proprietário do arquivo; “5” permissão de apenas leitura e execução para os demais usuários. # /etc/init.d/qmail start o Iniciando o qmail. Neste momento ele ainda não está pronto para funcionar como um smtp-relay que é o nosso objetivo final. # ln –s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /service o Criando os links para que o “daemontools” possa gerenciar o funcionamento desses programas. # apt-get install clamav o Instalando o antivírus clamav. # apt-get install spamassassin o Instalando a ferramenta anti-spam spamassassin. # vi /etc/default/spamassassin o Editando um dos arquivos de configuração do spamassassin. ENABLED=1 o Altere o campo “ENABLED” de “0” para “1”, que por padrão estará com o valor 0 (ENABLED=0) que significa que o spamassassin está desabilitado, dessa forma ele será habilitado. # /etc/init.d/spamassassin o Iniciando o daemon do spamassassin. # cd /usr/local/src o Acessando o diretório que contém os todos os pacotes. # tar -xzvf ripmime-1.4.0.7.tar.gz o Descompactando o pacote “ripmime”. o É utilizado o comando “tar” para extrair os dados do pacote com os parâmetros: “x” ativa a função de extração; “z” informa que é para descompactar o pacote utilizando o gzip; “v” indica que é para ser mostrado na tela o processo de descompactação e extração; “f” aponta para o arquivo alvo, o pacote que sofrerá a execução da operação. # cd ripmime-1.4.0.7 o Acessando o diretório “ripmime-1.4.0.7” # make o Prepara o pacote para ser compilado. # make install o Instalando o pacote. # cd /usr/local/src
  48. 48. Guia de Referência Rápida – Segurança Inter-Redes 4 o Acessando o diretório que contém os todos os pacotes. # tar -xzvf pcre-7.4.tar.gz o Extraindo e descompactando o pacote “pcre”. o É utilizado o comando “tar” para extrair os dados do pacote com os parâmetros: “x” ativa a função de extração; “z” informa que é para descompactar o pacote utilizando o gzip; “v” indica que é para ser mostrado na tela o processo de descompactação e extração; “f” aponta para o arquivo alvo, o pacote que sofrerá a execução da operação; e posteriormente o “C” que informa o diretório que receberá a descompactação. # cd pcre-7.4 o Acessando o diretório “pcre-7.1” # ./configure --prefix=/usr/local/pcre o Prepara o pacote para ser compilado. # make o Faz a leitura no arquivo makefile verificando a regularidade para instalação. # make check o Embora opcional, checa se está tudo correto para instalação. # make install o Instala o pacote. # cd /usr/local/src/ o Acessando o diretório que contém os todos os pacotes. # groupadd simscan # useradd -g simscan -s /bin/false -d /dev/null simscan o Criando o grupo e o usuário necessário para o funcionamento do simscan. o Os parâmetros determinam: “g” o grupo principal; “s” o shell que será disponibilizado; “d” o diretório padrão do usuário. # tar -xzvf simscan-1.3.1.tar.gz o Extraindo e descompactando o pacote “simscan”. o É utilizado o comando “tar” para extrair os dados do pacote com os parâmetros: “x” ativa a função de extração; “z” informa que é para descompactar o pacote utilizando o gzip; “v” indica que é para ser mostrado na tela o processo de descompactação e extração; “f” aponta para o arquivo alvo, o pacote que sofrerá a execução da operação; e posteriormente o “C” que informa o diretório que receberá a descompactação. # cd simscan-1.3.1
  49. 49. Guia de Referência Rápida – Segurança Inter-Redes 4 o Acessando o diretório “simscan-1.3.1 #./configure --enable-attach=y --enable-clamdscan=y --enable-quarantinedir --enable-spam-passthru=y --enable-spam=y --enable-spam-user=y --enable-per-domain=y --enable-user=simscan --enable-regex --enable-received=y --enable-custom-smtp-reject=y --enable-clamavdb-path=/usr/share/doc/clamav- freshclam/examples/ --enable-spamc=/usr/bin/spamassassin --with-pcre-include=/usr/local/pcre/include/ o Executando testes e preparando para instalação. # make o Faz a leitura no arquivo makefile verificando a regularidade para instalação. # make install o Instalando o pacote. # vi /var/qmail/control/simcontrol o Editando o arquivo “simcontrol” : clam=yes.spam=yes,attach=.scr:.bat:.com:.pif:.exe:.mp3:.a vi:.mpeg:.wmv o Coloque o conteúdo acima no arquivo aberto (/var/qmail/control/simcontrol), salve-o e feche-o. # mkdir /var/qmail/quarantine o Criando o diretório de quarentena do simscan. # chown simscan.simscan /var/qmail/quarantine o Atribuindo a propriedade do diretório ao usuário “simscan” e ao grupo “simscan”. # ln -s /usr/local/lib/libpcre.so.0 /usr/lib/libpcre.so.0 Criando um link simbólico que será necessário para o funcionamento do simscan. # /var/qmail/bin/simscanmk /var/qmail/control/simcontrol o Criando o arquivo “simcontrol.cdb”. # /var/qmail/bin/simscanmk -g /var/qmail/control/simcontrol
  50. 50. Guia de Referência Rápida – Segurança Inter-Redes 4 o Iniciando o simscan. # rm -f /var/qmail/control/locals o Já que esta máquina será um smpt-relay, o arquivo “locals” deve ser removido. É o que está sendo feito no comando acima. # echo “:DOMINIO.com.br” > /var/qmail/control/smtproutes o Criando o arquivo “smtproutes” com o domínio que se deseja configurar. o Altere o trecho “DOMINIO.com.br” pelo domínio real. o É neste arquivo que é configurado e indicado ao qmail o uso das rotas para smtp. # echo “DOMÍNIO.com.br” > /var/qmail/control/rcpthosts o Atribuindo o nome do domínio ao arquivo “rcpthosts”. o Altere o trecho “DOMINIO.com.br” pelo domínio real. E assim terminamos mais este checklist informando ao leitor que esta não se trata de uma solução simples, pois exige bastante familiaridade com o ambiente instalado, no entanto os resultados são extremamente benéficos.
  51. 51. Guia de Referência Rápida – Segurança Inter-Redes 4 5. Considerações Finais Por questões de objetividade não foram abordadas explicações sobre a função dos pacotes justamente para poder manter o foco em expor um checklist de instalação e não um manual sobre os mecanismos de segurança em redes de computadores apresentados. O enfoque ao Software Livre foi dado com o intuito de mostrar que já há um bom tempo, dispomos de excelentes ferramentas que atendem as nossas necessidades no dia-a-dia e de forma extremamente profissional. O maior problema sobre o qual, muitas vezes ouço algumas pessoas reclamarem é o fato de que em muitos os casos faltam interfaces “amigáveis” para o gerenciamento do mecanismo. No entanto, mostramos que isso não é verdade, pois em diversos casos já existem sim, interfaces “amigáveis” e de fácil utilização. Aproveitando a oportunidade, deixo um alerta em relação a utilização de Software Livre: existem algumas soluções que são compostas por um conjunto de softwares que com o passar do tempo sofrerão entropia, uns bem rápidos e outros nem tanto. Portanto, recomendo a constante verificação das atualizações de cada pacote instalado na solução para que dessa forma seja possível o mantimento sempre eficiente desta. Segurança não é um assunto que pode ser tratado de forma prematura e amadora devido a grande responsabilidade que esta envolve. Assim sendo, sempre, em qualquer processo ou projeto de Segurança verifique a real necessidade de implementação de mecanismos, já que quem ditará isso será o ambiente envolvido e não o “achismo” do profissional de Segurança. Ficam aqui minhas sinceras recomendações: A Segurança da Informação deve ser tratada de forma cada vez mais freqüente e atuante. Para tanto, a conscientização a muitos administradores de empresa ainda é necessária e você é parte integrante da propagação deste conhecimento!
  52. 52. Guia de Referência Rápida – Segurança Inter-Redes 4 Termino este livro aqui, agradecendo pela leitura e solicitando sugestões, que são sempre bem-vindas. Caso tenha alguma, por gentileza, envie-a para mim: felipetsi@gmail.com Jesus é o caminho, a verdade e a vida! Ninguém vai ao pai se não por ele!
  53. 53. Guia de Referência Rápida – Segurança Inter-Redes 4 6. Referências ABNT NBR ISO/IEC 17799 2005 ABNT – Associação Brasileira de Normas Técnicas ABNT NBR ISO/IEC 27001 2005 ABNT – Associação Brasileira de Normas Técnicas A Segurança da Informação nas Empresas 2005 Dawel, George Gestão de Segurança da Informação 2003 Sêmola, Marcos Segurança da Informação – Uma Visão Inovadora da Gestão Ano 2006 Alves, Gustavo Alberto

×