fbpx

Hacker de protocolo DeFi Cream Finance devuelve parte de los fondos robados

Sep 8, 2021

Por Hannah Pérez  

El pirata informático no se comunicó y se desconocen los motivos que le inspiraron a devolver los fondos. Pero no es el primero que decide actuar éticamente después de perpetrar un ataque. 

***

El ataque informático que sufrió el protocolo de finanzas descentralizadas (DeFi) Cream Finance a finales del mes pasado ha dado un giro inesperado ahora que el hacker ha decidido devolver casi la totalidad de los fondos robados.

Cream Finance, una plataforma DeFi basado en Binance Smart Chain (BSC) y centrada en préstamos, fue víctima de un ataque el pasado 30 agosto que provocó pérdidas superiores a los USD $20 millones. En ese momento, el equipo del proyecto reportó a través de Twitter que el pirata informático había aprovechado de un error de reentrada que le permitió sustraer 462.079.976 de tokens AMP y 2.804,96 de Ethereum (ETH). En total, una fortuna valorada en USD $34 millones, para esa fecha.

Sin embargo, ahora la plataforma parece correr con suerte. Según informó este miércoles la firma de seguridad Blockchain, PeckShield, la billetera de múltiples firmas de Cream Finance recibió 5.152,6 ETH provenientes de la dirección del pirata informático. La suma está valorada en USD$ 18 millones para el momento de edición.

El equipo de Cream Finance no ha hecho ningún anuncio oficial sobre los acontecimientos recientes. Tampoco habían informado anteriormente si habían entrado en contacto con el pirata informático o si este se había manifestado con la intención de devolver los fondos. La transacción tampoco incluye ningún mensaje adjunto y, en todo caso, se desconoce por qué el atacante ha decidido regresar el dinero.

Cream Finance recibe parte de los fondos robados

Cream Finance es un protocolo que se inspira en la conocida plataforma DeFi de préstamos basadas en Ethereum, Compound. Permite a los usuarios prestar y pedir prestado contra una gama más amplia de activos que Compound. De hecho, hoy la plataforma agregó soporte para una variedad de tokens NFT populares, incluidos Axie Infinity, Yield Guild y Rarible.

El proyecto ha sufrido varios problemas de seguridad este año. Antes de ser víctima de hackeo en agosto, Cream Finance ya había perdido cerca de USD $37,5 millones en un ataque de préstamos rápidos, o flash loans, seis meses antes.

De acuerdo con datos de Etherscan, la dirección de Ethereum que se cree está controlada por el pirata informático, no tiene actualmente fondos. La billetera movió un total de 606 ETH restantes hace unas horas, que valen poco más de USD $2 millones a los precios actuales. Según los datos, justo antes de enviar los fondos a otra dirección, el atacante interactuó con TornadoCash, un popular mezclador de criptomonedas para preservar la privacidad de las transacciones. 

La plataforma Cream Finance no ha actualizado para comunicar a sus usuarios sobre la devolución de fondos. Su último reporte sobre el ataque fue el pasado 31 de agosto, cuando publicaron un informe post-mortem detallando lo sucedido. En ese momento, el equipo se había responsabilizado por el error que permitió al hacker llevarse los fondos. Además, habían expresado su compromiso para compensar a los usuarios afectados.

Hackers buenos salen al rescate

Esta no es la primera vez que un pirata informático se arrepiente después de atacar una plataforma de criptomonedas. Hace unas semanas, reseñamos la historia similar de un hacker “ético” que parecía sacada de un relato de ciencia ficción.

Un atacante anónimo se puso en contacto con el equipo del protocolo DeFi Poly Network después de hackearlo y llevarse la increíble fortuna de USD $600 millones. Sin embargo, él no estaba interesado en el dinero. Según expresó el hacker en una serie de mensajes adjuntados a transacciones criptográficas, solo quería demostrarle a la plataforma que había un error importante en su contrato.

Además, admitió que había actuado por “diversión“. La simpatía del atacante fue tal, que el equipo de Poly incluso le ofreció una recompensa de USD $500.000, así como un puesto como asesor en jefe del proyecto. También han habido otros casos de piratas informáticos de “sombrero blanco” cuya intensión principal es mostrar vulnerabilidades antes que robar el dinero.

Aunque cada caso es diferente. El atacante de Poly mantuvo conversaciones con el equipo todo el tiempo y al final devolvió todo el dinero. Mientras, el hacker misterioso de Cream Finance no se mostró tan carismático, ni tampoco devolvió todos los fondos -hasta ahora.


Lecturas recomendadas


Fuentes: CryptoBriefing, Twitter, Medium, archivo

Versión de Hannah Estefanía Pérez / DiarioBitcoin

Imagen de Unsplash

