Cabecera blog ciberseguridad

Blockchain Pentesting: ¿Por qué es necesario?

Las pruebas de blockchain pentesting contribuyen a garantizar mayores niveles de seguridad en la plataforma

La cantidad y densidad de ataques a las plataformas que operan con blockchain, especialmente de criptomonedas, han animado el debate sobre la conveniencia de protegerlas con pentesting periódicos altamente especializados

La tecnología blockchain ha revolucionado la forma en la que gestionamos las transacciones digitales y la seguridad de los datos. Es una solución robusta y transparente, pero no infalible. Por eso son cada vez más las voces que defienden la necesidad de incorporar a su universo un concepto, blockchain pentesting, o lo que es lo mismo, la necesidad de evaluar la seguridad de cualquier aplicación o solución desarrollada con esta tecnología.

Casos que exponen la seguridad del blockchain

De la conveniencia de consolidar esta relación entre blockchain y pentesting habla a las claras la horizontalidad alcanzada por este estándar. Finanzas, salud, seguros, bienes raíces, energía… Su despliegue camina con paso firme y hoy en día es prácticamente imposible encontrar un sector crítico de la economía mundial en la que no aparezca rastro de esta tecnología.

Su potencial es enorme. Pero las amenazas que enfrenta son cada vez más evidentes. En enero del año pasado, Orbit Chain sufrió el robo de más de 80 millones de dólares tras el hackeo de la plataforma. Ese mismo mes, Gamma Strategies veía volar 3,4 millones de dólares exfiltradas a causa de un ciberataque a un protocolo de gestión de liquidez.

Mixin Network, Poloniex, Atomic Wallet, Ronin Network (el mayor golpe de la historia hasta ese momento con 625 millones robados), Nomad Bridge… La lista de plataformas de blockchain en los últimos años se ha materializado en una suerte de goteo constante. Es por todo ello por lo que el concepto blockchain pentesting ha tomado carta de naturaleza en el universo de la ciberseguridad.

1. ¿Qué es blockchain y cuáles son sus ventajas?

En esencia, blockchain es un sistema de almacenamiento de datos distribuidos que opera en una red de nodos descentralizados. El protocolo está formado por bloques encadenados que albergan datos de transacciones que se validan a través de un mecanismo de consenso.

Los expertos enumeran así las ventajas que ofrece:

  • Inmutabilidad: Los datos registrados en blockchain no pueden ser alterados sin la aprobación de la red.
  • Descentralización: No depende de una entidad central para su funcionamiento.
  • Seguridad criptográfica: Utiliza firmas digitales y hashing para proteger la información.
  • Transparencia: Todos los participantes pueden verificar las transacciones.

2. ¿Qué representa el concepto blockchain pentesting?

Blockchain pentesting es el proceso por el cual se somete a una aplicación a una evaluación de seguridad mediante la simulación de ataques reales. El objetivo de estas pruebas es identificar vulnerabilidades en los contratos inteligentes, nodos, redes y mecanismos de consenso antes de que puedan ser explotados por actores hostiles.

Los servicios de pentesting se materializan a partir de una combinación de herramientas automáticas y pruebas manuales realizadas por hackers éticos. Estos equipos identifican fallos de seguridad en las plataformas y aplicaciones de blockchain y plantean soluciones para corregirlos.

3. ¿Cuáles son las principales amenazas y vulnerabilidades?

Los ataques registrados en los últimos años han situado el foco en distintos componentes o variables de las plataformas y aplicaciones que operan con el estándar blockchain:

3.1 Vulnerabilidades en contratos inteligentes

Los principales fallos de seguridad relacionados con los contratos inteligentes son estos:

  • Ataques de reentrada: Permiten que un atacante ejecute funciones de un contrato antes de que se finalicen las transacciones previas.
  • Desbordamiento de enteros: Errores de cálculo que pueden llevar a transferencias incorrectas de fondos.
  • Falta de control de acceso: Puede permitir que usuarios no autorizados ejecuten funciones críticas.

3.2 Ataques al mecanismo de consenso

Principalmente, se han detectado dos clases de incidentes. Por un lado, los ataques del 51% en los que un actor hostil logra tomar el control de más del 50% de la red, con lo que consigue las capacidades necesarias para manipular las transacciones.

