Ciberseguridad para banca, fintech y procesadores de pago

Vulnerabilidades detectadas antes del merge.

Cada pull request en su core analizado en línea, dentro del flujo de desarrollo. Cobertura sobre CWE, OWASP Top 10 y OWASP LLM Top 10.

El problema

El volumen creció. La revisión humana no.

Argentina fue el tercer país más atacado de América Latina en 2025. En junio de ese año, 19 millones de registros del BCRA aparecieron en la dark web. La Comunicación BCRA “A” 7724 ya exige gestión continua de riesgo TI y SI en toda entidad autorizada.

01

Una nueva clase de vulnerabilidad: el código generado por IA.

Copilot, Cursor y agentes internos generan código a velocidad de máquina. Patrones inseguros típicos — secretos hardcoded, manejo silencioso de errores, validación incompleta — entran a sistemas que mueven dinero.

OWASP LLM Top 10 · categorías de riesgo emergente
02

El SAST tradicional no escala al ritmo de los PRs.

Linters y scanners corren nocturnos sobre todo el repo, vuelven con miles de hallazgos llenos de ruido legacy y nadie los lee. La revisión llega tarde.

Detección temprana: remediar antes del merge cuesta menos
03

El costo de un incidente se concentra en finanzas.

Liquidación, posteo, antifraude, mensajería SWIFT/ISO-20022 — un defecto en estos sistemas tiene impacto regulatorio y reputacional desproporcionado.

BCRA “A” 7724: exige gestión continua de riesgo TI en banca AR
Producto

Una sola decisión: nada se integra sin revisar.

Vora se conecta a su organización de GitHub o GitLab y revisa cada pull request en el momento. Trabaja al lado de sus revisores — no los reemplaza.

01

Auditoría continua por PR.

Cada cambio que toca código sensible recibe revisión inline en menos de 90 segundos. Cobertura SWC, CWE e invariantes propias del repositorio.

02

Control sobre código generado por IA.

Detecta y marca pull requests con alta proporción de código asistido. Los patrones inseguros típicos de LLMs quedan señalados antes de la integración.

03

Reducción de riesgo en repositorios críticos.

Hallazgos categorizados por delta: lo que el PR introdujo, lo que ya existía, lo que resuelve. Su equipo solo ve lo que cambió.

04

Trazabilidad para auditoría regulatoria.

Cada hallazgo y decisión con evidencia auditable. Logs exportables a SIEM o GRC. Alineado con BCRA “A” 7724, CNV y Ley 25.326.

Cómo funciona

Del pull request al merge. Sin cambio de contexto.

01 · GitHub

Pull request abierto

Webhook a Vora. Sin scanner que correr ni binarios para instalar.

02 · Revisión

Comentarios inline

Vora deja anotaciones en las líneas exactas. Categoriza nuevos · heredados · resueltos por el PR.

03 · Slack

“@vora arreglá H-1”

Reescribe la función, prueba la build, abre un PR de fix vinculado al original.

04 · Merge

Decide su equipo

Vora nunca integra código. Su CI, sus revisores, su firma final.

github.com/banco-acme/core-banking · pull/2 814 · feat(accounts): búsqueda por ID de cliente
open · +24 −0
open

feat(accounts): agregar búsqueda por ID de cliente · #2814 · 2 commits · m.acosta wants to merge into main

+24 −0
src/main/java/com/bancoacme/accounts/AccountRepository.java+5−082 % generado con IA
15 }
16
17+ public Account findByCustomerId(String customerId) {
18+ return jdbc.queryForObject(
19+ "SELECT * FROM accounts WHERE customer_id = '" + customerId + "'",
20+ accountMapper);
21+ }
Vvora-bot · revisión sobre AccountRepository.java:19 · hace 38 segundos

Alto · H-1CWE-89 · SQL Injection

El nuevo findByCustomerId concatena el parámetro de ID del cliente directamente en el SQL. Una solicitud con ' OR '1'='1 en la ruta devuelve todas las cuentas de la tabla — enumeración completa, sin necesidad de bypass de autenticación.

Sugerencia: parametrizar el filtro — usar ? en el SQL y pasar customerId como argumento ligado, igual a como JdbcTemplate ya se usa en el resto del archivo. Patrón LLM: el código asistido recurre a la concatenación cuando la entrada dinámica es "solo una variable".

Piloto sin riesgo

Dos semanas. Sin tocar producción.

Conectamos un repositorio de su elección en modo solo lectura. Sin commits, sin merges, sin acceso a producción. Al final, sesión ejecutiva con hallazgos y plan de adopción formal.

Cómo se ve un piloto de Vora

Día 1
Puesta en marcha técnica. 60 minutos. Conectamos la app de GitHub con permisos mínimos de lectura. Listamos los repositorios en alcance.
Día 2–3
Análisis histórico · 90 días. Vora analiza el histórico de pull requests para establecer una línea base de hallazgos heredados.
Día 4–14
Revisión inline activa. El equipo recibe comentarios sobre los pull requests nuevos. Sin bloqueo de integración. Vora observa.
Día 15
Sesión ejecutiva. Reporte por severidad · % de PRs con código IA · MTTR estimado · plan de despliegue.
Solo lectura · sin escritura en repositorios ni en producción
Datos en su VPC · sin exfiltración de código
Cancelable cualquier día · sin contrato anual
NDA y MSA estándar · listos para revisión legal
Por qué ahora

El sector financiero enfrenta una nueva clase de riesgo. Los reguladores lo reconocen.

El BCRA, a través de la Comunicación “A” 7724, exige gestión continua de riesgos de tecnología y seguridad de la información en toda entidad financiera autorizada. La CNV regula a fintechs y PSP. La revisión continua del software es la próxima exigencia natural — conviene llegar antes.

A 7724
BCRA · vigente en Argentina

La Comunicación “A” 7724 actualiza los requisitos mínimos de gestión, implementación y control de riesgos de tecnología informática y seguridad de la información para todas las entidades financieras autorizadas por BCRA.

+24M
cuentas en billeteras virtuales · AR

Argentina tiene más de 24 millones de cuentas activas en billeteras virtuales y PSP regulados — superficie crítica de software financiero alcanzada por CNV y BCRA.

CNV
alcance creciente sobre fintechs y PSP

La Comisión Nacional de Valores extiende el régimen de proveedores de servicios de pago y custodia digital. La revisión continua del código que opera estas plataformas es la próxima exigencia natural.

Empezamos con una conversación.

30 minutos con su CISO, líder de plataforma o jefe de ingeniería. Salimos con un alcance de piloto definido — o con la certeza de que aún no es el momento.