O SLIPS é um poderoso sistema de prevenção de intrusões e detecção de intrusões que usa o aprendizado de máquina para detectar comportamentos maliciosos no tráfego de rede. O SLIPS pode funcionar com o tráfego de rede em tempo real, arquivos PCAP e fluxos de rede de ferramentas populares como Suricata, Zeek/Bro e Argus. A detecção de ameaças SLIPS é baseada em uma combinação de modelos de aprendizado de máquina treinados para detectar comportamentos maliciosos, mais de 40 feeds de inteligência de ameaças e heurísticas especializadas. Os deslizamentos reúnem evidências de comportamento malicioso e usam limiares extensivamente treinados para desencadear alertas quando evidências suficientes são acumuladas.
O SLIPS é o primeiro IDS/IPS baseado em aprendizado de máquina de software livre para pontos de extremidade. Foi criado em 2012 por Sebastian Garcia no Stratosphere Laboratory, AIC, Fee, Universidade Técnica Tcheca em Praga. O objetivo era oferecer um IDS/IPS local que alavanca o aprendizado de máquina para detectar ataques de rede usando análise comportamental.
O SLIPS é suportado apenas no Linux, MacOS e Windows Dockers. As características de bloqueio do SLIPS são suportadas apenas no Linux
O SLIPS é baseado em Python e depende da estrutura de análise de rede Zeek para capturar tráfego ao vivo e analisar os PCAPs. e depende de redis> = 7.0.4 para comunicação interprocessante.
A maneira recomendada de usar o SLIPS está no Docker.
docker run --rm -it -p 55000:55000 --cpu-shares "700" --memory="8g" --memory-swap="8g" --net=host --cap-add=NET_ADMIN --name slips stratosphereips/slips:latest
./slips.py -f dataset/test7-malicious.pcap -o output_dir
cat output_dir/alerts.log
No macOS, não use - -net = host se você deseja acessar as portas do contêiner interno do host.
docker run --rm -it -p 55000:55000 --platform linux/amd64 --cpu-shares "700" --memory="8g" --memory-swap="8g" --cap-add=NET_ADMIN --name slips stratosphereips/slips_macos_m1:latest
./slips.py -f dataset/test7-malicious.pcap -o output_dir
cat output_dir/alerts.log
Para mais opções de instalação
Para uma explicação detalhada dos parâmetros de deslizamento
Para verificar a saída do Slips usando uma GUI, você pode usar a interface da web ou nossa interface baseada na linha de comando kalipso
./webinterface.sh
Em seguida, navegue para http://localhost:55000/ do seu navegador.
Para obter mais informações sobre a interface da web, consulte os documentos: https://stratospherelinuxips.readthedocs.io/en/devell/usage.html#the-web-interface
./kalipso.sh
Para obter mais informações sobre a interface Kalipso, consulte os documentos: https://stratospherelinuxips.readthedocs.io/en/devell/usage.html#kalipso
O SLIPS requer Python 3.10.12 e pelo menos 4 GBs de RAM para correr sem problemas.
Os deslizamentos podem ser executados em plataformas diferentes, da maneira mais fácil e recomendada, se você for um usuário do Linux, será executado no Docker.
Slips possui uma configuração de configurações/slips.yaml que contém configurações de usuário para diferentes módulos e execução geral.
Você pode alterar a largura do tempo de TimeWindow modificando o parâmetro time_window_width
Você pode alterar a direção da análise para all , se quiser ver os ataques de e para o seu computador
Você também pode especificar se deve train ou test os modelos ML
Você pode ativar as notificações pop -up de evidência, permitir bloquear, conectar seu próprio script Zeek e muito mais.
Mais detalhes sobre as opções de arquivo de configuração aqui
Os principais recursos do Slips são:
Congratulamo -nos com contribuições para melhorar a funcionalidade e os recursos do Slips.
Leia cuidadosamente as diretrizes contribuintes para contribuir para o desenvolvimento de slips
Você pode executar deslizamentos e relatar bugs, fazer solicitações de recursos e sugerir idéias, abrir uma solicitação de tração com um problema do Github resolvido e um novo recurso ou abrir uma solicitação de tração com um novo módulo de detecção.
As instruções para criar um novo módulo de detecção junto com um modelo aqui.
Se você é um aluno, incentivamos que você se inscreva no programa Google Summer of Code, que participamos como organização de hospedagem.
Verifique os deslizamentos no GSOC2023 para obter mais informações.
Você pode participar de nossas conversas em discórdia para obter perguntas e discussões. Agradecemos suas contribuições e obrigado por ajudar a melhorar o SHIPS!
Documentação do usuário
Código Docs
Se você não conseguir ouvir uma interface sem sudo, poderá executar o seguinte comando para permitir que qualquer usuário use o Zeek para ouvir uma interface não apenas root.
sudo setcap cap_net_raw,cap_net_admin=eip /<path-to-zeek-bin/zeek
Você pode participar de nossas conversas em discórdia para obter perguntas e discussões.
Ou envie um e -mail para
GNU Licença pública geral
Fundador: Sebastian Garcia, [email protected], [email protected].
Principais autores: Sebastian Garcia, Alya Gomaa, Kamila Babayeva
Colaboradores:
https://github.com/stratosphereips/stratospherelinuxips/blob/devell/changelog.md
Os vídeos a seguir contêm demos de escorregões em ação em vários eventos:
Somos gratos pelo apoio generoso e financiamento fornecido pelas seguintes organizações:
Este projeto é financiado pela NGI0 INFRUST, um fundo estabelecido pela NLNET com apoio financeiro do programa da Internet da próxima geração da Comissão Europeia. Saiba mais na página do projeto NLNET.
Seu financiamento desempenhou um papel crucial no desenvolvimento e sucesso deste projeto. Apreciamos sinceramente o compromisso deles de avançar a tecnologia e o reconhecimento dos escorregadores de valor traz à comunidade.