Por otro, los ataques Sybil, que consisten en la creación de identidades fake con las que se logra alterar el consenso.

3.3 Ataques a la red

En estos casos, los analistas de seguridad han detectado que los actores hostiles se centran en dos modalidades de ciberataques. La primera, ataques de denegación de servicio (DDoS) que sobrecargan la red con un volumen masivo de peticiones.

La segunda, con interrupciones de la red P2P al manipular la comunicación entre nodos para aislar ciertas partes de la red.

3.4 Riesgos en la gestión de las claves

La cuarta vulnerabilidad es, en cierta forma, un clásico de la ciberseguridad: los problemas con la gestión de claves.

La experiencia previa ha identificado incidentes de seguridad relacionados con este vector de ataque:

  • Almacenamiento inseguro de claves privadas: Puede llevar a la pérdida o robo de fondos.
  • Debilidades en la generación de claves: Facilitan la predicción de claves privadas por parte de atacantes.

Hay una última vulnerabilidad relacionada con este punto indirectamente: el cifrado inadecuado. En estos episodios, la falta de una codificación robusta facilita la posibilidad de interceptar datos sensibles.

4. Beneficios del blockchain pentesting

El blockchain pentesting no solo identifica vulnerabilidades, sino que además plantea soluciones a las empresas e instituciones, además de otras ventajas. Estas son algunas de ellas:

  • Prevenir antes que curar. Someter a una herramienta o plataforma creada con blockchain a estos ataques simulados permite identificar brechas de seguridad antes de que los actores hostiles puedan explotarlas.
  • Protección de activos críticos. El ejemplo más evidente en este caso es el de las plataformas blockchain que operan criptodivisas. Un servicio de blockchain pentesting puede resultar de enorme ayuda para sortear los robos de criptodivisas o de información que han salido a la luz pública en los últimos años.
  • Cumplimiento regulatorio. Contar con estas pruebas periódicamente contribuye a garantizar el cumplimiento de normativas como la RGPD o la obtención o renovación de certificaciones como la ISO 27001.
  • Confianza en la marca. Un ciberataque no solo puede generar pérdidas económicas. También reputacionales. Las pruebas de blockchain pentesting contribuyen a garantizar mayores niveles de seguridad en la plataforma, lo que en definitiva redundará en la credibilidad de la misma.

5. ¿Cuál es la metodología del blockchain pentesting?

El desarrollo de un pentesting en blockchain parte de una metodología estructurada que garantiza una evaluación exhaustiva de la plataforma o aplicación. El sistema, eso sí, puede variar en función de la empresa que vaya a acometer la empresa.

Estos son los pasos que, esencialmente, componen estos test de seguridad:

  1. Recopilación de información: Se obtiene información sobre la arquitectura del sistema, el tipo de blockchain utilizado y las aplicaciones involucradas. Conocer cómo funciona la tecnología y sus protocolos resulta crítico a la hora de definir el pentesting.
  2. Definición del alcance: Se determinan los objetivos del test, como contratos inteligentes, nodos o redes.
  3. Escaneo de vulnerabilidades: Se utilizan herramientas automáticas para identificar fallos conocidos. Escáneres como Mythril, Slither o Manticore son habituales en estos test a la hora de analizar contratos inteligentes.
  4. Pruebas manuales: Se simulan ataques reales para descubrir vulnerabilidades ocultas.
  5. Análisis de resultados: Se documentan los hallazgos junto con su impacto y se sugieren soluciones.
  6. Corrección de fallos: Se asesora a los desarrolladores para implementar las mejoras necesarias.
  7. Nueva evaluación: Se realizan pruebas adicionales para verificar que los fallos han sido corregidos.

6. En conclusión

Blockchain es una de las tecnologías del momento por la capacidad de ofrecer seguridad y transparencia a sus usuarios. No obstante, sus capacidades no están a salvo de los ataques que, con el paso del tiempo, han ido evolucionando y sofisticándose.

Es por ello que incorporar pruebas periódicas de blockchain pentesting en la hoja de ruta de seguridad parece algo más que una recomendación. Muy especialmente cuando se hacen actualizaciones que podrían llegar a incrementar la superficie de ataque o los vectores explotables por los actores hostiles.

En un mundo donde la ciberseguridad es más crítica que nunca, invertir en pentesting ya no es una opción. Es una necesidad.