Bentian Bentian | Documentación
Descargar v0.4.7
Auditoría de Seguridad & Privacidad · 8 min de lectura · Actualizado v0.4.7

Evidencia Técnica de Seguridad: 5 Respuestas Críticas de Ingeniería

Auditoría exhaustiva para CISOs y administradores de IT: qué datos salen de tu red, custodia de secretos en AppData, protocolo Store-and-Forward sin conexión, actualizaciones con UpdateSwapper y permisos OLEDB sobre Factusol.

En la evaluación de software para terminales de facturación, almacenes y servidores corporativos, los departamentos de CISO (Chief Information Security Officer) y los administradores de sistemas exigen evidencias técnicas auditables antes de autorizar cualquier conector. A continuación se desglosan las respuestas de ingeniería a las cinco interrogantes críticas de seguridad que blindan la arquitectura de Bentian ERP Bridge.

✓

Compromiso de Ingeniería Inmutable

Bentian ERP Bridge opera bajo una filosofía 100% Local-First: tu base de datos de Factusol jamás se replica en la nube, las comunicaciones son estrictamente salientes mediante HTTPS TLS 1.3 hacia tu propia web, y los permisos sobre Factusol están aislados en modo lectura compartida e inserción atómica de pedidos en F_PCL sin tocar facturación emitida ni registros fiscales.

Certificado por Softpedia (4.5/5) • 0/70 en VirusTotal • Firmas Ed25519 (RFC 8032)

1. ¿Qué información sale del ordenador del cliente?

Uno de los mayores temores al integrar un ERP con el comercio electrónico es la fuga de datos financieros o comerciales sensibles. En Bentian ERP Bridge, el perímetro de sincronización está quirúrgicamente acotado:

Datos que SÍ salen (Estrictamente Catálogo y Pedidos)
  • SKU / Código de artículo: Identificador comercial del producto en Factusol (ARTPCL / CODART).
  • Descripción y título comercial: Nombre del producto configurado para publicación online.
  • Precio de venta con IVA: Importe calculado a partir de la tarifa asignada al canal web.
  • Stock disponible calculado: Valor numérico resultante de la fórmula DISSTO = ACTSTO - PMP (stock real menos pedidos pendientes).
  • Descarga de pedidos web entrantes: Peticiones salientes para consultar pedidos de clientes (nombre, dirección de entrega, líneas solicitadas) directamente desde tu tienda online.
Datos que NUNCA salen (Blindaje Absoluto)
  • CERO Balances Contables: Cuentas de pérdidas y ganancias, libros mayores y balances de sumas y saldos.
  • CERO Facturas de Compras: Facturas de proveedores, costes de adquisición y márgenes brutos confidenciales.
  • CERO Datos Bancarios: Cuentas corrientes IBAN, mandatos SEPA, tarjetas de crédito o líneas de póliza.
  • CERO Información de Personal: Nóminas, salarios, contratos o datos de empleados de la empresa.
  • CERO Minería de Datos / Telemetría: Bentian no rastrea volumen de ventas ni patrones de consumo de tus clientes.

Canal de transmisión: Todo el tráfico se emite mediante peticiones salientes seguras HTTPS (Puerto TCP 443) con cifrado obligatorio TLS 1.3 dirigidas directamente al dominio de tu tienda (WooCommerce, PrestaShop, Shopify). No existe intermediación ni almacenamiento en nubes intermedias.

2. ¿Dónde se guardan las claves API y secretos?

La persistencia de credenciales y claves criptográficas sigue una estricta directiva de aislamiento en el sistema operativo Windows:

# Ubicación canónica e inmutable de configuración y secretos:
%APPDATA%\Bentian Agent\agent-config.json
# Ruta absoluta habitual: C:\Users\<Usuario>\AppData\Roaming\Bentian Agent\agent-config.json
  • Aislamiento por Listas de Control de Acceso (ACLs NTFS): En Windows, la carpeta %APPDATA% está restringida de forma predeterminada al usuario que inició sesión y a los administradores del equipo. Ningún otro usuario estándar ni proceso no privilegiado de la máquina tiene acceso de lectura.
  • Prohibición Estricta de Escritura en Program Files: El ejecutable tiene vetada la escritura en C:\Program Files\Bentian Agent\. En Windows, los usuarios estándar carecen de permisos de escritura allí, lo que generaría errores EPERM silenciados y pérdida total de configuración al reiniciar el equipo.
  • Persistencia en JSON Atómico con Respaldo Defensivo: La escritura de secretos y estado se ejecuta en dos pasos atómicos:
    1. Se escribe la configuración en un archivo temporal agent-config.json.tmp.
    2. Se ejecuta un reemplazo atómico mediante fs.renameSync con copia defensiva agent-config.json.bak.
    Este mecanismo previene la corrupción de datos ante reinicios abruptos o cortes eléctricos.
  • Claves Cifradas en Reposo: Los tokens API de WooCommerce, claves de Shopify y contraseñas de red se almacenan con cifrado local y no se exponen jamás en la interfaz gráfica del navegador sin confirmación de credenciales.

3. ¿Qué sucede si se corta la conexión a Internet?

En polígonos industriales y almacenes físicos, las interrupciones de fibra, fallos de DNS o microcortes de red son habituales. Bentian ERP Bridge implementa una arquitectura desacoplada de Store-and-Forward (Almacenar y Reenviar) que garantiza cero pérdida de pedidos:

Comportamiento Durante la Caída de Red

  • Eventos de Stock / Catálogo: Las modificaciones de existencias o precios realizadas por los dependientes en Factusol se capturan en memoria y se encolan en disco local en formato JSON atómico estructurado (.tmp + .bak). Cero desbordamiento de memoria RAM.
  • Pedidos Web Entrantes: Los clientes continúan comprando en tu tienda online (WooCommerce / PrestaShop / Shopify). La tienda retiene los pedidos en su base de datos MySQL / PostgreSQL con número correlativo inmutable.
  • Marcado de Estado Offline sin Wiping: El agente detecta la pérdida de conectividad y marca el estado interno como "Desconectado / Offline", pero jamás borra ni sanitiza destructivamente las rutas configuradas de Factusol ni las claves de acceso.

Recuperación y Drenado Automático (Reconexión)

  • Backoff Exponencial con Jitter: El agente aplica reintentos con retraso progresivo (2s, 4s, 8s, 16s...) con variación aleatoria para no saturar la CPU ni el servidor web al regresar la conectividad.
  • Drenado Secuencial FIFO: En el instante en que la conexión HTTPS responde, el agente procesa la cola local en orden cronológico estricto, sincronizando existencias e importando todos los pedidos acumulados.
  • Garantía de Idempotencia: Cada pedido se verifica contra la base de datos de Factusol mediante su ID único web. Si un pedido ya fue procesado antes del corte, se descarta limpiamente, evitando duplicidades de albaranes o pedidos.

4. ¿Cómo se gestionan las actualizaciones y los fallos?

En Windows, un proceso en ejecución tiene bloqueado su propio binario en disco por el kernel, lo que impide la auto-sobrescritura directa. Para resolver esto con seguridad de grado militar, Bentian utiliza un proceso desacoplado llamado UpdateSwapper:

Flujo Seguro de Actualización Atómica (UpdateSwapper):
1. Descarga del paquete y manifest.json en: %TEMP%\bentian-updates\
2. Comprobación criptográfica: Ed25519.verify(manifest.sha256, manifest.signature, PUBKEY) === true
3. Verificación de hash SHA-256 del binario descargado antes de tocar producción.
4. Detención ordenada de BentianAgent.exe y BentianTray.exe.
5. Backup del ejecutable actual: BentianAgent.exe -> BentianAgent.exe.bak
6. Sustitución atómica y arranque de la nueva versión.
7. Monitor de estabilidad de 10 segundos: si hay crash -> ROLLBACK AUTOMÁTICO a .bak
  • Verificación Asimétrica Ed25519 (RFC 8032): El manifiesto oficial de versiones está firmado con la clave privada de curva elíptica del autor. El agente tiene la clave pública inmutable compilada en su código. Si un proxy intermedio, CDN o atacante MitM altera un solo bit del ejecutable, la actualización se aborta de inmediato.
  • Monitor de Estabilidad de 10 Segundos: Tras arrancar el nuevo binario, el UpdateSwapper permanece activo vigilando el proceso durante 10 segundos. Si el proceso arroja un fallo imprevisto de arranque, falta de DLLs o crash en Windows, el swapper termina el proceso erróneo y restaura de forma automática e instantánea la copia previa .bak, devolviendo el servicio a producción sin dejar la empresa fuera de línea.

5. ¿Qué permisos tiene el agente sobre Factusol?

La interacción con la base de datos de Factusol (.accdb) está gobernada por el Principio de Mínimo Privilegio Operativo:

Lectura Concurrente: Modo OLEDB "Share Deny None"

Para sincronizar catálogo, familias, tarifas y existencias, el conector OLEDB utiliza estrictamente:

Mode=Share Deny None;

Esto significa solo lectura compartida no bloqueante. Ni el agente bloquea a los usuarios físicos de Factusol en las cajas de mostrador, ni los operarios bloquean al agente al emitir un ticket. Se previenen de raíz los bloqueos del archivo de cerrojo .laccdb y los errores de concurrencia 3045.

Escritura de Pedidos: Inserción Atómica Acotada a F_PCL

Para la importación de pedidos web desde la tienda online:

  • Inserción en F_PCL / F_LCL: El agente realiza inserciones atómicas exclusivamente en la tabla de Pedidos de Clientes (F_PCL) y sus líneas de detalle (F_LCL).
  • CERO Alteración de Facturas Emitidas: El agente tiene terminantemente prohibido modificar la tabla de facturación oficial (F_FAC) ni los albaranes definitivos (F_ALB).
  • Protección Veri*Factu y Ley Antifraude 11/2021: Los pedidos web se insertan en estado pendiente para su posterior validación por el personal de almacén. Los registros inmutables, firmas fiscales y encadenamientos de auditoría de Veri*Factu permanecen 100% protegidos y bajo el control exclusivo del software Factusol oficial.

6. Matriz de Cumplimiento Técnico para Departamentos CISO / IT

Resumen ejecutivo de verificación para auditorías de ciberseguridad corporativa:

Criterio de Auditoría Implementación Técnica Bentian Garantía / Cumplimiento
Exposición de Puertos Entrantes 0 puertos abiertos en Router / Firewall ✓ Cero Superficie de Ataque
Cifrado en Tránsito HTTPS TLS 1.3 directo a la tienda ✓ RFC 8446 Estricto
Custodia de Secretos %APPDATA%\Bentian Agent (ACLs NTFS) ✓ Aislamiento por Usuario
Tolerancia a Caídas de Red Cola Store-and-Forward en JSON atómico ✓ Cero Pérdida de Pedidos
Integridad de Actualizaciones Firmas Ed25519 + SHA-256 + Rollback 10s ✓ Anti-Tamper & Anti-Brick
Privilegios sobre Factusol Share Deny None OLEDB + F_PCL atómico ✓ Veri*Factu y F_FAC Intactos

¿Tienes dudas sobre la configuración en tu empresa?

Nuestro equipo de ingeniería te asiste con tu base de datos Factusol o red local.

Contactar con Soporte