Entrada del glosario
Ataque de reentrada (reentrancy)
Wallets y seguridadEl ataque de reentrada vuelve a entrar en el contrato antes de actualizar saldos, permitiendo retirar fondos varias veces en una transacción.
Definición
Un ataque de reentrada aprovecha un contrato inteligente que envía fondos antes de actualizar sus propios registros internos. El contrato receptor usa ese instante para volver a llamar a la función original, que todavía muestra el saldo antiguo, y repite el retiro varias veces dentro de una sola transacción. Es una de las clases de vulnerabilidad más antiguas y conocidas en contratos inteligentes y contribuyó a moldear las prácticas modernas de Solidity. Las defensas habituales son el patrón checks-effects-interactions, en el que el estado se escribe antes de cualquier llamada externa, y los guardas de reentrada, que bloquean la función mientras se ejecuta. La reentrada recuerda que en código compartido y componible cualquier llamada externa puede ceder el control a una parte no confiable.
Siguiente
Términos relacionados
Más en Wallets y seguridad
Toma de control de la cuentaEnvenenamiento de direccionesCódigo antiphishingPermisos de clave APIExplotación de puente (bridge exploit)Programa de recompensas por vulnerabilidadesSecuestro del portapapelesAlmacenamiento en frío (cold storage)Aprobación de colección (setApprovalForAll)Phishing criptoCustodial vs no custodialSeguro de custodia