Contratos inteligentes

Dec 11 2022
Día 8 THM-Advenimiento de cyber 4
A esta tarea se le dio mucha teoría sobre la vulnerabilidad de un contrato inteligente antes de que nos pusiéramos manos a la obra con la aplicación práctica de la vulnerabilidad básica. Aunque es bastante difícil de entender si no está familiarizado con blockchain y los contratos inteligentes, le recomiendo que lo lea brevemente para tener una idea aproximada de cuál es la escena en el escenario.

A esta tarea se le dio mucha teoría sobre la vulnerabilidad de un contrato inteligente antes de que nos pusiéramos manos a la obra con la aplicación práctica de la vulnerabilidad básica.

Aunque es bastante difícil de entender si no está familiarizado con blockchain y los contratos inteligentes, le recomiendo que lo lea brevemente para tener una idea aproximada de cuál es la escena en el escenario.

Pasemos al tutorial de los desafíos.

Usaremos Remix IDE , que ofrece un entorno seguro y controlado para probar e implementar contratos como si estuvieran en una cadena de bloques pública.

Ahora descarguemos los archivos y abramos este IDE en nuestro navegador.

Cuando abre Remix por primera vez, desea llamar su atención hacia el lado izquierdo; habrá un explorador de archivos, una búsqueda, un compilador de Solidity y un botón de navegación de implementación, respectivamente, de arriba a abajo. Pasaremos la mayor parte de nuestro tiempo en el menú de transacciones de implementación y ejecución, ya que nos permite seleccionar un entorno, una cuenta y un contrato e interactuar con los contratos que hemos compilado.

Continúe y abra los dos archivos que descargó en local_workspace.

después de eso, navegue a ambos archivos y compile ambos archivos bajo el compilador de solidez.

Después de esto, vaya a implementar y ejecutar transacciones y seleccione un contrato.

El etherstore.sol será el primero que implementaremos. Después de implementar, cambie el valor a 1 y haga clic en depositar bajo contratos implementados.

el saldo cambiará de 0 a 1, puede establecer el valor en cualquier número que desee :)

Ahora es el momento de desplegar nuestro ataque. Vaya al archivo de ataque y luego implemente y ejecute transacciones

Para implementar esto, necesita una dirección, vaya a implementaciones y copie la dirección de etherstore.
Pegue esto e implemente el attack.sol

Verá el ataque en los contratos implementados ahora, todo lo que tiene que hacer es cambiar el valor a 1 y hacer clic en 'atacar'

Hice clic tres veces, así que obtuve 3 ETH como saldo pero depositamos solo 1 .

Esta es la vulnerabilidad descrita en la sala anterior.

Esta sala fue un poco abrumadora, pero finalmente obtuvimos una idea de cómo funcionan los contratos inteligentes y cómo podemos explotar una vulnerabilidad básica.

De Infosec Writeups: Cada día surgen muchas cosas en Infosec con las que es difícil mantenerse al día. ¡ Únase a nuestro boletín semanal para obtener las últimas tendencias de Infosec en forma de 5 artículos, 4 subprocesos, 3 videos, 2 repositorios y herramientas de GitHub y 1 alerta de trabajo GRATIS!