Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
holo — Suite de protocolos de enrutamiento basada en Rust que implementa BGP, OSPF, IS-IS, RIP y VRRP con configuración modelada en YANG, automatización gNMI/gRPC y fuzzing integrado para redes de alta escala impulsadas por automatización. | Kitploit
Herramientas/GitHubGitHub/holo-routing/holo
Mapeo de RedesAuditoría de ConfiguraciónFuzzingSeguridad de RedesAnálisis de DNS
GitHubholo-routing/holo

holo

Suite de protocolos de enrutamiento basada en Rust que implementa BGP, OSPF, IS-IS, RIP y VRRP con configuración modelada en YANG, automatización gNMI/gRPC y fuzzing integrado para redes de alta escala impulsadas por automatización.

Ver Repositorio
5354631hace 9 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Licencia MIT Estado de compilación codecov Discord

Holo es un conjunto de protocolos de enrutamiento diseñado para soportar redes de alta escala e impulsadas por automatización.

Para obtener una descripción de qué es un protocolo de enrutamiento, consulte esta página de Wikipedia.

Puede probar Holo en su navegador, sin instalar nada, en Holo Lab.

Características

Enfoque en la simplicidad y la corrección

El objetivo principal de Holo es crear una base de código confiable, fácil de mantener y extensible. Con la complejidad cada vez mayor de los protocolos de enrutamiento y sus extensiones, es crucial contar con implementaciones de protocolos de enrutamiento construidas sobre una base sólida. Con ese fin, la base de código de Holo prioriza la simplicidad, la modularidad y la documentación exhaustiva. Gracias al rigor del compilador de Rust y a las extensas pruebas unitarias, se espera que la mayoría de las regresiones se detecten temprano en el ciclo de desarrollo de nuevas características. Para obtener más detalles, consulte la página de Arquitectura.

Listo para la automatización

Holo fue desarrollado específicamente para redes de alta escala impulsadas por automatización que requieren configuración y monitoreo programables mediante datos estructurados y modelados. Holo implementa de forma nativa módulos YANG estándar de la IETF y admite múltiples interfaces de gestión, incluidos gRPC y gNMI nativos. Además, Holo cuenta con una CLI independiente que genera dinámicamente comandos a partir de módulos YANG y se comunica con el daemon de Holo a través de gRPC.

Los cambios realizados en la configuración se procesan como transacciones, lo que garantiza que se apliquen todos los cambios o ninguno. Esta característica facilita significativamente la automatización de redes, ya que elimina la necesidad de recuperación de errores en las aplicaciones de gestión. Holo también admite transacciones a nivel de red que involucran múltiples dispositivos de red. Las capacidades adicionales de automatización de red incluyen confirmación de commits y soporte de reversión de configuración.

Seguridad

Por el hecho de estar escrito en un lenguaje seguro para la memoria, Holo es inmune a una amplia variedad de errores relacionados con la memoria y vulnerabilidades de seguridad. Además de las garantías de seguridad proporcionadas por Rust, el daemon de Holo también reduce sus privilegios al iniciarse. Para ciertas operaciones, como la vinculación de sockets, se utilizan las capacidades de Linux para obtener el permiso mínimo requerido durante el menor tiempo posible.

Holo también proporciona una protección robusta contra el vector de ataque más común en las pilas de protocolos de enrutamiento: los ataques de denegación de servicio (DoS) mediante la entrada de paquetes maliciosos. Los paquetes entrantes se decodifican en tareas asíncronas aisladas y supervisadas, lo que permite que las implementaciones de los protocolos se recuperen con elegancia de los pánicos, por ejemplo, ignorando paquetes malformados o cerrando únicamente el flujo TCP afectado, sin comprometer la estabilidad de todo el daemon. Además, gracias al diseño modular de Holo y al soporte integrado para fuzzing guiado por cobertura, se espera que la mayoría de los errores de análisis se detecten y corrijan durante el desarrollo.

Implementaciones de protocolos integradas

Algunos protocolos, como OSPF y RIP, tienen diferentes versiones ampliamente desplegadas, normalmente una para IPv4 y otra para IPv6. Holo aprovecha los genéricos de Rust para tener implementaciones de protocolos agnósticas a la versión, donde la mayor parte del código es compartido por las diferentes versiones del protocolo. Este enfoque reduce el costo de mantenimiento de estos protocolos y facilita la entrega de nuevas características que benefician a todas las versiones del protocolo.

Paralelismo

Holo hace un uso extensivo de operaciones asíncronas y se apoya en el runtime Tokio para programar tareas y ejecutarlas en un grupo de hilos. Para lograr un mejor rendimiento, tanto las solicitudes de E/S como los algoritmos intensivos en CPU se delegan a tareas separadas, maximizando la utilización de todos los núcleos de CPU disponibles. El soporte para código agnóstico al runtime está previsto para el futuro, una vez que las abstracciones necesarias sean estandarizadas por el equipo del lenguaje Rust.

Registro estructurado

Holo genera mensajes de registro que contienen datos estructurados, los cuales pueden presentarse en varios formatos como JSON, texto, etc. Como el registro se lleva a cabo a través de la fachada tracing, se pueden utilizar diversos suscriptores de tracing para satisfacer diferentes requisitos del usuario. Por ejemplo, el registro puede dirigirse a un archivo, a journald, a un colector OpenTelemetry centralizado, o a cualquier combinación de estas opciones con niveles de registro potencialmente variables.

Errores reproducibles

Holo proporciona funcionalidad de grabación y reproducción, lo que permite reproducir fácilmente cualquier error reportado por el usuario. El daemon de Holo se puede configurar para grabar el ciclo de vida completo de una instancia de protocolo en un archivo. Ese archivo luego se puede reproducir en otra máquina, reproduciendo la misma secuencia de eventos. Si bien una sesión de grabación puede durar horas o días, el proceso de reproducción debería tomar solo unos segundos. Esto es factible gracias a la arquitectura modular de Holo, donde todas las operaciones relacionadas con el tiempo y de E/S se realizan en tareas separadas y se abstraen como mensajes de eventos.

Instalación

Para obtener instrucciones detalladas sobre la instalación, consulte el archivo INSTALL.md.

Plataformas compatibles

Holo se ejecuta en Linux. La base de código es en gran medida independiente de la plataforma, y las partes que interactúan con el sistema operativo, como la E/S de red, la gestión de interfaces y la instalación de rutas, están aisladas en unos pocos lugares, por lo que Holo puede portarse a otras plataformas con poco esfuerzo. También se puede compilar a WebAssembly, principalmente para ejecutar redes virtuales en el navegador.

Primeros pasos

La forma más rápida de probar Holo es Holo Lab, que ejecuta topologías de red de enrutadores Holo directamente en el navegador.

Descargar herramienta