Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
holo — Suíte de protocolos de roteamento baseada em Rust implementando BGP, OSPF, IS-IS, RIP e VRRP com configuração modelada por YANG, automação gNMI/gRPC e fuzzing integrado para redes de alta escala e orientadas por automação. | Kitploit
Ferramentas/GitHubGitHub/holo-routing/holo
Mapeamento de RedeAuditoria de ConfiguraçãoFuzzingSegurança de RedeAnálise de DNS
GitHubholo-routing/holo

holo

Suíte de protocolos de roteamento baseada em Rust implementando BGP, OSPF, IS-IS, RIP e VRRP com configuração modelada por YANG, automação gNMI/gRPC e fuzzing integrado para redes de alta escala e orientadas por automação.

Ver Repositório
5354614há 23 diasRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

MIT licensed Build Status codecov Discord

Holo é um conjunto de protocolos de roteamento projetado para suportar redes de alta escala e orientadas à automação.

Para uma descrição do que é um protocolo de roteamento, consulte esta página da Wikipédia.

Funcionalidades

Foco em simplicidade e correção

O principal objetivo do Holo é criar uma base de código confiável, fácil de manter e extensível. Com a crescente complexidade dos protocolos de roteamento e suas extensões, é crucial ter implementações de protocolos de roteamento construídas sobre uma base robusta. Para isso, a base de código do Holo prioriza simplicidade, modularidade e documentação completa. Graças ao rigor do compilador Rust e aos extensos testes unitários, espera-se que a maioria das regressões seja detectada no início do ciclo de desenvolvimento de novos recursos. Para mais detalhes, consulte a página Arquitetura.

Pronto para automação

O Holo foi desenvolvido especificamente para redes de alta escala e orientadas à automação que exigem configuração e monitoramento programáveis usando dados estruturados e modelados. O Holo implementa nativamente módulos YANG padrão da IETF e oferece suporte a várias interfaces de gerenciamento, incluindo gRPC e gNMI nativos. Além disso, o Holo possui uma CLI independente que renderiza dinamicamente comandos a partir de módulos YANG e se comunica com o daemon Holo através de gRPC.

As alterações feitas na configuração são processadas como transações, garantindo que todas as alterações sejam aplicadas ou nenhuma delas. Esse recurso é um facilitador significativo da automação de rede, pois elimina a necessidade de recuperação de erros em aplicativos de gerenciamento. O Holo também oferece suporte a transações em toda a rede envolvendo vários dispositivos de rede. Recursos adicionais de automação de rede incluem commits confirmados e suporte a rollback de configuração.

Segurança

Por ser escrito em uma linguagem com segurança de memória, o Holo é imune a uma ampla variedade de bugs relacionados à memória e vulnerabilidades de segurança. Além das garantias de segurança fornecidas pelo Rust, o daemon Holo também reduz privilégios na inicialização. Para certas operações, como vinculação de sockets, as capabilities do Linux são usadas para obter a permissão mínima necessária pelo menor tempo possível.

O Holo também fornece proteção robusta contra o vetor de ataque mais comum em stacks de protocolos de roteamento: ataques de negação de serviço (DoS) via entrada de pacotes maliciosos. Pacotes recebidos são decodificados em tarefas assíncronas isoladas e supervisionadas, permitindo que as implementações de protocolo se recuperem graciosamente de panics, como ignorando pacotes malformados ou fechando apenas o stream TCP afetado, sem comprometer a estabilidade de todo o daemon. Além disso, graças ao design modular do Holo e ao suporte nativo para fuzzing guiado por cobertura, espera-se que a maioria dos bugs de parsing seja detectada e tratada durante o desenvolvimento.

Implementações integradas de protocolo

Alguns protocolos, como OSPF e RIP, possuem diferentes versões amplamente implantadas, tipicamente uma para IPv4 e outra para IPv6. O Holo aproveita os genéricos do Rust para ter implementações de protocolo agnósticas à versão, onde a maior parte do código é compartilhada pelas diferentes versões do protocolo. Essa abordagem reduz o custo de manutenção desses protocolos e facilita o lançamento de novos recursos que beneficiam todas as versões do protocolo.

Paralelismo

O Holo faz uso extensivo de operações assíncronas e depende do runtime Tokio para agendar tarefas e executá-las em um pool de threads. Para obter melhor desempenho, tanto requisições de I/O quanto algoritmos intensivos em CPU são delegados a tarefas separadas, maximizando a utilização de todos os núcleos de CPU disponíveis. O suporte para código independente de runtime está planejado para o futuro, assim que as abstrações necessárias forem padronizadas pela equipe da linguagem Rust.

Logging estruturado

O Holo gera mensagens de log que contêm dados estruturados, que podem ser apresentados em vários formatos, como JSON, texto, etc. Como o logging é realizado através da fachada tracing, diversos subscribers do tracing podem ser utilizados para atender a diferentes requisitos do usuário. Por exemplo, o log pode ser direcionado para um arquivo, journald, um coletor OpenTelemetry centralizado, ou qualquer combinação dessas opções com níveis de log potencialmente variados.

Bugs reproduzíveis

O Holo fornece funcionalidade de gravação e reprodução, permitindo a fácil reprodução de qualquer bug reportado pelo usuário. O daemon Holo pode ser configurado para gravar o ciclo de vida completo de uma instância de protocolo em um arquivo. Esse arquivo pode então ser reproduzido em outra máquina, reproduzindo a mesma sequência de eventos. Enquanto uma sessão de gravação pode durar horas ou dias, o processo de reprodução deve levar apenas alguns segundos. Isso é viável graças à arquitetura modular do Holo, onde todas as operações relacionadas ao tempo e de I/O são executadas em tarefas separadas e abstraídas como mensagens de evento.

Instalação

Para instruções detalhadas sobre instalação, consulte o arquivo INSTALL.md.

Plataformas suportadas

Atualmente, o Holo é compatível apenas com sistemas operacionais Linux. O suporte a WebAssembly está planejado para o futuro.

Primeiros passos

A maneira mais fácil de começar a usar o Holo é usando contêineres Docker pré-construídos em combinação com o software containerlab. Você pode encontrar uma variedade de topologias de rede pré-configuradas neste link. Essas topologias podem ser implantadas com um único comando, permitindo testar o Holo em várias configurações de rede, incluindo testes de interoperabilidade com outras implementações.

Além disso, o Holo pode ser usado onde uma pilha de roteamento for necessária, como em roteadores de software, desde que o conjunto de recursos esteja alinhado com suas necessidades específicas.

Conformidade

O Holo suporta os seguintes padrões da Internet:

BFD
  • RFC 5880 - Bidirectional Forwarding Detection (BFD)
  • RFC 5881 - Bidirectional Forwarding Detection (BFD) for IPv4 and IPv6 (Single Hop)
  • RFC 5882 - Generic Application of Bidirectional Forwarding Detection (BFD)
  • RFC 5883 - Bidirectional Forwarding Detection (BFD) for Multihop Paths
BGP
Baixar ferramenta