
El ecosistema crypto enfrenta una nueva amenaza: inteligencia artificial con garras. Un desarrollador de Ethereum amaneció con sus fondos evaporados—y el culpable no era un hacker humano.
¿Cómo ocurrió? La IA explotó una vulnerabilidad desconocida en una transacción rutinaria. Sin malware, sin phishing clásico—solo código que aprendió demasiado bien a cazar wallets.
El costo: Aunque no se reveló el monto exacto, fuentes cercanas sugieren pérdidas en seis cifras. Todo mientras los memecoins siguen batiendo récords absurdos—prioridades, ¿verdad?
Los equipos de seguridad ya trabajan en parches, pero la pregunta persiste: ¿estamos preparados para la era de los ataques de IA autónomos?
La billetera fue víctima de una sofisticada extensión maliciosa impulsada por IA
En un preocupante incidente que pone de relieve las, la billetera de Zak Cole, desarrollador principal de Ethereum se ha visto expuesta a un robo de criptomonedas.
Cole, habría perdido fondos debido a una extensión de navegador maliciosa diseñada para comprometer las billeteras de criptomonedas. El incidente, ocurrido ayer,que robó con éxito la clave privada de Cole.
sobre el alcance de las pérdidas (se habla de unos cientos de dólares en Ether). Sin embargo, el incidente sirve como un claro recordatorio de la.
Ethereum core dev Zak Cole's crypto wallet drained by malicious AI extension. ETH $XRP https://t.co/pWz1FsBxOj pic.twitter.com/YwL08tpYFo
— XRP-WINS (@EdsonXRPWINS) August 13, 2025
Cole instaló el, que parecía legítimo (con un icono profesional, una copia descriptiva y más de 54.000 descargas). Sin embargo y a pesar de su apariencia veraz, extrajo su clave privada sin que el desarrollador se diese cuenta.
Tanto los, deben tener cuidado al instalar extensiones de navegador (deben provenir de operadores confiables). Por otro lado, lo más adecuado si instalan una hot wallet, es que esta sea extremadamente segura, como por ejemplo: Best Wallet.
Creciente tendencia de ataques de vaciado de billeteras
Este ataque pone de manifiesto una creciente tendencia de ataques de vaciado de billeteras dirigidos a desarrolladores en el ámbito blockchain.
, y a medida que la red Ethereum continúa evolucionando, la seguridad de los activos digitales sigue siendo una preocupación primordial, especialmente para quienes contribuyen activamente a su desarrollo.
4/ The Damage: Only lost a few hundred $ in ETH because I follow strict practices:
– Hot wallets for testing only
– Small amounts
– Segregated by project
– Main funds in hardware wallets
Without these practices, I'd be posting a very different thread.
— zak.eth (@0xzak) August 12, 2025
El, a menudo camufladas como herramientas legítimas, supone un riesgo significativo.
Esto esen un entorno donde muchos usuarios dependen cada vez más de soluciones basadas en navegadores para gestionar sus criptomonedas, lo que incluye el acceso a nuevas preventas de criptomonedas.
A medida que el, incidentes como el de Cole probablemente impulsen debates. La mejora de las medidas de seguridad y la educación de los usuarios sobre las posibles amenazas es un tema clave a tener en cuenta.
Leer más:
- Do Kwon se declara culpable de fraude y enfrenta una pena de 25 años de prisión
- Trader predice el precio de Ethereum: ¿Veremos a ETH alcanzar los 8500 dólares en 2025?
- El dinero institucional ahora posee el 17% de todo el Bitcoin en circulación
Table of Contents
En este artículo
La billetera fue víctima de una sofisticada extensión maliciosa impulsada por IA
Creciente tendencia de ataques de vaciado de billeteras
Leer más:
En este artículo
La billetera fue víctima de una sofisticada extensión maliciosa impulsada por IA
Creciente tendencia de ataques de vaciado de billeteras
Leer más:
window.addEventListener("DOMContentLoaded", () => {
const header = document.querySelector(".header_wrapper");
const pageLegend = document.querySelector('#multiCollapse1');
const pageLegendList = document.querySelector('#multiCollapse2');
const pageLegendCollapse = new bootstrap.Collapse(pageLegend, {toggle: document.querySelector(".toc-sticky").classList.contains('sticky')});
/**
* Changing current title
*/
(function (pageLegend) {
const titleNodes = pageLegend.querySelectorAll('.StepProgress-item__link');
if (!titleNodes.length) return;
const titles = [...titleNodes].map((itm, i) => ({
id: itm.getAttribute('data-id'),
text: itm.textContent,
level: itm.getAttribute('data-level'),
linkNode: itm,
titleNode: document.getElementById(itm.getAttribute('data-id')),
index: i,
}));
/**
* Source: https://www.sitepoint.com/throttle-scroll-events/
* @param {Function} fn
* @param {number} wait
* @returns {(function(): void)|*}
*/
const throttle = (fn, wait) => {
let time = Date.now();
return function () {
if ((time + wait - Date.now()) {
const documentScrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
let current = 0;
// Title
titles.forEach((itm, i) => {
//console.log(itm)
const itmOffsetTop = itm.titleNode ? itm.titleNode.offsetTop - 100 : 0;
if (documentScrollTop >= itmOffsetTop) {
document.getElementById('toc-current-title').innerHTML = itm.text;
document.getElementById('toc-current-title').setAttribute('data-current-id', itm.id);
document.getElementById('toc-current-title').setAttribute('data-current-level', itm.level);
current = i;
}
})
// close all list and open sub list if needed
if (document.querySelector(".toc-sticky").classList.contains('sticky')) {
document.querySelectorAll('.subList-in-progress').forEach((el) => {
el.children[1].classList.remove('show');
el.getElementsByClassName('icon-chevron-down')[0].classList.remove('up');
});
const currentEl = titles[current];
currentEl.linkNode.classList.add('show');
}
titles.forEach((itm, i) => {
itm.linkNode.parentNode.parentNode.classList.remove('current', 'is-done');
if (current > i) {
itm.linkNode.parentNode.parentNode.classList.add('is-done')
};
if (current === i) {
itm.linkNode.parentNode.parentNode.classList.add('current');
};
})
}
changeCurrentTitle();
document.addEventListener('scroll', throttle(changeCurrentTitle, 50));
})(pageLegend);
/**
* Collapse
*/
(function (pageLegend, header) {
const icon = pageLegend.parentNode.querySelector(".collapse-action-btn i");
const collapseToggle = (status) => (e) => {
if (!e.target.isEqualNode(pageLegend)) return;
icon.classList.toggle("up");
const containerHeight = pageLegend.getBoundingClientRect().height;
const showSubtitleContent = () => {
const currentId = document.getElementById('toc-current-title').getAttribute('data-current-id');
const currentLevel = document.getElementById('toc-current-title').getAttribute('data-current-level');
const currentSubTitle = currentLevel == 3 ? document.querySelector(`a[data-id="${currentId}"]`).parentNode.parentNode.parentNode : false;
if (!currentSubTitle) return;
new bootstrap.Collapse(currentSubTitle, {toggle: false}).show();
}
showSubtitleContent();
console.log(status + 'fdsfsd' + containerHeight);
if (status === 'shown' && document.querySelector(".toc-sticky").classList.contains('sticky')) {
document.querySelector('html').classList.remove('overflow-hidden');
pageLegend.classList.add('overflow-auto');
pageLegend.style.height = `calc(100vh - ${header.getBoundingClientRect().height + document.querySelector('.toc-sticky__open').getBoundingClientRect().height + 16}px)`;
} else if (status === 'hide') {
document.querySelector('html').removeClass('overflow-hidden');
pageLegend.classList.remove('overflow-auto');
pageLegend.style.height = 'auto';
}
}
pageLegend.addEventListener('shown.bs.collapse', collapseToggle('shown'));
pageLegend.addEventListener('hide.bs.collapse', collapseToggle('hide'));
})(pageLegend, header);
/**
* Collapse sub-titles
*/
(function (pageLegend) {
const collapseEls = pageLegend.querySelectorAll('.collapse');
collapseEls.forEach(function (el) {
const toggleArrowDirection = function (e) {
if (!e.target.isEqualNode(el)) return;
const id = this.getAttribute('id');
document.querySelector(`.collapse-action-btn[data-bs-target="#${id}"] .icon-chevron-down`).classList.toggle('up');
}
el.addEventListener('shown.bs.collapse', toggleArrowDirection);
el.addEventListener('hide.bs.collapse', toggleArrowDirection);
})
})(pageLegend);
/**
* Collapse main title
*/
(function (pageLegendList) {
const icon = pageLegendList.parentNode.querySelector(".collapse-action-btn i");
const collapseToggle = () => (e) => {
if (!e.target.isEqualNode(pageLegendList)) return;
icon.classList.toggle("up");
}
pageLegendList.addEventListener('shown.bs.collapse', collapseToggle());
pageLegendList.addEventListener('hide.bs.collapse', collapseToggle());
})(pageLegendList);
(function (pageLegendList) {
const collapseEls = pageLegendList.querySelectorAll('.collapse');
collapseEls.forEach(function (el) {
const toggleArrowDirection = function (e) {
if (!e.target.isEqualNode(el)) return;
const id = this.getAttribute('id');
document.querySelector(`.toc-sticky-list .collapse-action-btn[data-bs-target="#${id}"] .icon-chevron-down`).classList.toggle('up');
}
el.addEventListener('shown.bs.collapse', toggleArrowDirection);
el.addEventListener('hide.bs.collapse', toggleArrowDirection);
})
})(pageLegendList);
/**
* Sticky functionality
* Source: https://stackoverflow.com/questions/17893771/javascript-sticky-div-after-scroll
*/
(function (header, pageLegendCollapse) {
// set everything outside the onscroll event (less work per scroll)
const target = document.querySelector(".toc-sticky");
const targetListStatic = document.querySelector(".toc-sticky-list");
if (!target || !header) return;
const headerHeight = header.getBoundingClientRect().height;
const targetHeight = targetListStatic.getBoundingClientRect().height;
// -headerHeight so it won't be jumpy
const stop = targetListStatic.offsetTop + headerHeight + targetHeight;
const docBody =
document.documentElement || document.body.parentNode || document.body;
const hasOffset = window.pageYOffset !== undefined;
const applySticky = function () {
// cross-browser compatible scrollTop.
const scrollTop = hasOffset ? window.pageYOffset : docBody.scrollTop;
// if user scrolls to headerHeight from the top of the target div
if (scrollTop >= stop) {
pageLegendCollapse.hide();
// stick the div
target.classList.add("sticky");
//target.style.marginTop = `${headerHeight}px`;
} else {
pageLegendCollapse.show();
// release the div
target.classList.remove("sticky");
target.style.marginTop = "";
}
}
applySticky();
window.addEventListener('scroll', applySticky);
})(header, pageLegendCollapse);
jQuery('span.show_moretoc').click(function () {
jQuery('span.show_moretoc').hide();
jQuery('.ms_hidetoc').show();
});
});