Servidor trampa
Un servidor honeypot de código abierto que detecta ataques y aporta automáticamente información sobre amenazas a la ReportedIP . Implántalo junto a tu infraestructura para interceptar a los atacantes antes de que lleguen a tus sistemas reales.
¿Qué es un honeypot?
Un honeypot es un sistema señuelo diseñado para atraer y detectar a los atacantes. Imita servicios reales, pero no tiene ninguna finalidad legítima; cualquier interacción con él es intrínsecamente sospechosa.
El servidor ReportedIP emula instalaciones de CMS vulnerables para identificar direcciones IP maliciosas. Cuando un atacante intenta un inicio de sesión por fuerza bruta, busca vulnerabilidades conocidas o escanea en busca de vulnerabilidades, el honeypot captura la dirección IP de origen y los detalles del ataque, y luego los envía automáticamente a la ReportedIP .
Emulación de CMS
El servidor honeypot simula páginas de inicio de sesión y paneles de administración de sistemas de gestión de contenidos populares. Los atacantes que intentan llevar a cabo ataques de fuerza bruta o de explotación son detectados y notificados de inmediato.
| CMS | Rutas emuladas | Detección |
|---|---|---|
| WordPress | /wp-login.php, /wp-admin/, /xmlrpc.php |
Ataques de fuerza bruta al inicio de sesión, uso indebido de XML-RPC, vulnerabilidades en plugins |
| Drupal | /user/login, /admin/ |
Intentos de inicio de sesión, firmas de Drupalgeddon |
| Joomla | /administrator/, /index.php/component/users/ |
Ataques de fuerza bruta contra el administrador, vulnerabilidades de componentes |
Analizadores de amenazas
El honeypot incluye 36 analizadores integrados que examinan cada solicitud entrante en busca de patrones y técnicas de ataque conocidos:
| Analizador | Descripción |
|---|---|
| Detección de ataques de fuerza bruta | Detecta los intentos repetidos de inicio de sesión desde la misma fuente |
| Inyección SQL | Detecta cargas útiles de inyección SQL en parámetros y encabezados |
| Cargas útiles de XSS | Detecta intentos de cross-site scripting en los datos de las solicitudes |
| Recorrido de rutas | Identifica secuencias de recorrido de directorios (../, ..\\) |
| Firmas de vulnerabilidades conocidas | Compara las solicitudes con una base de datos de vulnerabilidades CVE conocidas |
| Reutilización de credenciales | Detecta pruebas automatizadas de credenciales con diferentes combinaciones de nombre de usuario y contraseña |
| Enumeración de directorios | Detecta el escaneo sistemático de archivos y directorios confidenciales |
| Uso indebido de XML-RPC | Detecta la amplificación de pingbacks y los ataques de fuerza bruta a través de XML-RPC |
Informes automáticos
Cada ataque detectado se notifica automáticamente a la ReportedIP sin necesidad de intervención manual. Cada informe incluye:
- IP de origen: la dirección IP del atacante
- Tipo de ataque: el patrón de ataque concreto detectado
- ID de categoría: asignada a una de las 30 categorías de amenazas predefinidas
- Marcas de tiempo: hora exacta de cada incidente de ataque
Repercusión en la puntuación de confianza
Los informes de honeypots tienen un peso especial en el sistema de reputación, ya que representan una actividad maliciosa confirmada: no hay ninguna razón legítima para interactuar con un honeypot. El sistema aplica una bonificación específica por honeypot además de la puntuación de confianza básica.
| Ventaja | Detalle |
|---|---|
| Bonificación Honeypot | Se añaden hasta 25 puntos a la puntuación de confianza |
| Reducción de la atenuación temporal | Los informes mantienen su relevancia durante más tiempo; la proporción de honeypots reduce el factor de caducidad |
| Mayor ponderación de confianza | Los informes de honeypot se multiplican por honeypot_report_weight_multiplier (por defecto: 2.0x) |
| Confianza mínima | Si hay al menos dos informes de honeypot, se garantiza un nivel de confianza mínimo del 25 %. |
Fórmula de bonificación Honeypot
base_bonus = honeypot_count * base_bonus_per_report
# Diversity requirement
diversity_factor = min(unique_reporters / diversity_divisor, 1.0)
base_bonus = base_bonus * diversity_factor
# Single reporter penalty (if > 5 honeypot reports & only 1 reporter)
if honeypot_reports > threshold AND unique_reporters == 1:
penalty = 10
final_bonus = min(base_bonus - penalty, 25)
# Time dampening reduction
honeypot_ratio = honeypot_reports_count / report_count
dampening_reduction = honeypot_ratio * 0.5
time_dampening_factor = min(1.0, time_dampening_factor + dampening_reduction)
Instalación
Docker (recomendado)
La forma más rápida de empezar. Descarga la imagen oficial y ejecútala con tu clave de API:
docker run -d \
--name reportedip-honeypot \
-e API_KEY="your-api-key-here" \
-e API_ENDPOINT="https://reportedip.de/wp-json/reportedip/v2/" \
-p 8080:8080 \
ghcr.io/reportedip/honeypot-server:latest
Configuración manual
Clona el repositorio e instala las dependencias manualmente:
git clone https://github.com/reportedip/honeypot-server.git
cd honeypot-server
# Install dependencies
npm install
# Configure environment
cp .env.example .env
# Edit .env with your API key and settings
# Start the server
npm start
Configuración
Configura el servidor honeypot mediante variables de entorno. Estas se pueden establecer en tu
.env en un archivo o se pasa directamente a Docker.
| Variable | Por defecto | Descripción |
|---|---|---|
API_KEY |
— | Tu clave ReportedIP (obligatoria). Utiliza una clave con el rol «Honeypot» para disfrutar de informes ilimitados. |
API_ENDPOINT |
https://reportedip.de/wp-json/reportedip/v2/ |
URL base de ReportedIP . |
LOG_LEVEL |
info |
Nivel de detalle de los registros. Opciones: info, debug, warn. |
EMULATED_CMS |
wordpress,drupal,joomla |
Lista separada por comas de las plataformas CMS que se van a emular. |
PORT |
8080 |
El puerto en el que escucha el servidor honeypot. |
Repositorio de GitHub
El servidor honeypot es totalmente de código abierto. Se agradecen las contribuciones, los informes de errores y las sugerencias de nuevas funciones .