Socket - REKT



Aprobaciones infinitas... el máximo salto de fe.

El puente Bungee de Socket perdió $3.3M ayer debido a un ataque que drenó las direcciones que habían aprobado previamente el contrato SocketGateway en Ethereum.

Poco después de que se activara la alarma, el equipo reconoció el hackeo, habiendo parcheado la vulnerabilidad justo 14 minutos después de que comenzara el ataque.

El proveedor de billeteras Rainbow también informó a sus usuarios, ya que los contratos de Socket son utilizados por la función de puente integrada en la aplicación. Instaron a los usuarios a verificar si su dirección se vio afectada y revocar las aprobaciones a través de la herramienta dedicada de RevokeCash.

Como muestra el ataque de más de $80M en Nochevieja en Orbit, los puentes continúan siendo un objetivo principal para los sombreros negros, y deben estar sujetos a los más altos niveles de escrutinio cada vez que se realizan cambios.

¿Por qué un error conocido llegó a producción en un puente en vivo?

Créditos: qckhp, Peckshield, Beosin

El ataque se debió a la falta de validación de la entrada de usuario contenida en una nueva ruta añadida al contrato de puenteo tres días antes del exploit.

El contrato de la ruta vulnerable en sí mismo no valida el parámetro swapExtraData, permitiendo al atacante inyectar una llamada transferFrom, y enviar activos aprobados desde las direcciones de las víctimas a su contrato de ataque.

Como señala Beosin:

No se consideró el caso en el que el solicitante transfiera 0 WETH, permitiendo al solicitante especificar otras funciones en la llamada y aún así pasar la verificación de saldo.

Dirección del atacante: 0x50df5a2217588772471b84adbbe4194a2ed39066

Contrato SocketGateway: 0x3a23f943181408eac424116af7b7790c94cb97a5

Los contratos de Socket tienen auditorías por parte de Peckshield y Consensys Diligence. Sin embargo, dado que la nueva ruta se agregó apenas tres días antes del exploit, ninguno de los auditores examinó el código vulnerable.

Los fondos robados incluyen ETH, MATIC, WBTC, WETH y DAI por un total de aproximadamente $3.3 millones.

Los activos robados permanecen en la dirección del atacante, que ha recibido un mensaje amenazando con doxear al atacante si no se paga un rescate:

100 ETH y desecharé el análisis de tiempo de enrutamiento a través de FixedFloat que te doxea. Después de 6 horas voy con Zach. Actúa rápidamente.

Las aprobaciones infinitas vuelven a atacar.

A pesar de que Bungee responde que "Bungee no solicita aprobaciones infinitas por defecto", otros protocolos que enrutan a través del contrato afectado deben adoptar la mentalidad de seguridad antes que la interfaz de usuario.

De lo contrario, es difícil creer que tantos usuarios estarían vulnerables.

Con la mayor pérdida de más de $600K y las cinco víctimas más afectadas perdiendo cada una más de $100K, esta habrá sido una lección costosa en higiene de aprobaciones para algunos.

Sin una desintoxicación periódica de revocaciones, las aprobaciones de tokens quedan a la espera de que se explote un proyecto vivo (u olvidado). Y dado que los tokens se roban directamente de las billeteras de los usuarios, no es necesario tener fondos depositados para ser víctima.

Sin embargo, todo esto podría haberse evitado simplemente no realizando actualizaciones arriesgadas y sin auditar en un contrato de puente existente.

¿Has revisado tus aprobaciones últimamente, anon?


compartir artículo

REKT sirve como plataforma pública para autores anónimos, nos deslindamos de la responsabilidad por las opiniones y contenidos alojados en REKT.

dona (ETH / ERC20): 0x3C5c2F4bCeC51a36494682f91Dbc6cA7c63B514C

aviso legal:

REKT no es responsable ni culpable de ninguna manera por cualquier Contenido publicado en nuestro Sitio Web o en conexión con nuestros Servicios, sin importar si fueron publicados o causados por Autores ANÓN de nuestro Sitio Web, o por REKT. Aunque determinamos reglas para la conducta y publicaciones de los Autores ANÓN, no controlamos y no somos responsables por cualquier contenido ofensivo, inapropiado, obsceno, ilegal o de cualquier forma objetable, que se pudiera encontrar en nuestro Sitio Web o Servicios. REKT no es responsable por la conducta, en línea o fuera de línea, de cualquier usuario de nuestro Sitio Web o Servicios.