El equipo de BlockSec ha descubierto recientemente dos vulnerabilidades significativas en un contrato de colección digital. Este contrato se encuentra en la red Ethereum, y una de las vulnerabilidades podría resultar en un ataque de denegación de servicio, bloqueando los activos de los usuarios. Afortunadamente, esta vulnerabilidad no ha sido explotada. La otra vulnerabilidad, más grave, ha llevado a que más de 34 millones de dólares en fondos del proyecto queden permanentemente bloqueados en el contrato, sin posibilidad de retiro.
La primera vulnerabilidad se encuentra en la función de procesamiento de reembolsos. Esta función realiza reembolsos a todos los usuarios mediante un bucle, pero si hay un usuario con un contrato malicioso, puede rechazar el reembolso y provocar un retroceso de la transacción, lo que afectaría a las operaciones de reembolso de todos los usuarios. Para evitar problemas similares, se sugiere que el equipo del proyecto considere las siguientes formas de reembolso seguro:
La restricción es que solo las cuentas de usuarios normales pueden participar en el proyecto.
Utilizar tokens envueltos en lugar de tokens nativos
Diseñar un mecanismo para que los usuarios soliciten activamente reembolsos, evitando reembolsos masivos.
La segunda vulnerabilidad se debe a un error lógico en el código. En la función para extraer fondos del proyecto, hay una declaración condicional, pero esta compara variables incorrectas. Esto provoca que la condición nunca se cumpla, lo que impide que el equipo del proyecto extraiga los fondos del contrato. Actualmente, más de 34 millones de dólares en activos están bloqueados en el contrato.
Este incidente destaca una vez más que incluso los proyectos reconocidos pueden cometer errores fundamentales. El equipo de desarrollo debe redactar suficientes casos de prueba durante el proceso de desarrollo del proyecto y tener una conciencia básica de seguridad. Aunque en el ámbito de las finanzas descentralizadas, las auditorías de seguridad se han convertido en una práctica habitual, en los proyectos de coleccionables digitales, las auditorías de seguridad parecen no recibir la atención adecuada. Esta negligencia ha llevado directamente a pérdidas financieras masivas.
Este evento debería alertar a la industria, recordando a todos los desarrolladores de proyectos de blockchain la importancia de la seguridad del código y de fortalecer los procesos de auditoría de seguridad, para prevenir que vulnerabilidades similares ocurran nuevamente. Al mismo tiempo, también resalta la importancia de los equipos de seguridad profesionales en la rápidamente creciente industria de blockchain.
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
34 millones de dólares bloqueados, una vulnerabilidad en el contrato de coleccionables digitales hace sonar la alarma de seguridad.
El equipo de BlockSec ha descubierto recientemente dos vulnerabilidades significativas en un contrato de colección digital. Este contrato se encuentra en la red Ethereum, y una de las vulnerabilidades podría resultar en un ataque de denegación de servicio, bloqueando los activos de los usuarios. Afortunadamente, esta vulnerabilidad no ha sido explotada. La otra vulnerabilidad, más grave, ha llevado a que más de 34 millones de dólares en fondos del proyecto queden permanentemente bloqueados en el contrato, sin posibilidad de retiro.
La primera vulnerabilidad se encuentra en la función de procesamiento de reembolsos. Esta función realiza reembolsos a todos los usuarios mediante un bucle, pero si hay un usuario con un contrato malicioso, puede rechazar el reembolso y provocar un retroceso de la transacción, lo que afectaría a las operaciones de reembolso de todos los usuarios. Para evitar problemas similares, se sugiere que el equipo del proyecto considere las siguientes formas de reembolso seguro:
La segunda vulnerabilidad se debe a un error lógico en el código. En la función para extraer fondos del proyecto, hay una declaración condicional, pero esta compara variables incorrectas. Esto provoca que la condición nunca se cumpla, lo que impide que el equipo del proyecto extraiga los fondos del contrato. Actualmente, más de 34 millones de dólares en activos están bloqueados en el contrato.
Este incidente destaca una vez más que incluso los proyectos reconocidos pueden cometer errores fundamentales. El equipo de desarrollo debe redactar suficientes casos de prueba durante el proceso de desarrollo del proyecto y tener una conciencia básica de seguridad. Aunque en el ámbito de las finanzas descentralizadas, las auditorías de seguridad se han convertido en una práctica habitual, en los proyectos de coleccionables digitales, las auditorías de seguridad parecen no recibir la atención adecuada. Esta negligencia ha llevado directamente a pérdidas financieras masivas.
Este evento debería alertar a la industria, recordando a todos los desarrolladores de proyectos de blockchain la importancia de la seguridad del código y de fortalecer los procesos de auditoría de seguridad, para prevenir que vulnerabilidades similares ocurran nuevamente. Al mismo tiempo, también resalta la importancia de los equipos de seguridad profesionales en la rápidamente creciente industria de blockchain.