var lb_l_ret = {«width»:»400″,»height»:»255″,»delay»:»120000″,»coc»:»1″,»fb_id»:»Diariobitcoin»,»cooc»:»0″,»display_on_page»:»1″,»display_on_post»:»1″,»show_once»:»3″,»min»:»1″,»performance»:»2″};/**
* arvfl – ultra slim jQuery lightbox
* Version 1.7.8 – http://noelboss.github.io/arvfl/
*
* Copyright 2017, Noël Raoul Bossart (http://www.noelboss.com)
* MIT Licensed.
* Name changed to avoid conflict with other arvfl based plugins
**/
!function(e){«use strict»
function t(e,n){if(!(this instanceof t)){var r=new t(e,n)
return r.open(),r}this.id=t.id++,this.setup(e,n),this.chainCallbacks(t._callbackChain)}function n(e,t){var n={}
for(var r in e)r in t&&(n[r]=e[r],delete e[r])
return n}function r(e,t){var n={},r=new RegExp(«^»+t+»([A-Z])(.*)»)
for(var i in e){var o=i.match(r)
if(o){n[(o[1]+o[2].replace(/([A-Z])/g,»-$1″)).toLowerCase()]=e[i]}}return n}if(void 0===e)return void(«console»in window&&window.console.info(«Too much lightness, arvfl needs jQuery.»))
if(e.fn.jquery.match(/-ajax/))return void(«console»in window&&window.console.info(«arvfl needs regular jQuery, not the slim version.»))
var i=[],o=function(t){return i=e.grep(i,function(e){return e!==t&&e.$instance.closest(«body»).length>0})},a={allowfullscreen:1,frameborder:1,height:1,longdesc:1,marginheight:1,marginwidth:1,name:1,referrerpolicy:1,scrolling:1,sandbox:1,src:1,srcdoc:1,width:1},s={keyup:»onKeyUp»,resize:»onResize»},c=function(n){e.each(t.opened().reverse(),function(){if(!n.isDefaultPrevented()&&!1===this[s[n.type]](n))return n.preventDefault(),n.stopPropagation(),!1})},l=function(n){if(n!==t._globalHandlerInstalled){t._globalHandlerInstalled=n
var r=e.map(s,function(e,n){return n+».»+t.prototype.namespace}).join(» «)
e(window)[n?»on»:»off»](r,c)}}
t.prototype={constructor:t,namespace:»arvfl»,targetAttr:»data-arvfl»,variant:null,resetCss:!1,background:null,openTrigger:»click»,closeTrigger:»click»,filter:null,root:»body»,openSpeed:250,closeSpeed:250,closeOnClick:»background»,closeOnEsc:!0,closeIcon:»✕»,loading:»»,persist:!1,otherClose:null,beforeOpen:e.noop,beforeContent:e.noop,beforeClose:e.noop,afterOpen:e.noop,afterContent:e.noop,afterClose:e.noop,onKeyUp:e.noop,onResize:e.noop,type:null,contentFilters:[«jquery»,»image»,»html»,»ajax»,»iframe»,»text»],setup:function(t,n){«object»!=typeof t||t instanceof e!=!1||n||(n=t,t=void 0)
var r=e.extend(this,n,{target:t}),i=r.resetCss?r.namespace+»-reset»:r.namespace,o=e(r.background||[‘

 

‘,’

‘,’

‘,’‘,r.closeIcon,»«,’

‘+r.loading+»

«,»

«,»

«].join(«»)),a=».»+r.namespace+»-close»+(r.otherClose?»,»+r.otherClose:»»)
return r.$instance=o.clone().addClass(r.variant),r.$instance.on(r.closeTrigger+».»+r.namespace,function(t){if(!t.isDefaultPrevented()){var n=e(t.target);(«background»===r.closeOnClick&&n.is(«.»+r.namespace)||»anywhere»===r.closeOnClick||n.closest(a).length)&&(r.close(t),t.preventDefault())}}),this},getContent:function(){if(!1!==this.persist&&this.$content)return this.$content
var t=this,n=this.constructor.contentFilters,r=function(e){return t.$currentTarget&&t.$currentTarget.attr(e)},i=r(t.targetAttr),o=t.target||i||»»,a=n[t.type]
if(!a&&o in n&&(a=n[o],o=t.target&&i),o=o||r(«href»)||»»,!a)for(var s in n)t[s]&&(a=n[s],o=t[s])
if(!a){var c=o
if(o=null,e.each(t.contentFilters,function(){return a=n[this],a.test&&(o=a.test(c)),!o&&a.regex&&c.match&&c.match(a.regex)&&(o=c),!o}),!o)return»console»in window&&window.console.error(«arvfl: no content filter found «+(c?’ for «‘+c+'»‘:» (no target specified)»)),!1}return a.process.call(t,o)},setContent:function(t){return this.$instance.removeClass(this.namespace+»-loading»),this.$instance.toggleClass(this.namespace+»-iframe»,t.is(«iframe»)),this.$instance.find(«.»+this.namespace+»-inner»).not(t).slice(1).remove().end().replaceWith(e.contains(this.$instance[0],t[0])?»»:t),this.$content=t.addClass(this.namespace+»-inner»),this},open:function(t){var n=this
if(n.$instance.hide().appendTo(n.root),!(t&&t.isDefaultPrevented()||!1===n.beforeOpen(t))){t&&t.preventDefault()
var r=n.getContent()
if(r)return i.push(n),l(!0),n.$instance.fadeIn(n.openSpeed),n.beforeContent(t),e.when(r).always(function(e){n.setContent(e),n.afterContent(t)}).then(n.$instance.promise()).done(function(){n.afterOpen(t)})}return n.$instance.detach(),e.Deferred().reject().promise()},close:function(t){var n=this,r=e.Deferred()
return!1===n.beforeClose(t)?r.reject():(0===o(n).length&&l(!1),n.$instance.fadeOut(n.closeSpeed,function(){n.$instance.detach(),n.afterClose(t),r.resolve()})),r.promise()},resize:function(e,t){if(e&&t){this.$content.css(«width»,»»).css(«height»,»»)
var n=Math.max(e/(this.$content.parent().width()-1),t/(this.$content.parent().height()-1))
n>1&&(n=t/Math.floor(t/n),this.$content.css(«width»,e/n+»px»).css(«height»,t/n+»px»))}},chainCallbacks:function(t){for(var n in t)this[n]=e.proxy(t[n],this,e.proxy(this[n],this))}},e.extend(t,{id:0,autoBind:»[data-arvfl]»,defaults:t.prototype,contentFilters:{jquery:{regex:/^[#.]w/,test:function(t){return t instanceof e&&t},process:function(t){return!1!==this.persist?e(t):e(t).clone(!0)}},image:{regex:/.(png|jpg|jpeg|gif|tiff?|bmp|svg)(?S*)?$/i,process:function(t){var n=this,r=e.Deferred(),i=new Image,o=e(‘‘)
return i.onload=function(){o.naturalWidth=i.width,o.naturalHeight=i.height,r.resolve(o)},i.onerror=function(){r.reject(o)},i.src=t,r.promise()}},html:{regex:/^s*<[w!][^/,process:function(t){return e(t)}},ajax:{regex:/./,process:function(t){var n=e.Deferred(),r=e(«

«).load(t,function(e,t){«error»!==t&&n.resolve(r.contents()),n.fail()})
return n.promise()}},iframe:{process:function(t){var i=new e.Deferred,o=e(«»),s=r(this,»iframe»),c=n(s,a)
return o.hide().attr(«src»,t).attr(c).css(s).on(«load»,function(){i.resolve(o.show())}).appendTo(this.$instance.find(«.»+this.namespace+»-content»)),i.promise()}},text:{process:function(t){return e(«

«,{text:t})}}},functionAttributes:[«beforeOpen»,»afterOpen»,»beforeContent»,»afterContent»,»beforeClose»,»afterClose»],readElementConfig:function(t,n){var r=this,i=new RegExp(«^data-«+n+»-(.*)»),o={}
return t&&t.attributes&&e.each(t.attributes,function(){var t=this.name.match(i)
if(t){var n=this.value,a=e.camelCase(t[1])
if(e.inArray(a,r.functionAttributes)>=0)n=new Function(n)
else try{n=JSON.parse(n)}catch(e){}o[a]=n}}),o},extend:function(t,n){var r=function(){this.constructor=t}
return r.prototype=this.prototype,t.prototype=new r,t.__super__=this.prototype,e.extend(t,this,n),t.defaults=t.prototype,t},attach:function(t,n,r){var i=this
«object»!=typeof n||n instanceof e!=!1||r||(r=n,n=void 0),r=e.extend({},r)
var o,a=r.namespace||i.defaults.namespace,s=e.extend({},i.defaults,i.readElementConfig(t[0],a),r),c=function(a){var c=e(a.currentTarget),l=e.extend({$source:t,$currentTarget:c},i.readElementConfig(t[0],s.namespace),i.readElementConfig(a.currentTarget,s.namespace),r),u=o||c.data(«arvfl-persisted»)||new i(n,l)
«shared»===u.persist?o=u:!1!==u.persist&&c.data(«arvfl-persisted»,u),l.$currentTarget.blur&&l.$currentTarget.blur(),u.open(a)}
return t.on(s.openTrigger+».»+s.namespace,s.filter,c),c},current:function(){var e=this.opened()
return e[e.length-1]||null},opened:function(){var t=this
return o(),e.grep(i,function(e){return e instanceof t})},close:function(e){var t=this.current()
if(t)return t.close(e)},_onReady:function(){var t=this
t.autoBind&&(e(t.autoBind).each(function(){t.attach(e(this))}),e(document).on(«click»,t.autoBind,function(n){if(!n.isDefaultPrevented()){t.attach(e(n.currentTarget))(n)}}))},_callbackChain:{onKeyUp:function(t,n){return 27===n.keyCode?(this.closeOnEsc&&e.arvfl.close(n),!1):t(n)},beforeOpen:function(t,n){return e(document.documentElement).addClass(«with-arvfl»),this._previouslyActive=document.activeElement,this._$previouslyTabbable=e(«a, input, select, textarea, iframe, button, iframe, [contentEditable=true]»).not(«[tabindex]»).not(this.$instance.find(«button»)),this._$previouslyWithTabIndex=e(«[tabindex]»).not(‘[tabindex=»-1″]’),this._previousWithTabIndices=this._$previouslyWithTabIndex.map(function(t,n){return e(n).attr(«tabindex»)}),this._$previouslyWithTabIndex.add(this._$previouslyTabbable).attr(«tabindex»,-1),document.activeElement.blur&&document.activeElement.blur(),t(n)},afterClose:function(n,r){var i=n(r),o=this
return this._$previouslyTabbable.removeAttr(«tabindex»),this._$previouslyWithTabIndex.each(function(t,n){e(n).attr(«tabindex»,o._previousWithTabIndices[t])}),this._previouslyActive.focus(),0===t.opened().length&&e(document.documentElement).removeClass(«with-arvfl»),i},onResize:function(e,t){return this.resize(this.$content.naturalWidth,this.$content.naturalHeight),e(t)},afterContent:function(e,t){var n=e(t)
return this.$instance.find(«[autofocus]:not([disabled])»).focus(),this.onResize(t),n}}}),e.arvfl=t,e.fn.arvfl=function(e,n){return t.attach(this,e,n),this},e(document).ready(function(){t._onReady()})}(jQuery)
var arvlbFPPL={fbinit:!1,launched:!1,initFB:function(){«undefined»!=typeof FB&&FB.init({xfbml:!0,status:!0,cookie:!0,version:»v2.7″}),arvlbFPPL.fbinit=!0},initCode:function(){try{if(arvlbFPPL.initFB(),!arvlbFPPL.checkForLaunch())return!1}catch(e){console.log(e)}window.setTimeout(arvlbFPPL.showFaceBox,lb_l_ret.delay)},checkForLaunch:function(){return!(lb_l_ret.show_once>0&&1==arvlbFPPL.readCookie(«arevico_lb»))||!(arvlbFPPL.launched=!0)},showFaceBox:function(){1!=arvlbFPPL.launched&&(arvlbFPPL.launched=!0,lb_l_ret.show_once>0&&arvlbFPPL.createCookie(«arevico_lb»,»1″,lb_l_ret.show_once),jQuery.arvfl(jQuery(«#arvlbdata»),{type:»html»,namespace:»ArevicoModal»,persist:!0,closeOnClick:1==lb_l_ret.coc&&»background»,closeIcon:» «,beforeClose:arvlbFPPL.close,beforeOpen:arvlbFPPL.styleSettings}))},styleSettings:function(){void 0!==lb_l_ret.scroll&&0!=lb_l_ret.scroll||jQuery(«html»).addClass(«arvnoscroll»)},close:function(){jQuery(«html»).removeClass(«arvnoscroll»)},createCookie:function(e,o,n){if(n){var t=new Date
t.setTime(t.getTime()+24*n*60*60*1e3)
var r=»; expires=»+t.toGMTString()}else var r=»»
document.cookie=e+»=»+o+r+»; path=/»},readCookie:function(e){for(var o=e+»=»,n=document.cookie.split(«;»),t=0;t<n.length;t++){for(var r=n[t];" "==r.charAt(0);)r=r.substring(1,r.length)
if(0==r.indexOf(o))return r.substring(o.length,r.length)}return null},asyncReady:function(){"undefined"==typeof FB?window.setTimeout(arguments.callee,500):arvlbFPPL.fbinit||arvlbFPPL.initCode()}}
window.fbAsyncInit=arvlbFPPL.initCode,jQuery(document).ready(function(){jQuery("body").append('

‘),window.setTimeout(arvlbFPPL.asyncReady,1),2!=lb_l_ret.performance&&jQuery.getScript(«//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.7&status=1&cookie=1»,function(e,o,n){window.setTimeout(arvlbFPPL.initCode,200)})})

Información exclusiva y privilegiada

Recibe información exclusiva de los negocios de hoy en tu bandeja de entrada todas las semanas.