Foro de elhacker.net

Seguridad Informática => Hacking => Mensaje iniciado por: SnakingMax en 8 Mayo 2011, 18:35 pm



Título: Shellcoding 4 dummies
Publicado por: SnakingMax en 8 Mayo 2011, 18:35 pm
He compartido esta info con todos vosotros en mi blog pero me gustaría hacerlo aquí tambien en la comunidad ya que gracias a esta info he codeado mi primera shellcode, muy básica, pero a veces los tutoriales son algo enrevesados y uno se pierde por la mitad. Así que espero que os sirva de ayuda a los que están interesados en aprender.

Tutoriales muy muy claros:
http://securityetalii.es/2010/04/14/exploitation-shellcodes-en-linux-i/ (http://securityetalii.es/2010/04/14/exploitation-shellcodes-en-linux-i/)
http://securityetalii.es/2010/04/21/exploitation-shellcodes-en-linux-ii/ (http://securityetalii.es/2010/04/21/exploitation-shellcodes-en-linux-ii/)
http://securityetalii.es/2010/04/05/exploitation-evadiendo-nx/ (http://securityetalii.es/2010/04/05/exploitation-evadiendo-nx/)


Compilar un Programita en ensamblador:
Código
  1. nasm -f elf $ShellcodeEnASM


Crea el binario del código compilado. (con el archivo.o generado anteriormente)
Código
  1. ld archivo.o -o sc


Quitar la protección del stack, para que sea ejecutable. (Sí el programita ld tambien puede hacerlo)
Código
  1. sudo execstack -s sc $ShellcodeEjecutable


Desensamblar nuestro ejecutable
Código
  1. objdump -d $ShellcodeEjecutable


Desactivar core dump:
Código
  1. ulimit -c unlimited


Desactivar ALSR: (por defecto está puesto a 2, nosotros lo ponemos a 0)
Código
  1. echo 0 > /proc/sys/kernel/randomize_va_space

Bueno.. con esto ya es suficiente para empezar. Si teneis ganas de aprender estoy seguro que no os vais a perder en el camino pero recordad que a programar se aprende programando.
La shellcode que se explica en los tutoriales no es la única solución ni la mejor para lanzar una shell.

Os animo a visitar en shellstorm las shellcodes de Sagrini (seguro que ya lo conoceis todos) y Kernel_Panic para lanzar el /bin/sh:
http://shell-storm.org/shellcode/shellcode-linux.php

Tambien os animo a utilizar una máquina virtual para codear vuestras shellcodes. A mi me resulta mas cómodo y no me tengo que preocupar de los cambios que le hago al sistema operativo.


Título: Re: Shellcoding 4 dummies
Publicado por: Shamaroot en 17 Enero 2012, 20:39 pm
Gracias :D