El 18 de abril, Avi Eisenberg fue declarado culpable de fraude por su hazaña en Mango Marketplaces en octubre de 2022. El caso ha llamado especialmente la atención porque Eisenberg rápidamente reconoció haber ejecutado el ataque de 110 millones de dólares y caracterizó sus tácticas no como un delito, sino como una “estrategia comercial altamente rentable”, apoyándose en su interpretación del dicho de que “el código es ley”.
Steven Walbroehl es cofundador y director de tecnología de Halborn, una empresa de ciberseguridad especializada en empresas blockchain.
Eisenberg también intentó justificar sus actividades de una segunda manera: enmarcando las ganancias como una “recompensa por errores” o una recompensa por identificar una vulnerabilidad. Así caracterizaron las partes un acuerdo en el que Eisenberg devolvió unos 67 millones de dólares a Mango, pero se quedó con los 47 millones restantes, a cambio de la promesa de no presentar cargos. Eso la habría convertido en la mayor recompensa por errores de la historia.
He sido un profesional de la ciberseguridad durante 15 años y yo mismo he buscado recompensas por errores. Créanme cuando digo: así no es como funcionan las recompensas por errores.
Pero el incidente también ilustra por qué incluso las recompensas por errores adecuadas son controvertidas entre los expertos en ciberseguridad. Si bien tienen su lugar en un enfoque de seguridad integral, pueden simplemente crear una ilusión de seguridad si se usan de forma aislada. Peor aún, pueden crear motivos perversos y rencor que aumentar riesgo en lugar de mitigarlo – especialmente para proyectos de criptografía y blockchain.
Muchos otros criptoatacantes han devuelto fondos después de tomarlos, por ejemplo en los ataques a Poly Community y Euler Finance. Es un fenómeno criptográfico exclusivo que algunos han llamado «recompensas por errores retroactivos». En un principio vago, la plan es que los atacantes han encontrado una vulnerabilidad en un sistema y que el dinero que reciben es de alguna manera una recompensa justa por su descubrimiento. En la práctica, sin embargo, estos incidentes se parecen más a negociaciones con rehenes, en las que las víctimas esperan engatusar o presionar al atacante para que devuelva el dinero.
No apruebo que los piratas informáticos tomen rehenes financieros, pero como ex cazarrecompensas de errores, no puedo negarle cierta justicia poética. Más de una vez, he alertado a empresas con programas de recompensas sobre vulnerabilidades graves o críticas, sólo para que desestimen o ignoren los riesgos durante meses, o incluso años. Puedo entender perfectamente la frustración que podría llevar a un investigador de seguridad joven o ingenuo en esa situación a simplemente enriquecerse con sus conocimientos: hacer un Breaking Negative y pasar de sheriff de “sombrero blanco” a ladrón de bancos de “sombrero negro”.
Un problema central es que los proyectos que ofrecen recompensas tienen muchos incentivos para pagarlas con la menor frecuencia y el menor costo posible. Obviamente, existen costos financieros, pero le sorprendería saber con qué frecuencia un equipo niega la gravedad de un mistake reportado simplemente para proteger su propia reputación, mientras deja a los usuarios en riesgo continuo. Esa negación puede adoptar numerosas formas, como declarar errores «fuera del alcance» de una recompensa publicada. A veces, los desarrolladores de piel fina incluso amenazan con emprender acciones legales contra los investigadores que se han acercado adecuadamente a ellos con errores graves.
Puede ser increíblemente frustrante para un investigador dedicar horas interminables a la búsqueda de una “recompensa por errores”, sólo para que sus hallazgos sean descartados o incluso vueltos en su contra. Hacer algo destructivo, como robar mucho dinero, puede incluso parecer una forma razonable de obtener resultados cuando te han ignorado. Esa es la lógica retorcida detrás de Avi Eisenberg tratando de posicionar su robo como una “recompensa por errores”: perder 47 millones de dólares es un empujón bastante grande para solucionar una vulnerabilidad.
La frustración de algunos cazarrecompensas es inextricable de otra deficiencia de las recompensas por errores: generalmente invitan a muchos envíos que no son útiles. Por cada error genuino reportado, un proyecto podría recibir docenas o incluso cientos de informes que no conducen a ninguna parte. Honestamente, un equipo podría pasar por alto presentaciones de alta calidad mientras analiza toda esa basura. En términos más generales, buscar una aguja en el pajar de las recompensas por errores puede consumir tanto tiempo y energía del private que contrarresta los ahorros de costos que un programa de recompensas podría parecer ofrecer.
Las recompensas por errores también son excepcionalmente riesgosas para los proyectos blockchain en varios sentidos. A diferencia de, por ejemplo, una aplicación para Apple iphone, es difícil probar completamente una herramienta basada en blockchain antes de que se haya implementado. Los proyectos de software package convencionales a menudo permiten que los cazadores de errores intenten romper las versiones de preproducción de software, pero en criptografía, las vulnerabilidades pueden surgir de las interacciones de un sistema con otros productos en cadena.
El truco Mango de Eisenberg, por ejemplo, se basó en oráculos de precios y habría sido difícil o imposible de simular en un entorno de prueba. Esto puede hacer que los cazarrecompensas prueben ataques en los mismos sistemas donde usuarios reales tienen dinero en juego, y pongan en riesgo ese dinero actual.
También me preocupa el hecho de que tantos programas de recompensas de blockchain permitan envíos anónimos, que son mucho más raros en la ciberseguridad convencional. Algunos incluso distribuyen recompensas sin controles de identidad es decir, no tienen plan de a quién le están pagando la recompensa.
Esto presenta una tentación realmente siniestra: los codificadores de un proyecto pueden dejar errores en su lugar, o incluso introducir errores críticos, y luego dejar que un amigo anónimo «encuentre» e «informe» los errores. El informante y el cazador de errores podrían luego dividir la recompensa, lo que le costaría mucho dinero al proyecto sin hacer que nadie estuviera más seguro.
A pesar de todo esto, las recompensas por errores todavía tienen un papel que desempeñar en la seguridad de blockchain. La plan básica de ofrecer una recompensa para atraer una enorme diversidad de talentos que intenten romper su sistema sigue siendo sólida. Pero con demasiada frecuencia veo proyectos de blockchain que dependen en gran medida o incluso exclusivamente de una combinación de programas de recompensas y supervisión interna de seguridad. Y esa es una receta para el desastre.
Después de todo, hay una razón por la que los cazarrecompensas en las películas son a menudo «sombreros grises» moralmente ambiguos: piense en Boba Fett, «El hombre sin nombre» de Clint Eastwood o el Dr. King Schulz de «Django desencadenado». Son mercenarios, están ahí para recibir un pago único y notoriamente indiferentes al panorama más amplio del problema que están resolviendo. En el extremo más alejado del espectro, puedes encontrar a un Avi Eisenberg, ansioso por adoptar la fachada de una “recompensa por errores” cuando ellos mismos son los verdaderos villanos.
Es por eso que los cazarrecompensas de antaño finalmente se presentaron ante un sheriff, quien tiene un deber a largo plazo para con las personas a las que protege y se asegura de que todos sigan las reglas. En términos de ciberseguridad, el papel de sheriff lo desempeñan revisores de códigos profesionales: personas con una reputación pública que proteger, a quienes se les paga independientemente de lo que descubran. Una revisión realizada por una empresa externa también mitiga el impulso defensivo equivocado de los desarrolladores internos que podrían rechazar errores reales para proteger su propia reputación. Y los especialistas en seguridad de blockchain a menudo pueden prever los tipos de interacciones financieras que destruyeron Mango Marketplaces, antes de que hubiera dinero serious en juego.
Para ser claros, la gran mayoría de los cazarrecompensas de errores realmente están tratando de hacer lo correcto. Pero tienen tan poco poder dentro de las reglas de ese sistema que no sorprende que algunos de ellos terminen haciendo un mal uso de sus hallazgos. No podemos normalizar ese comportamiento dando a explotadores como Avi Eisenberg el sello de aprobación que implica una recompensa, y los proyectos que realmente se preocupan por la seguridad de sus usuarios no deberían dejarla en manos de la multitud.