Tutoriales

OverRide: explotación binaria e ingeniería inversa

Anular es una exploración del desmontaje, la explotación binaria y la ingeniería inversa a través de 10 pequeños desafíos.

En la carpeta de cada nivel encontrarás:

  • bandera – Contraseña para el venidero nivel
  • README.md – cómo encontrar una contraseña
  • fuente.c – el binario de ingeniería inversa
  • dissasembly_notes.md – Notas sobre asm

Consulte el tema para obtener más información.

Empezado

Primera descarga desde 42 OverRide.iso.

Configurando la máquina potencial

Instale VirtualBox en Mac OSX.

Cree una nueva máquina potencial en VirtualBox (haga clic en Nuevo).

  • Nombre y sistema activo – Tipo: Linux, Lectura: (Oracle 64-Bit)

Con la configuración predeterminada, continúe con todos los siguientes pasos:

  • Tamaño de la memoria: 4 MB
  • Disco duro: ahora cree un disco duro
  • Tipo de archivo de disco: VDI (VirtualBox Disk Image)
  • Almacenamiento en disco físico: asignado dinámicamente
  • Tamaño de archivo: 12,00 GB

Luego haga clic en Configuración> Red> Adaptador 1> Conectado a: Adaptador en puente.

En la configuración, haga clic en Almacenamiento> a la derecha de «Regulador: IDE». Hay un icono de CD con un signo + (asociar pelotón óptica). Haga clic en Asociar imagen de disco y seleccione OverRide.iso.

Haga clic en Iniciar para iniciar la VM. Luego de la ejecución, se debe mostrar la dirección IP de la VM y se debe solicitar al sucesor que inicie sesión.

Conectar SSH

Inicie sesión como sucesor desde un shell independiente level00 con contraseña level00.

ssh level00 @ VM_IP -p 4242

Elevar a mismo nivel

Como sucesor level00 El objetivo es descifrar la contraseña del sucesor. level01, antitético en /home/users/level01/.pass. Sin confiscación, los usuarios level00 no tiene permiso para descifrar este archivo.

En la carpeta de inicio para usuarios level00 es un archivo binario level00 con SUID set y propietario level01.

Esto significa que cuando ejecutamos el binario level00Hacemos esto con los permisos del sucesor. level01.

Necesitamos encontrar una vulnerabilidad en el binario. level00 con gdb. Entonces aprovechas la vulnerabilidad para ser ejecutado Sistema («/ bin / sh»), Anconada un shell como sucesor level01 donde tenemos permiso para descifrar la contraseña.

cat /home/users/level01/.pass

Entonces inicie sesión como sucesor level01.

su level01

Repita para cada nivel.

Binario de ingeniería inversa

Realizamos ingeniería inversa del flamante para cada nivel. fuente.c examinando el desmontaje de GDB del binario.

Breviario de niveles

  • 0 – contraseña codificada
  • 1 – Ataque Ret2Libc
  • 2 – Ataque de esclavitud en el formato printf ()
  • 3 – Contraseña de fuerza bruta
  • 4 – desbordamiento de pila gets () + ataque de retorno a libc
  • 5 – shellcode en ataque de esclavitud en el formato env variable + printf ()
  • 6 – Valencia hash reconocible con gdb
  • 7 – Ataque Ret2Libc en tabla de datos desprotegidos
  • 8 – Contraseña de respaldo binaria a través de enlace simbólico
  • 9 – errores uno tras otro

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba