
ioc2rpz es un lugar donde la inteligencia de amenazas se encuentra con el DNS.
ioc2rpz™: La solución de seguridad DNS - ioc2rpz™ es un potente servidor DNS que transforma los indicadores de amenazas en feeds accionables de Response Policy Zone (RPZ). Automatiza el proceso de actualización, garantizando que tu red esté protegida contra las últimas amenazas, incluidos dominios maliciosos y direcciones IP. Al convertir los feeds de IOC en RPZ, ioc2rpz™ actúa como un vínculo crucial entre la inteligencia de amenazas y la seguridad DNS, compatible con servidores DNS que soportan RPZ como ISC Bind o PowerDNS.
DNS es el plano de control de Internet. Normalmente el DNS se usa para el bien, pero:

ISC Bind es, de facto, un estándar de servidor de nombres. Con la introducción de las Response Policy Zones en ISC BIND 9.8, monitorizar y contener el malware en la capa DNS se convirtió en una tarea sencilla. RPZ es compatible con PowerDNS Recursor 4.0.0 y versiones posteriores. Knot DNS también soporta parcialmente RPZ.
En comparación con las soluciones tradicionales de protección de red, un servidor DNS puede gestionar millones de indicadores sin impacto en el rendimiento, pero no existía una forma automatizada y eficiente de mantener las zonas de política de respuesta en los servidores DNS primarios.
Normalmente, los indicadores de compromiso se distribuyen en texto plano, pero en diferentes formatos, y solo unos pocos proveedores de IOC los ponen a disposición mediante RPZ.
ioc2rpz™ es un servidor DNS personalizado que convierte automáticamente indicadores (por ejemplo, FQDN maliciosos, direcciones IP) de diversas fuentes en feeds RPZ y los mantiene/actualiza automáticamente. Los feeds pueden distribuirse a cualquier servidor DNS de código abierto y/o comercial que soporte RPZ, por ejemplo, ISC Bind, PowerDNS. Puedes ejecutar tu propio servidor DNS con filtrado RPZ en un router, un ordenador de escritorio, un servidor e incluso una Raspberry Pi. La memoria del sistema es la única limitación.
Con ioc2rpz™ puedes definir tus propios feeds, acciones y evitar comunicaciones no deseadas.
ioc2rpz™ transforma los feeds de IOC en zonas de política de respuesta (RPZ). Puedes mezclar feeds para generar un único RPZ o varios RPZ. Los dominios e IP de confianza pueden incluirse en la lista blanca. ioc2rpz™ admite la expiración de indicadores y, en consecuencia, reconstruye las zonas.
La versión actual admite: archivos locales, archivos/solicitudes a través de http/https/ftp y scripts de shell para acceder a otros tipos de recursos. Puedes usar cualquier formato de archivo si puedes escribir una REGEX para extraer indicadores y los indicadores están separados por caracteres de nueva línea y/o retorno de carro (/n, /r, /r/n).
ioc2rpz está construido sobre Erlang/OTP con un árbol de supervisión que garantiza tolerancia a fallos y recuperación automática. Consulta docs/architecture.md para obtener todos los detalles.``` ioc2rpz_app (application) └── ioc2rpz_sup (supervisor) ├── ioc2rpz_db_sup — ETS table heir process ├── ioc2rpz_tcp_sup — TCP listener pool (5 workers) ├── ioc2rpz_udp_sup — UDP listener ├── ioc2rpz_tls_sup — TLS/DoT listener pool (5 workers) [if cert configured] └── ioc2rpz_rest_sup — Cowboy HTTPS (REST API + DoH) [if cert configured]
Key modules:
| Module | Responsibility |
|--------|---------------|
| `ioc2rpz.erl` | Trabajador DNS TCP/TLS — aceptar, analizar, validar, responder |
| `ioc2rpz_udp.erl` | Oyente DNS UDP — consultas SOA |
| `ioc2rpz_conn.erl` | Obtención de fuentes IOC (HTTP/HTTPS/archivo/shell) |
| `ioc2rpz_db.erl` | Caché de zonas y paquetes basada en ETS |
| `ioc2rpz_sup.erl` | Supervisor principal, carga de configuración, programación de zonas |
| `ioc2rpz_rest.erl` | API de gestión REST (Cowboy) |
| `ioc2rpz_doh.erl` | Manejador DNS-over-HTTPS |
## Cómo usar ioc2rpz™
Puede usar ioc2rpz™ con cualquier servidor DNS que admita Zonas de Política de Respuesta (Response Policy Zones), p. ej. versiones recientes de ISC BIND, PowerDNS y cualquier servidor DNS comercial basado en estos productos (p. ej. Infoblox, Blue Cat, Efficient IP). Se proporciona un archivo de configuración de bind de ejemplo (named.conf) en la carpeta cfg.
<p align="center"><a href="http://www.youtube.com/watch?feature=player_embedded&v=bvhyMFa_mBM" target="_blank"><img src="https://raw.githubusercontent.com/Homas/ioc2rpz/master/ioc2rpz_demo.png"></a></p>