Neste artigo abordaremos alguns "Security Hacks" para sistemas Linux e *BSD, ou seja, implementações simples que irão ajudar você a melhorar a segurança de seus servidores. Vamos conhecer algumas dicas matadoras e softwares que farão a diferença nesta empreitada.
Neste capítulo iremos verificar algumas dicas para criar algumas
regras novas para seu Snort.
Digamos que você tenha algum tráfego exclusivo que gostaria que seu
Snort capturasse como um alerta, por exemplo, determinada conexão
para fora de sua rede ou para dentro que o Snort por padrão não iria
assumir tal tráfego como alerta.
Vamos ver um exemplo simples de como gerar tal regra. Supondo que você já tenha o Snort rodando e configurado para utilizar as regras que estão guardadas em /etc/snort/rules, vamos começar uma análise simples sobre o padrão das regras.
Aqui está a forma geral das regras:
action proto src_ip src_port direction dst_ip dst_port (options)
Vamos criar um exemplo prático. Digamos que você gostaria de coletar pacotes que chegam em seu servidor SSH porque você ficou sabendo de um suposto exploit para sua versão do daemon, poderíamos criar uma regra similar a esta:
/* Nosso ip fictício seria 192.168.1.1 */
activate tcp any any -> 192.168.1.1 22 (content:"/bin/bash"; activates:1; \
msg:"Possível exploração de Buffer Overflow em SSH";)
dynamic tcp any any -> 192.168.1.1 22 (activated_by:1; count:100)
Outra coisa muito interessante que devemos analisar sobre explorações overflow é a seguinte, sempre que vai haver uma exploração desse tipo remotamente, a primeira coisa que o exploit faz e enviar requisições com NOPs (0x90), então seria inteligente colocar um trigger para esse tipo de
chamada:
alert tcp any any -> any any (msg:"Possível Exploit"; content:"|90|";)
Assim qualquer tráfego contendo NOPs seria identificado e possíveis tentativas de overflow seriam detectadas.
Esse capítulo foi só para o pessoal pegar gosto pela coisa, na internet tem muita documentação sobre como criar regras para Snort e não vou me ater a reinventar a roda. Portanto pesquisas se fazem necessárias.
[5] Comentário enviado por engos em 08/07/2004 - 11:18h
Fiz um artigo praticamente sobre o mesmo assunto, mas diria que seria um pré-requisito para o seu, só estou esperando ser postado... seria legal ter uma crítica sua que com esse artigo ganhou meu respeito.
O interessante é que você colocou bastante coisa importante e explicou algumas, mas outras não.
Tirando as explicações que ficaram faltando, outras estão um pouco fraca, acho que isso foi um erro do artigo, pois deixou algo do tipo: "Aqui estão os comandos, se virem para saber se podem ou não fazer e o que vai/pode acarretar futuramente".
No geral gostei do artigo como um todo, mas achei muito fraca a explicação, pois nem todos vão entender o que você colocou, eu mesmo fiquei com muitas dúvidas no Snort.
Continue com os artigos que esse foi interessante...
[6] Comentário enviado por y2h4ck em 08/07/2004 - 22:07h
Caro Engos, obrigado pela crítica... alguns termos quero deixar claros.. como disse no início do Artigo, eu não considero ele como um "como fazer" mas sim um " como buscar ". Quero mostrar algumas soluções interessantes para o pessoal, como vc disse algumas eu dei mais atenção devido a não serem tão trivais, como por exemplo fuzzy no OpenBSD ... poucos aqui ja utilizaram. Questão do snort... no próprio site do snort temos muita documentação em PDF mostrando como fazer regras para o mesmo e então decidi não gastar o tempo falando sobre algo ja tão documentendo.
[7] Comentário enviado por y2h4ck em 08/07/2004 - 22:21h
ah só pra completar a questão de "Aqui estão os comandos, se virem para saber se podem ou não fazer e o que vai/pode acarretar futuramente", não sei onde o senhor viu isso ... porem apenas disse que PESQUISAS SE FAZEM NECESSÁRIAS... alguem que cre piamente em algo que leh ... realmente não está apto a fazer nada ... devemos ler e pesquisar sobre o assunto que lemos... como disse ... e um "como pesquisar"... portanto, encerro aqui o ensejo :)
[9] Comentário enviado por agk em 08/07/2004 - 22:50h
Ótimo artigo, ajuda a abrir os olhos para alguns pontos importantes para a proteção do sistema, que comumente passam desapercebidos pelos administradores de segurança/redes.
[11] Comentário enviado por mrfreeze em 09/07/2004 - 00:05h
Otimo artigo.
Achei muito boa a ideia de dar um overview de assuntos variados sobre a seguranca de sistemas *BSD e Linux.
Considero esse metodo muito eficiente para liberar a imaginacao dos leitores. Essas pequenas dicas "liberam a mente dos leitores" deixando eles livres para pesquisarem o assunto que lhes forem uteis.
[13] Comentário enviado por removido em 30/10/2004 - 20:33h
A minha compilação - mdk 10.0 dá o seguinte erro:
Cracktest.c:6:19: crack.h: No such file or directory
Cracktest.c: In function `main':
Cracktest.c:14: error: parse error before '{' token
Cracktest.c: At top level:
Cracktest.c:18: error: parse error before "else"
Cracktest.c:21: warning: parameter names (without types) in function declaration
Cracktest.c:21: error: conflicting types for `exit'
/usr/include/stdlib.h:612: error: previous declaration of `exit'
Cracktest.c:21: warning: data definition has no type or storage class
[23] Comentário enviado por fabri em 10/10/2006 - 16:15h
Achei este artigo Módulo Security News , que voces acham......
Tô cum mêdo...
fabri
"Softwares de código aberto têm mais brechas de segurança que proprietário, diz pesquisa
Aplicativos proprietários são em média cinco vezes mais seguros se comparados a projetos open source
Da redação
DATA - 09 Out 2006 FONTE - Módulo Security News
O Departamento de Segurança Nacional dos EUA, em parceria com a Universidade de Standford e a desenvolvedora de software Coverity, analisou os 50 maiores projetos de software de código aberto na atualidade e concluiu que eles apresentam mais brechas de segurança do que softwares de código proprietário.
A análise feita pelas três instituições demonstra que o código proprietário é, em média, cinco vezes mais seguro. O estudo utilizou um detector de erros automático e nenhum software de código aberto dos projetos avaliados apresentou um número menor de vulnerabilidades em comparação a aplicativos proprietários. Como exemplo, a pesquisa citou que um código proprietário desenvolvido por uma empresa aeroespacial apresenta um nível de segurança cinco vezes maior que o mais seguro dos códigos open source."
[24] Comentário enviado por slaypher em 26/01/2007 - 19:39h
Olá,
Um bom artigo mesmo, mas gostaria de saber, é possível aplicar FPFuzzy em máquinas GNU/Linux? Eu procurei na Internet e não encontrei nada que me ajudasse a fazer isso. Alguma dica?