═══════════════════════════════════════════════════════════════════════════
  PCI DSS PREGUNTA 24 — PAQUETE DE EVIDENCIA
  Criptografía fuerte para acceso administrativo no-consola
  Activos auditados: cde-pool-node-01, cde-fw, microservicios PCI
═══════════════════════════════════════════════════════════════════════════

PCI DSS Q24 requiere:
  - Listar los mecanismos / tecnologías usados para administrar componentes
    dentro del alcance (servidores, dispositivos de red, apps, DB, etc.)
  - Evidenciar criptografía fuerte (SSH, HTTPS TLS 1.2+, RDP/TLS, etc.)
  - Documentar cualquier servicio inseguro (HTTP/FTP/Telnet/SSL antiguos)
    con justificación de negocio + mitigaciones.

QSA solicitó específicamente:
  - cde-pool-node-01 (= cde-38q702)
  - CDE-FW (= fintrix-production-cde-fw)
  - Microservicios del alcance (payments-api, tokenization, card-vault, auth)

═══════════════════════════════════════════════════════════════════════════
CONTENIDO DE ESTE PAQUETE
═══════════════════════════════════════════════════════════════════════════

  00-README.txt                       (este archivo)

  Nodo cde-pool-node-01 (cde-38q702) — SSH crypto:
    01-sshd-effective-config.txt      sshd -T (config efectiva en runtime)
    02-sshd-config-file.txt           /etc/ssh/sshd_config (sin includes)
    03-sshd-includes-list.txt         ls /etc/ssh/sshd_config.d/
    04-sshd-includes-content.txt      Contenido de los includes
    05-sshd-version.txt               OpenSSH version + OpenSSL version
    06-root-ssh-dir.txt               ls -la /root/.ssh/
    07-root-authorized-keys.txt       Contenido de authorized_keys (vacío)
    08-running-procs.txt              ps -ef de procesos clave
    10-openssl-version.txt            openssl version -a

  K8s API:
    11-k8s-api-tls.txt                TLS handshake al endpoint 16443

  DO API (admin de cde-fw):
    12-do-api-tls.txt                 TLS handshake api.digitalocean.com
    13-do-api-http-rejected.txt       HTTP plano → 301 a HTTPS

  Microservicios PCI + Kong:
    14-kong-tls.txt                   TLS handshake Kong proxy/admin
    23-microservices-tls.txt          Lista servicios + tipo (ClusterIP)

  Kong Admin LB — Hallazgo + Remediación:
    16-kong-admin-lb-before.json      Estado vulnerable (HTTP 8001 abierto)
    17-all-lbs.txt                    Listado de LBs DO
    18-kong-admin-lb-after.json       Estado hardened post-remediación
    19-kong-admin-lb-verification.txt Verificación final
    20-test-http-blocked.txt          Test: HTTP 8001 → timeout ✓
    21b-test-https-final.txt          Test: HTTPS 8444 desde admin IP ✓

  PostgreSQL managed:
    24-postgres-ssl.txt               doctl connection + firewall list

  Kafka:
    25-kafka-tls.txt                  Listeners + security.protocol.map

  Análisis protocolos inseguros:
    26-insecure-protocols.txt         Scan cde-fw vs lista FTP/Telnet/HTTP

═══════════════════════════════════════════════════════════════════════════
RESUMEN EJECUTIVO
═══════════════════════════════════════════════════════════════════════════

Activo                       | Mecanismo admin no-consola | Crypto         | Estado
─────────────────────────────|────────────────────────────|────────────────|────────
cde-pool-node-01 (cde-38q702)| SSH (defense-in-depth)     | OpenSSH 10.0p2 | ✓
                             | (sin keys + cde-fw filtra) | AES-GCM/ChaCha | OK
                             |                            | KEX post-quantum|
cde-fw                       | DO Web Console             | TLS 1.3 + AES- | ✓
                             | DO REST API + doctl        | 256-GCM-SHA384 | OK
K8s control plane            | kubectl (mTLS) → 16443     | TLS 1.3        | ✓
                             |                            | (DO k8saas CA) | OK
Kong API Gateway (proxy)     | Externa: 443 TLS 1.3       | TLS 1.3        | ✓
                             |                            | AES-256-GCM    | OK
Kong API Gateway (admin)     | Antes: HTTP 8001 público   | ⚠ REMEDIADO    | ✓
                             | Ahora: HTTPS 8444 firewall | TLS 1.3 + IP   | OK
                             |        a IP admin única    | whitelist      |
Microservicios PCI           | ClusterIP solo intra-cluster| mTLS Cilium   | ✓
(payments-api, tokenization, | + Kong upstream            |                | OK
card-vault, auth-service)    |                            |                |
PostgreSQL managed           | psql sslmode=require       | TLS 1.2+ forced| ✓
                             | port 25060 + IP whitelist  | DO managed     | OK
Kafka                        | Cliente Kafka              | PLAINTEXT      | ⚠
                             | (interno, ClusterIP)       | + microseg     | Mitigado
                             |                            | (Cilium)       | (ver doc)

PROTOCOLOS INSEGUROS:
  - cde-38q702: NINGÚN proceso escucha en puerto 21/23/80/161/513/514
  - cde-fw inbound: rango 1-65535 abierto SOLO a tag 'compliance-scanner'
    (VAPT VM de ControlCase, requerido por PCI Req 11.3.1)
  - cde-fw outbound: solo TCP/443, TCP/5432, TCP/9092, UDP/53

HALLAZGO Y REMEDIACIÓN (2026-05-27):
  Durante la extracción de evidencia para Q24 se detectó que la LB del
  Kong Admin API exponía el puerto 8001 (HTTP plano) al mundo sin
  autenticación. Se remedió en la misma sesión:
    - Eliminado el forwarding rule HTTP 8001
    - Aplicado firewall allow-list: solo cidr:186.30.7.141/32 al 8444
    - Servicio admin sigue funcional vía ClusterIP (kubectl port-forward)

═══════════════════════════════════════════════════════════════════════════
Fecha de extracción: 2026-05-27
Extraído por: Gabriel Ureña (CTO Fintrixs SAS)
═══════════════════════════════════════════════════════════════════════════
