Este repositório contém um conjunto de dados para avaliação de ataques de negação de serviço distribuídos (DDoS).
O conjunto de dados disponibilizado aqui contém informações sobre ataques DDoS e é utilizado para avaliar o desempenho de diferentes algoritmos de classificação.
Este conjunto de dados, CICDDoS2019, é referenciado no artigo "Developing Realistic Distributed Denial of Service (DDoS) Attack Dataset and Taxonomy" disponível aqui.
O artigo descreve a ameaça dos ataques de negação de serviço distribuídos (DDoS) à segurança de redes, enfatizando a busca por detectores em tempo real com baixo custo computacional. Destaca-se a importância de conjuntos de dados bem projetados para avaliar novos algoritmos e técnicas de detecção.
- Revisão abrangente de conjuntos de dados existentes e proposta de uma nova taxonomia para ataques DDoS.
- Geração do conjunto de dados CICDDoS2019, corrigindo lacunas presentes em conjuntos de dados anteriores.
- Proposta de um novo método de detecção e classificação de famílias de ataques baseado em características de fluxo de rede.
- Identificação dos conjuntos de características mais importantes para detectar diferentes tipos de ataques DDoS, com seus respectivos pesos.
"Developing Realistic Distributed Denial of Service (DDoS) Attack Dataset and Taxonomy.pdf"
Antes de usar este conjunto de dados e o código associado, certifique-se de ter instalado:
- Python (versão 3.11.1)
- Bibliotecas Python: pandas, scikit-learn, matplotlib, seaborn, etc.
-
Faça o download ou clone este repositório.
-
Execute o arquivo
nome_do_arquivo.py
para começar a trabalhar com o conjunto de dados. -
Certifique-se de definir o caminho correto para o arquivo CSV no código, alterando a variável
csv_file_path
. -
Execute o código em um ambiente Python compatível.
-
Explore os dados, visualize, e treine modelos de classificação com os algoritmos disponíveis no código.
O código disponibilizado neste repositório contém:
- Importações de bibliotecas Python necessárias.
- Leitura do arquivo CSV e manipulação dos dados.
- Preparação e pré-processamento dos dados.
- Treinamento de modelos de classificação: Logistic Regression, Decision Tree, Random Forest.
- Avaliação dos modelos e métricas de desempenho.
Os resultados dos modelos de classificação são exibidos na saída do código. Métricas como precisão, recall, F1-score, e matrizes de confusão são mostradas para cada modelo.
Contribuições são bem-vindas! Sinta-se à vontade para enviar pull requests com melhorias no código, adição de novos algoritmos ou aprimoramento da documentação.
- Davi J Leite Santos - Desenvolvimento Completo.
Este projeto é licenciado sob a licença [Nome da Licença] - veja o arquivo LICENSE.md para mais detalhes.