Identifique ameaças em pacotes pcap com base em vários mecanismos de detecção de tráfego

Em muitos cenários, é necessário julgar as ameaças nos pacotes de dados com base nos pacotes de dados. Para os pacotes de dados existentes, como determinar que tipo de ataque os pacotes de dados são?

O método 1 pode ser baseado na experiência.É relativamente fácil julgar ataques WEB comuns, como injeção de SQL, execução de comandos e outros ataques. No entanto, as ameaças estão sempre mudando, como as características de tráfego da mineração e as características específicas de ferramentas específicas. Muitas vezes, é difícil fazer um julgamento em primeiro lugar sem uma pesquisa e comparação aprofundadas.

O método 2 importa pacotes de dados para dispositivos específicos de fornecedores de segurança de rede, mas esses dispositivos geralmente são dispositivos comerciais. Por um lado, eles precisam ser cobrados. Por outro lado, os dispositivos comerciais geralmente levam em consideração o equilíbrio entre falsos positivos e alarmes. Os cenários a serem tratados devem ser considerados comparativamente. É complicado, e é inevitável que ocorram vazamentos.

Neste momento, se os analistas de segurança construírem ferramentas de análise de tráfego local e acumularem de forma secundária, eles podem formar armas úteis de acordo com suas necessidades. Atualmente, a indústria de segurança inclui principalmente três mecanismos para descoberta de ameaças de tráfego, ou seja, suricata, snort e zeek. Entre eles, suricata e snort são tendenciosos para a descoberta de ameaças conhecidas, incluindo vulnerabilidades conhecidas, métodos de ataque WEB conhecidos, ferramentas de hacking, malware e assim por diante. A ZEEK prefere descobrir ameaças desconhecidas por meio da busca de ameaças por meio do registro de comportamentos-chave.

Para esses três mecanismos de detecção de tráfego, você pode baixá-los do github correspondente, respectivamente, instalá-los no sistema Linux e enviar o pcap para os três mecanismos para verificação de reprodução. No entanto, o mesmo pacote de dados precisa ser operado separadamente em três mecanismos e é relativamente complicado precisar três vezes. Neste momento, você pode usar o projeto de código aberto dalton.Dalton gerencia centralmente os três mecanismos de sondagem de tráfego de suricata, snort e zeek por meio de um controlador e apresenta os resultados de maneira unificada.

Veja aqui o endereço de código aberto de dalton .Como dalton fornece serviços na forma de docker, ainda é muito conveniente de usar, então você precisa atualizar a versão do docker para a mais recente. De acordo com as instruções em dalton, da seguinte forma:

docker service docker start
./start-dalton.sh 

Neste momento, o script de instalação fará o download de vários contêineres docker, incluindo contêineres relacionados ao serviço dalton, como controller, nginx, redis, suricata, snort, zeek e outros contêineres. Depois que o dalton for instalado com êxito, ele se parecerá com a Figura 1 abaixo : Figura
insira a descrição da imagem aqui
1

Entre eles, snort, suricata e zeek são contêineres de sonda no lado do tráfego, dalton_controller é um contêiner de controle de agendamento de sonda de tráfego, dalton_web é um contêiner de IU da WEB e dalton_redis contêiner de armazenamento de fila de mensagens. Você pode ver que a porta aberta pela interface do usuário é a porta 80, então você pode acessar diretamente o endereço IP correspondente, conforme mostrado na Figura 2: Figura 2
insira a descrição da imagem aqui
Selecione
a versão do mecanismo especificada (geralmente selecione a nova versão) e a regra definida para jogar de volta o pcap, tomando o suricata como exemplo, conforme Figura 3:
insira a descrição da imagem aqui
A Figura 3
é conforme mostrado na Figura 3 acima. A versão 6.0 do Suricata é selecionada, o conjunto de regras é o conjunto de regras que vem com o Suricata e o log de saída é o log no formato de véspera que vem com o Suricata. A chave para essa comparação é a seleção do conjunto de regras.Como o suricata vem com relativamente poucas regras, é recomendável enriquecer o conjunto de regras do suricata, que também é o aspecto que os analistas de segurança precisam acumular. É muito importante para os analistas de segurança coletar conjuntos de regras que atendam aos seus próprios requisitos. O link a seguir é um conjunto comum de regras no github

https://github.com/klingerko/nids-rule-library
https://github.com/al0ne/suricata-rules
https://github.com/travisbgreen/hunting-rules
https://github.com/xNymia/Suricata-Signatures

Entre eles, o conjunto de regras envolvido na biblioteca de regras nids é relativamente rico, conforme mostrado na Figura 4 abaixo: A Figura 4
insira a descrição da imagem aqui
mostra
que algumas das principais empresas de segurança, como proofpoint, fornecem conjuntos de regras abertos e conjuntos de regras pagos taxa é de 5.000 Yuan RMB), as mudanças nas regras tendem a estar relacionadas principalmente aos métodos de ataque. O Talos Labs também mantém um conjunto de regras de vulnerabilidade para o snort (a taxa anual é de cerca de 300 yuans, o que é relativamente muito barato), e o conjunto de regras modificado é principalmente inclinado a regras relacionadas a vulnerabilidades conhecidas. Além disso, existem muitas fontes de inteligência de código aberto, como abuso e osint, incluindo inteligência de certificado digital, inteligência de IP malicioso e pacotes rígidos de nomes de domínio maliciosos. Recomenda-se incluir esses conjuntos de regras e usá-los como uma biblioteca de análise pessoal. Coloque o conjunto de regras atualizado regularmente acima no diretório rulesets no diretório dalton e, em seguida, você pode selecioná-lo na página. Nos 3 conjuntos de regras mostrados acima.

A Dalton fornece várias formas de alarmes, e os resultados da operação são mostrados na Figura 5 abaixo:

insira a descrição da imagem aqui
Figura 5
De um modo geral, você só precisa ver o alarme no alerta. Se quiser ver mais conteúdo e fazer trabalhos relacionados à caça de ameaças, você pode ver o conteúdo em eve json, conforme mostrado na Figura 6 abaixo: Figura 6 pode
insira a descrição da imagem aqui
ser
visto Além dos alertas, o conteúdo em eve json também fornece a capacidade de registrar eventos anormais de anomalia e informações de metafonte de vários protocolos, como smb, decrpc, etc., e pode analisar mais conteúdo possível da perspectiva de anormal descoberta de comportamento.

O que foi dito acima é apenas uma introdução à parte suricata em dalton, e o mesmo vale para snort e zeek. Vale ressaltar que não importa o tipo de mecanismo de inspeção de tráfego, o conjunto de regras é extremamente importante. Como os cenários dos analistas de segurança pessoal não precisam considerar o impacto do desempenho e os cenários de tráfego que eles enfrentam também são muito simples, é recomendável coletar todos os conjuntos de regras no github para snort, suricata e zeek e atualizar eles regularmente para que as ferramentas locais A capacidade de detecção atinja o extremo. No analista de segurança de acompanhamento em minha coluna, aqui , o seguinte conteúdo será apresentado:

  • Como criar uma coleção pessoal de regras de detecção local com base no github.
  • Com base no log de análise de Dalton, é realizada a associação de pontos de tecnologia de ataque, uma ferramenta de detecção de eventos de segurança é construída e a atualização de alarmes de regra para eventos de segurança é concluída.

Este artigo é um artigo original dos jovens da vila de CSDN, e não pode ser reproduzido sem permissão. O blogger linka aqui .

Acho que você gosta

Origin blog.csdn.net/javajiawei/article/details/129969452
Recomendado
Clasificación