El mensaje venía de una cuenta a la que el trader seguía desde hacía años. Un supuesto airdrop, plazo de 24 horas, enlace directo a la página de claim. El sitio tenía buena pinta y pedía solo una firma, sin contraseña, sin seed, sin approvals, basta con pulsar «Sign». Dos segundos después, todos los NFTs y un saldo de tokens de seis cifras habían salido hacia una dirección desconocida. La firma era, por sí sola, toda la autorización.
Los wallet drainers son hoy la estafa dominante en Web3. Se saltan el robo clásico de credenciales y aprovechan los mismos mecanismos en los que las DApps ya se apoyan. Una transacción lo bastante compleja, firmada desde MetaMask o Rabby, mueve cada token, cada NFT y cada posición DeFi al smart contract del atacante. El sistema hace exactamente aquello para lo que fue diseñado.
Lo que en realidad estás firmando
Cuando un sitio Web3 te pide firmar, rara vez estás autorizando una simple transferencia. Lo normal es que estés concediendo una approval, es decir, dándole permiso a un smart contract para actuar en tu nombre. La approval clásica de ERC-20 viene a decir «el contract X puede mover hasta Y tokens Z de mi wallet». La mayoría de los drainers piden una approval infinita, o sea «puede mover todos mis tokens Z».
En el caso de los NFT existe setApprovalForAll, una única firma que le da a un contract permiso para mover todos los NFTs de una colección. Con Seaport o Permit2, órdenes complejas pueden desbloquear varios tokens a la vez con una sola firma. Y con los mensajes EIP-712 puedes firmar autorizaciones tan densas que su versión legible para humanos apenas refleja lo que está ocurriendo.
En el momento de firmar, muchos wallets muestran un escueto «This will interact with a contract». El efecto real, qué tokens se mueven, qué colecciones se ven afectadas, cuánto puede drenarse en los próximos 30 días, simplemente no aparece, o sale en hex que nadie va a leer.
Wallet drainers como servicio

Los drainers ya no se programan a mano. Hay kits listos para alquilar: Angel Drainer, Inferno, Pink, Rainbow. El comprador recibe el código del smart contract, un frontend configurable, un bot de Telegram para las alertas de estado y un reparto del botín, normalmente 20 % para el operador del kit y 80 % para el comprador.
Los kits cubren prácticamente cualquier red L1 o L2: Ethereum, Solana, Base, Polygon, BNB, Arbitrum. El sitio falso detecta de forma automática la wallet que se conecta y ofrece la función de drain adecuada para cada chain. Las víctimas ni siquiera necesitan saber en qué chain están.
Según Scam Sniffer y Chainalysis, en 2024 los usuarios perdieron más de 500 millones de dólares a manos de los drainer kits, repartidos entre cientos de miles de víctimas. En 2025 la tendencia siguió al alza, pese a las mejoras introducidas en los wallets principales.
pérdidas documentadas por drainers en 2024
víctimas individuales en un año
porción irrecuperable tras firmar
Por qué el blind signing es el verdadero problema
Para las transacciones complejas, muchos wallets se limitan a mostrar un hash y un mensaje genérico tipo «Signing this message could let the app do things on your behalf». Eso es blind signing. Existe porque interpretar en lenguaje humano las llamadas a smart contracts desde el wallet es costoso, y muchas acciones de DApp no se traducen bien.
Los drainers lo explotan de manera sistemática. El ataque envuelve la operación que autoriza todo en un mensaje de aspecto denso, casi siempre Permit2 o Seaport, que en la UI no dice gran cosa pero técnicamente transfiere todo el presupuesto de tokens. Hardware wallets como Ledger y Trezor ya se han dado cuenta y muestran parsings estructurados para las interfaces de contract más comunes, aunque solo para las que conocen.
La lección es clara: el blind signing nunca debería considerarse aceptable. Si tu wallet no es capaz de decirte qué va a pasar, te plantas. Aunque el sitio parezca serio.
Las firmas que deberían hacerte saltar

setApprovalForAll debería encender todas las alarmas en cuanto aparezca en un sitio que no has verificado a fondo. El único caso legítimo es un primer listado en un marketplace, y a estas alturas las implementaciones modernas ya deberían haber migrado a Permit2.
Las approvals ilimitadas sobre tokens ERC-20 son habituales en el DeFi del día a día, pero en un sitio desconocido toca decir un no rotundo. Si el importe es 2^256 o un número absurdamente redondo, tienes delante una firma de drainer.
Las firmas Permit2 permiten al spender mover tokens durante una hora o varios meses sin que aparezca ninguna transacción on-chain. Si un sitio desconocido te pide un Permit2, estás firmando una orden de robo preautorizada.
Las ofertas Seaport con varios ítems y direcciones de destino que no reconoces son especialmente traicioneras, porque intercambian NFTs uno a uno por importes en tokens y todo aparenta ser una venta normal.
Un browser nuevo para cada mint
El cambio operativo más eficaz es dejar de hacer interacciones Web3 desde el mismo browser en el que está abierta tu wallet principal. Una página de mint, un claim de airdrop o una DApp nueva de DeFi se abren dentro de un browser aislado. Ahí conectas una wallet que solo tenga lo justo para esa interacción y nada más. Un drainer golpea esa wallet, se queda con el saldo pequeño y nunca llega a tu posición principal.
La comunidad lo llama «burner wallet», y entre quienes mintean mucho lleva años siendo el estándar. El paso que casi todo el mundo olvida: el browser también debería ser de usar y tirar. Extensiones como MetaMask pueden conservar session storage y autorizaciones; un browser aislado, en cambio, cierra la sesión vacío y queda inmune a los replays de firma posteriores.
Llévate un escritorio entero a cualquier dispositivo
Prueba Browser.lol gratis y trabaja como en un PC desde el móvil.
Abrir mi navegador en la nubeSin descargas • Funciona en cualquier dispositivo



