$POL Nimiq explotado en Polygon: $504K de pérdida por un fallo de verificación de firmas

El contrato de swap de Nimiq en Polygon fue explotado el 16 de septiembre, con pérdidas de alrededor de $504,000. No fue un hack sofisticado; fue un error básico pero costoso.
Cómo ocurrió:

El atacante aprovechó una vulnerabilidad en la función execute() del contrato, que no verificaba las firmas de los usuarios. Hizo suplantación de una solicitud open() desde la billetera de liquidez, abrió múltiples HTLC (Contratos Hashed Time-Locked) y drenó todo el USDC, USDT0 y USDC.e. Las ganancias se consolidaron en USDC.

La respuesta de Nimiq:

Pausó todas las transacciones de stablecoins pagadas con gas en Nimiq Pay y Nimiq Wallet

Investigando un problema de seguridad relacionado con OpenGSN

Lo más importante aquí: la vulnerabilidad no estaba en Nimiq Chain ni en Nimiq Pay, sino en una capa de integración de terceros: OpenGSN.

OpenGSN (Gas Station Network) permite a los usuarios pagar el gas con tokens alternativos en lugar del token nativo de la red. Es una utilidad común, pero también es una nueva superficie de ataque.

El problema central: si execute() no verifica las firmas del usuario antes de ejecutarse, cualquiera puede suplantar solicitudes. Es un fallo básico, pero en DeFi, los fallos básicos a menudo causan grandes daños.

En comparación con hacks más grandes, $504K no es enorme. Pero es un recordatorio de que no todo exploit requiere una técnica avanzada. A veces, con una sola verificación que falta es suficiente.

Lección para los proyectos: al integrar cualquier capa de terceros, especialmente en torno a firmas y autenticación, audite cuidadosamente la lógica de verificación. Y siempre tenga un plan de respaldo para pausar el sistema cuando algo salga mal.

¿Qué crees que deberían limitar los proyectos en su dependencia de capas de integración de terceros para reducir la superficie de ataque?

Las noticias son solo para referencia, no asesoramiento de inversión. Por favor lee con atención antes de tomar una decisión.