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.
#42
Bugs y Exploits / Scanner Inyeccion SQL en Perl
Febrero 25, 2010, 11:39:11 AMUso:
Citarperl No tienes permitido ver los links. Registrarse o Entrar a mi cuenta No tienes permitido ver los links. Registrarse o Entrar a mi cuenta numero de columnas archivo_guardar.txt -- -T -C
Citar-- = Comentarios
T= tablas
C=Columnas
Saludos =)
Fuente:IlegalIntrusion.net
#43
Bugs y Exploits / Crackeador HTPASSWD 0.1
Febrero 25, 2010, 11:35:56 AM- Ataque de diccionario
- BruteForce Numerico
- BruteForce Solo Letras
- Probar Toda la Tabla Ascii
- Rango Definido por Usuario
solo se le tiene que cambiar el cripto sistema (en vez de la función crypt usar md5, etc...).
#44
Bugs y Exploits / Crackear password de administrador en windows usando Backtrack 3
Febrero 25, 2010, 11:25:50 AM
Bueno se ke ya existe mucha info sobre esto, pero bueno un poco mas no hace daño a nadie.
Ademas este tuto va enfocado a los novatos, bueno espero ke les guste y perdonen si no pongo capturas pero lo hice de rapido, ademàs creo ke kedarà muy entendible apesar de no usar imagenes y pues cualkier duda pueden preguntar.
Herramientas:
1)Una pc con windows xp, funciona tmb para versiones mas viejitas, en vista la vdd no se si funcione pues no lo he probado pero me imagino ke si
2)Acceso fisico a la pc
3)Una distribucion de linux, en mi caso usarè mi buen amigo backtrack 3.
Uso backtrack xq ya trae muchas herramientas de crackeo instaladas pero da igual la ke usen
empezàmos por abrir una consola de bt3
y tecleamos lo sig:
en mi caso es hda1 pero en el de uds puede variar un poco, puede ser sda1, sda2, hda2, etc
y nos desplegarà algo como esto:
estos son los archivos ke tengo en mi pc, en mi disco duro C:/, obviamente en el de uds va a cambiar
procedemos a crear una carpeta:
Ahora ke ya estàmos dentro de /crack
ahora vamos a extraer la boot key y guardarla en un archivo .txt llamado bootkey.txt:
les tiene ke aparecer algo parecido a esto:
Ahora vamos a extraer el hash del archivo SAM y guardarlo como hash.txt:
Una vez hecho esto ya tenemos el contenido del archivo SAM que es donde se encuentran los passwords en hash.txt. ahora vamos a crackearlo.
para esto usarèmos un diccionario y john the ripper
necesitàmos tener el diccionario en la misma carpeta donde estàmos (crack)
recuerden ke un diccionario no es mas ke un archivo de texto ke contiene varias palabras (posibles passwords).
Bien una vez ke ya tenèmos el diccionario (words.txt) tecleamos lo sig para crackear el hash:
y nos darà el password del windows
recordèmos ke si el password no està en el diccionario, pues entonces es imposible crackearlo
por eso para ke este atake funcione necesitamos tener un buen diccionario
cualkier duda aki estoy
salu2
Fuente: Devilboy
Ademas este tuto va enfocado a los novatos, bueno espero ke les guste y perdonen si no pongo capturas pero lo hice de rapido, ademàs creo ke kedarà muy entendible apesar de no usar imagenes y pues cualkier duda pueden preguntar.
Herramientas:
1)Una pc con windows xp, funciona tmb para versiones mas viejitas, en vista la vdd no se si funcione pues no lo he probado pero me imagino ke si
2)Acceso fisico a la pc
3)Una distribucion de linux, en mi caso usarè mi buen amigo backtrack 3.
Uso backtrack xq ya trae muchas herramientas de crackeo instaladas pero da igual la ke usen
empezàmos por abrir una consola de bt3
y tecleamos lo sig:
en mi caso es hda1 pero en el de uds puede variar un poco, puede ser sda1, sda2, hda2, etc
y nos desplegarà algo como esto:
estos son los archivos ke tengo en mi pc, en mi disco duro C:/, obviamente en el de uds va a cambiar
procedemos a crear una carpeta:
Ahora ke ya estàmos dentro de /crack
ahora vamos a extraer la boot key y guardarla en un archivo .txt llamado bootkey.txt:
les tiene ke aparecer algo parecido a esto:
Ahora vamos a extraer el hash del archivo SAM y guardarlo como hash.txt:
Una vez hecho esto ya tenemos el contenido del archivo SAM que es donde se encuentran los passwords en hash.txt. ahora vamos a crackearlo.
para esto usarèmos un diccionario y john the ripper
necesitàmos tener el diccionario en la misma carpeta donde estàmos (crack)
recuerden ke un diccionario no es mas ke un archivo de texto ke contiene varias palabras (posibles passwords).
Bien una vez ke ya tenèmos el diccionario (words.txt) tecleamos lo sig para crackear el hash:
y nos darà el password del windows
recordèmos ke si el password no està en el diccionario, pues entonces es imposible crackearlo
por eso para ke este atake funcione necesitamos tener un buen diccionario
cualkier duda aki estoy
salu2
Fuente: Devilboy
#45
Bugs y Exploits / FTP Bruteforce Priv8 -(PHP)
Febrero 25, 2010, 11:25:29 AM
Esto es FTP Bruteforce. sólo cambiar el puerto $ host $ § usuario y el %% ADDMOREPASSESHERE puestos en la matriz y trabajará al 100% en todos los Hoster que tiene conexiones ftp habilitado.
---------------------------------------------------------
Salu2
---------------------------------------------------------
Salu2
#46
Bugs y Exploits / XSS BBCode Exploit SMF All Versions
Febrero 25, 2010, 11:19:12 AM
Author: Xianur0
BBCode of the smf not filtered properly specified urls:
Click on the image, run the javascript..
BBC Cookie Exploit:
PHP Cookie Stealer:
BBCode of the smf not filtered properly specified urls:
Click on the image, run the javascript..
BBC Cookie Exploit:
PHP Cookie Stealer:
#47
Bugs y Exploits / Codeando un exploit II: Bypass uploaders & RCE
Febrero 24, 2010, 03:28:59 PM
Estamos aquí con otro tutorial de como codear un exploit, esta vez vamos a empezar a marcar ciertos patrones que siempre (o en la mayoría de los casos) vamos a usar. Esta vez no vamos a usar una vulnerabilidad pública (siempre intentaré usar vulnerabilidad es públicas por aquello de que podais encontrar "ejemplos prácticos reales").
Hay por ahí personas que aseguran que el 70% de los uploaders web presentan alguna forma de bypassearlos para subir extensiones que no estén permitidos. A mi humilde parecer estas cifras son demasiado altas, pero bueno... Hoy vamos a aplicar una forma automatizada de subir una shell PHP a un host a través de un uploader que presente un deficiente filtrado basado en mirar el MIME type o use la función getimagesize(). Aqui no vamos a hablar en detalle de cómo funcionan estos filtros, existe por ahí un paper que creo que era de vZack que hablaba más en profundidad de ello, os remito a que googleeis a por él.
Si ya habeis localizado ese u otro paper que hable del tema podemos continuar. Como habreis leido, si el script que sube el fichero bloquea los archivos PHP basándose en el MIME type, símplemente mandando una cabecera modificada donde se modifique el type por uno que esté permitido (normalmente un image/gif o image/jpeg); y en el caso de getimagesize() símplemente con poner al inicio del archivo la cabecera de la extensión (GIF89a, en nuestro caso ya que nuestro exploit va a "camuflarse" como un .gif).
Bien, al igual que la otra ocasión, lo primero es ver cómo implementar la vulnerabilidad en un programa y segundo esquematizar mentalmente las partes de las que constará nuestro exploit. Para la primera cuestión es fácil, para subir el archivo mandamos una cabecera ya modificada que contenga nuestra shell con el identificador de extensión ya incluido, es decir algo así:
Tras la primera parte, podemos deducir de inicio que vamos a necesitar los mismos módulos que la vez anterior (LWP y HTTP::Response::Common). Como variables necesaritaremo s una que indique la URL donde se sitúa el script PHP que actúa como uploader y otra que será la dirección donde se suben los ficheros
Nota: para el segundo se presupone que ya tenemos este conocimiento, lo normal es sacarlo por deducción observando la web o bien a través de un FPD
Despues tendremos que mandar la susodicha cabecera, y posteriormente ejecutaremos comandos directamente (por aquello de no ingresar a la URL por el navegador). El code (que paso a comentar línea a línea lo nuevo) sería algo parecido a esto:
En estas líneas lo que hacemos es mandar la cabecera al upload con el bypass hecho. Nótese que nuestro fichero es fos.gif.
Lo siguiente es, que si se ha subido el fichero, ingrese por GET ejecutando el comando id y muestra el resultado. El resto es un bucle DO-UNTIL en el cual emulará a una shell normal, en la cual nosotros introduciremos los comandos a ejecutar, dicho comando se pasará por GET al fichero que hemos subido, y nuestro exploit leera lo que vomita la web y te lo mostrará. Para dejar de mandar comandos y salir del exploit escribimos "salir":
Hasta aquí todo bien. Ahora tenemos que ver las partes "nuevas" que hemos añadido para complementar un poco al exploit. La primera es hacer una comprobación de si todos los parámetros han sido introducidos, hay varias formas, esta quizás no es la más adecuada pero es sencilla y simple. Lo único que hace es comprobar si se introduce un segundo parámetro:
De tener un "syntax error" nos saltará la subrutina &usage; la cual definimos al final del código y consiste en simplemente mostrar un mensaje de como se usa y cerrar el script:
Hay por ahí personas que aseguran que el 70% de los uploaders web presentan alguna forma de bypassearlos para subir extensiones que no estén permitidos. A mi humilde parecer estas cifras son demasiado altas, pero bueno... Hoy vamos a aplicar una forma automatizada de subir una shell PHP a un host a través de un uploader que presente un deficiente filtrado basado en mirar el MIME type o use la función getimagesize(). Aqui no vamos a hablar en detalle de cómo funcionan estos filtros, existe por ahí un paper que creo que era de vZack que hablaba más en profundidad de ello, os remito a que googleeis a por él.
Si ya habeis localizado ese u otro paper que hable del tema podemos continuar. Como habreis leido, si el script que sube el fichero bloquea los archivos PHP basándose en el MIME type, símplemente mandando una cabecera modificada donde se modifique el type por uno que esté permitido (normalmente un image/gif o image/jpeg); y en el caso de getimagesize() símplemente con poner al inicio del archivo la cabecera de la extensión (GIF89a, en nuestro caso ya que nuestro exploit va a "camuflarse" como un .gif).
Bien, al igual que la otra ocasión, lo primero es ver cómo implementar la vulnerabilidad en un programa y segundo esquematizar mentalmente las partes de las que constará nuestro exploit. Para la primera cuestión es fácil, para subir el archivo mandamos una cabecera ya modificada que contenga nuestra shell con el identificador de extensión ya incluido, es decir algo así:
Tras la primera parte, podemos deducir de inicio que vamos a necesitar los mismos módulos que la vez anterior (LWP y HTTP::Response::Common). Como variables necesaritaremo s una que indique la URL donde se sitúa el script PHP que actúa como uploader y otra que será la dirección donde se suben los ficheros
Nota: para el segundo se presupone que ya tenemos este conocimiento, lo normal es sacarlo por deducción observando la web o bien a través de un FPD
Despues tendremos que mandar la susodicha cabecera, y posteriormente ejecutaremos comandos directamente (por aquello de no ingresar a la URL por el navegador). El code (que paso a comentar línea a línea lo nuevo) sería algo parecido a esto:
En estas líneas lo que hacemos es mandar la cabecera al upload con el bypass hecho. Nótese que nuestro fichero es fos.gif.
Lo siguiente es, que si se ha subido el fichero, ingrese por GET ejecutando el comando id y muestra el resultado. El resto es un bucle DO-UNTIL en el cual emulará a una shell normal, en la cual nosotros introduciremos los comandos a ejecutar, dicho comando se pasará por GET al fichero que hemos subido, y nuestro exploit leera lo que vomita la web y te lo mostrará. Para dejar de mandar comandos y salir del exploit escribimos "salir":
Hasta aquí todo bien. Ahora tenemos que ver las partes "nuevas" que hemos añadido para complementar un poco al exploit. La primera es hacer una comprobación de si todos los parámetros han sido introducidos, hay varias formas, esta quizás no es la más adecuada pero es sencilla y simple. Lo único que hace es comprobar si se introduce un segundo parámetro:
De tener un "syntax error" nos saltará la subrutina &usage; la cual definimos al final del código y consiste en simplemente mostrar un mensaje de como se usa y cerrar el script:
The X-C3LL
#48
Bugs y Exploits / Codeando un exploit I: Source Code Disclosure
Febrero 24, 2010, 03:28:43 PMCitarBueno para empezar ami mucho me interesó a interpretar y codear un Exploit , pués me encontré con varios post[/i]
y entre ellos me ví con esto que me interesó mucho y me ayudó. a parte de eso para tener un poco mas de entendimiento tienen que saber lenguajes básicos como Html, PHP y perl , el tema es escrito por The X-C3LL .
=======================================================================================
Codeando un exploit I: Source Code Disclosure
La verdad es que es muy común ver mensajes en esta sección de "cómo codeo un exploit" al cual siempre contestamos de la misma forma "aprende a programar". Así que me he propuesto explicar de forma muy básica el cómo codearnos un exploits sencillos en perl. Como ahora mismo estoy en la previa a los exámenes, no tengo mucho tiempo, así que vamos a empezar con una vulnerabilidad sencilla como puede ser un Source Code Disclosure (SCD). Si no tienes ni idea de lo que és, hecha un ojo aquí ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ).
Para trabajar, vamos a usar una vulnerabilidad pública ya que descubrió Seth en un CMS llamado QuipusNews. En el link que os dejé viene una referencia a dicha vulnerabilidad y el exploit que codeó para explotarla. La verdad es que a día de hoy miras el exploit y te das cuenta de que se podría simplificar mucho.... y es lo que vamos a hacer, crear un exploit paralelo a ese pero más ordenado y simplificado.
Así que lo primero que vamos a hacer va a ser localizar una web vulnerable para ver cómo funciona la vulnerabilidad (nos remitiremos al dork "Actualizado usando QuipusNews"). Cuando hayamos localizado un objetivo que use este CMS, procedemos a tratar de incluir un fichero (P.E.: index.php) y, cuando lo cargue, mirad el código fuente. Si todo ha ido bien, veremos el source de index.php
Bien de esta sencilla práctica podemos deducir cómo va a funciona nuestro exploit. Primero setearemos las variables, que a simple vista podemos ver que van a ser una para determinar el host vulnerable, otra para el directorio donde se sitúa el script vulnerable y una última para indicar qué archivo deseamos de ver.
La segunda parte sería la de establecer la conexión con el host y leer el archivo que deseamos. En el exploit que codió Seth (y que le ayudé ) usaba sockets para esto. La verdad es que existe una forma más simplificada y es usando librerías especializadas que ya hagan este trabajo. Nosotros vamos a usar dos en concreto, LWP y HTTP. Aquí dejo el código y vamos a ir viéndolo parte por parte:
Las primeras líneas:
Estas líneas son la declaración de qué modulos deben de incluirse para el funcionamiento del programa. En las siguientes,
seteamos las variables que vamos a emplear, que son las que comenté anteriormente. Posteriormente concatenamos todo para tener la URL donde deberemos de ingresar:
Posteriormente pasamos a crear una simulación de un navegador:
Y procedemos a realizar una petición GET a la url que montemos concatenando los parámetros:
El la parte del die se emplea por si no ha habido suerte y ha ocurrido algún problema. Dicho problema se muestra a través de status_line (P.E.: 404 Not Found). Para finalizar mostramos el contenido en pantalla del código fuente:
No le he añadido detalles básicos al exploit, como puede ser algo de texto, la información sobre el bug y cómo lo explota, una subrutina &usage para mostra el uso en caso de syntax error, unos condicionales que verifiquen la sintaxis de los parámetros, etc... esto ya lo veremos otro día. Lo de hoy ha sido sínplemente una toma de contacto para que veais que los exploits no son programas místicos creados por el demonio inentendibles. Un exploit no es más que un programa.
Byt3z
PD: Se me olvidaba mostrar el output:
The X-C3LL
#49
Bugs y Exploits / Analisis De Puertos,Identificacion de sistema,servicios del mismo
Febrero 24, 2010, 03:26:55 PM
###################################
#Author: blood_rec
#Colaborators: Georgio
#blog: http://h4xxor.blogspot.com
#web: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#contact: blood_rec @el-hacker.org
#Musica Durante: Metallica
###################################
Importancia de El
########################################################################
# Analisis De Puertos,Identificacion de sistema,servicios del mismo...
########################################################################
==========================================================================================================================================================
A-Introduccion:
A La hora de identificar u realizar una tarea de auditoria web en un servidor muchos cometen el error o caen en la actividad que al comenzar una tarea de auditoria siempre se van con la busqueda de las vulnerabilidades primero o a usar sus SSS (Shadow Security Scanner)...
A LA hora de identificar un sistema u realizar una auditoria podemos hacer las cosas bien a nivel de servidor/cliente,y como en el sexo debemos empezar primero poco a poco o no me van a decir que a la hora de estar con una chica llegan se lo meten y ya en tan solo 3 meses la chica lo mandara al carajo xD...
pues los sistemas son asi debemos ir poco a poco para interactuar con ellos ya que con solo identificar el sistemas scannear los puertos y servicios (Deamons) que gestiona el mismo podemos hacer cosas maravillosas sin nesesidad de utilizar otras tecnicas...
a veces se les puede tornar aburrido pero de esto se trata esto mientras mas areas vas cubriendo en el tema mucho mas acto eres para llegar a tus objetivos...solo me voy a basar en teorias y algunas practicas y pruebas que realizo en mi servidor local,donde poseo algunas aplicaciones vulnerables y no vulnerables pero podemos vulnerarlas atacando sus servicios u cosas xD...
El servidor en el cual esta todo instalado es un servidor Ubuntu 8.10 Kernel Generico Apache/2.2.9 Suhosin-Patch Server con algunas aplicaciones como joomla,smf,wordpress y otro scripts programados. el servidor obviamente esta en mi red local., la maquina auditora esta con Slackware Kernel 2.6.21.5 (Una Laptop) y a la que la e convertido en una suite de pentesting...xD
B-Comienzo:
Bueno comenzaremos con Nmap O Zenmap cualquiera de los 2.ya que los comandos son practicamente lo mismo pero nos orientaremos a la primera ya que usaremos la consola en lo personal lo prefiero ya que es un poco mas rapido y de verdad que no me gusta la GUI de la misma xD para los gusto los colores y para el culo los mojones....xD pero pueden usar la que gusten...
Nmap es un scanner de puertos y servicios hasta con el mismo puedes identificar sistemas operativos de manera remota una herrmienta imprecindible para cualquier auditor,experto en seguridad,Administrador De Red,Sistema,Servidor,Lammer,Hacker,noob,geek,hasta el user normal pero es imprecindible si a estas alturas no sabes lo que es te ivito que busques en internet u entre a la pagina del autor.:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Sigamos Para comenzar con un scanneo Basico veremos La manera de comenzar son comandos muy faciles de aprender de memoria pero empezemos poco a poco
Voy a Probar scaneando el servidor con las reglas del firewall excluyendo a la maquina auditora a ver que sucede?:
[ go0ns@squad # nmap 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-26 23:29 GMT
All 1715 scanned ports on 192.168.56.1 are filtered
MAC Address: 00:76:62:6E:65:74 (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 49.736 seconds ]
Acabamos de ver que el firewall de esa manera nos bloqueo todos los pedidos dejandonos muchos logs en el servidor auditado:
[ Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:636 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Ldaps
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:1723 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Tacacs
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:113 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Auth
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:23 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Telnet
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:53 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:DNS
Time:Jul 26 17:41:42 Direction: Unknown In:wlan0 Out: Port:80 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:HTTP
Time:Jul 26 17:41:42 Direction: Unknown In:wlan0 Out: Port:80 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Klogin ]
UFF jajaja solo son algunos de los que puede dejar ok agregamos una regla que es lo que un servidor normal pues deberia tener ya que debe dejar la entrada de las ip's pero no en todos los caso ya que las reglas aplican a algunos puertos pero excluyen a muchos pero aprenderemos como sacar el mejor provecho posible... Ahora Vamos Y Realizamos:
[ go0ns@squad # nmap 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-26 23:28 GMT
Interesting ports on 192.168.56.1:
Not shown: 1710 closed ports
PORT STATE SERVICE
25/tcp open smtp
80/tcp open http
110/tcp open pop3
1241/tcp open nessus
2500/tcp open rtsserv
MAC Address:Unknown)
Nmap done: 1 IP address (1 host up) scanned in 13.743 seconds
]
Ya tenemos identificado al menos lo inicial y miremos que tenemos como pudieron ver fue un scan bien basico solo los puertos /tcp como la mayoria de los scanners en la jungla esto scans son bien agresivos y siempre son agarrados por el firewall como vimos en el primer caso terminando por banear nuestra ip si el administrador tiene buenas reglas n el firewall:
#####################
#Puerto | Servicio #
#####################
#25/tcp | smpt #
#80/tcp | http #
#110/tcp | pop3 #
#1241/tcp| nessus #
#2500/tcp| rtsserv #
#####################
Bueno analizemos tenemos 5 puertos identificados de primera instancia que se gestionan bajo el protocolo /tcp si no teneis conocimiento sobre que es el protcolo /tcp u los otros protocolos similares /udp y cosas pues no continues leyendo e instruyete desde 0 mijo...
en fin con el scaneo sencillo identificamos solo esos puertos como pudieron apreciar que el log del scan nos indica tambien que se encontraron Not shown: 1710 closed ports que estan entiendase o cerrados o filtrados Huh entonces preguntaran de como es posible si es una herramienta de scaneo de puertos y servicios pero de esto se trata de poder hacer las identificaciones especificas..
ahora queremos saber que sistema operativo tiene siempre como root asumiendo que estais en linux (igual puede hacerlo desde el otro sistema operativo) xD ok, pues realizamos
[ go0ns@squad # nmap -O 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-26 23:32 GMT
Interesting ports on 192.168.56.1:
Not shown: 1710 closed ports
PORT STATE SERVICE
25/tcp open smtp
80/tcp open http
110/tcp open pop3
1241/tcp open nessus
2500/tcp open rtsserv
MAC Address: (Unknown)
No exact OS matches for host (If you know what OS is running on it, see No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ).
TCP/IP fingerprint:
OS:SCAN(V=4.60%D=6/26%OT=25%CT=1%CU=33422%PV=Y%DS=1%G=Y%M=007662%TM=4A455AA
OS:F%P=i686-pc-linux-gnu)SEQ(SP=CD%GCD=1%ISR=CC%TI=Z%II=I%TS=U)SEQ(SP=CD%GC
OS:D=1%ISR=CD%TI=Z%II=I%TS=U)OPS(O1=M5B4%O2=M5B4%O3=M5B4%O4=M5B4%O5=M5B4%O6
OS:=M5B4)WIN(W1=16D0%W2=16D0%W3=16D0%W4=16D0%W5=16D0%W6=16D0)ECN(R=Y%DF=Y%T
OS:=40%W=16D0%O=M5B4%CC=N%Q=)T1(R=Y%DF=Y%T=40%S=O%A=S+%F=AS%RD=0%Q=)T2(R=N)
OS:T3(R=N)T4(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T5(R=Y%DF=Y%T=40%W=0%
OS:S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T7(
OS:R=N)U1(R=Y%DF=N%T=40%TOS=C0%IPL=164%UN=0%RIPL=G%RID=G%RIPCK=G%RUCK=G%RUL
OS:=G%RUD=G)IE(R=Y%DFI=N%T=40%TOSI=S%CD=S%SI=S%DLI=S)
Network Distance: 1 hop
OS detection performed. Please report any incorrect results at No tienes permitido ver los links. Registrarse o Entrar a mi cuenta .
Nmap done: 1 IP address (1 host up) scanned in 28.029 seconds
]
Bueno pudieron apreciar que nmap reacciono casi de la misma manera que con el 2do intento con un scaneo de puertos sencillo en los protocolos /tcp pero en este caso usamos el argumento -O para scanear el posible sistema operativo, como funciona? nmap envia cadenas especializadas a dos puertos especificos uno cerrado y uno abierto, estolo hace con el proposito de que cada sistema operativo reacciona de manera diferente a estas peticiones y como pudieron ver el scanner tubo problemas descubriendo el server que como mencione antes era ubuntu 8.10 pero igual vean los primeros resultados que se acercan a lo que queremos:
[ OS:F%P=i686-pc-linux-gnu)SEQ(SP=CD%GCD=1%ISR=CC%TI=Z%II=I%TS=U)SEQ(SP=CD%GC ]
Los comandos basicos de nmap los pueden ir encontrando poco a poco que tal si cambiamos un poco los comandos para que vallan haciendose una idea y familiarizandose con dicho programa y la manera que tenemos como siempre de llagar a nuestro objetivo en este caso usaremos un scaneo intensivo pero rapido que se supone que nos arroje los resultados mas imprecindibles..
[go0ns@squad # nmap -T Aggressive -A -v 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-27 01:43 GMT
Initiating ARP Ping Scan at 01:43
Scanning 192.168.56.1 [1 port]
Completed ARP Ping Scan at 01:43, 0.02s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 01:43
Completed Parallel DNS resolution of 1 host. at 01:43, 13.00s elapsed
Initiating SYN Stealth Scan at 01:43
Scanning 192.168.56.1 [1715 ports]
Discovered open port 25/tcp on 192.168.56.1
Discovered open port 80/tcp on 192.168.56.1
Discovered open port 110/tcp on 192.168.56.1
Discovered open port 2500/tcp on 192.168.56.1
Discovered open port 1241/tcp on 192.168.56.1
Completed SYN Stealth Scan at 01:43, 0.55s elapsed (1715 total ports)
Initiating Service scan at 01:43
Scanning 5 services on 192.168.56.1
Completed Service scan at 01:43, 11.47s elapsed (5 services on 1 host)
Initiating OS detection (try #1) against 192.168.56.1
SCRIPT ENGINE: Initiating script scanning.
Initiating SCRIPT ENGINE at 01:43
Completed SCRIPT ENGINE at 01:43, 5.05s elapsed
Host 192.168.56.1 appears to be up ... good.
Interesting ports on 192.168.56.1:
Not shown: 1710 closed ports
PORT STATE SERVICE VERSION
25/tcp open smtp Postfix smtpd
|_ SMTP: HELP with errors or timeout. Enable --script-trace to see what is happening.
80/tcp open http Apache httpd 2.2.9 ((Ubuntu) PHP/5.2.6-2ubuntu4.2 with Suhosin-Patch)
|_ HTML title: Index of /
110/tcp open pop3 hotwayd pop3d 0.8.4
1241/tcp open ssl/unknown
2500/tcp open smtp-proxy hotsmtpd based on hotwayd 0.8.4
MAC Address: (Unknown)
Device type: general purpose
Running: Linux 2.6.X
OS details: Linux 2.6.13 - 2.6.23
Uptime: 0.089 days (since Fri Jun 26 23:35:55 2009)
Network Distance: 1 hop
TCP Sequence Prediction: Difficulty=201 (Good luck!)
IP ID Sequence Generation: All zeros
Service Info: Host: go0ns.s3rver
Read data files from: /usr/local/share/nmap
OS and Service detection performed. Please report any incorrect results at No tienes permitido ver los links. Registrarse o Entrar a mi cuenta .
Nmap done: 1 IP address (1 host up) scanned in 33.036 seconds
Raw packets sent: 1735 (77.100KB) | Rcvd: 1731 (80.266KB) ]
Uff que lectura mas larga pero vamos a ver que datos contiene que nos pueden ayudar y ya se habran dado de cuenta de la gran diferencia con los resultados y el cambio de Parametros.
Veamos primero el scan y estas opciones para ver lo que relativamente es importante antes de probar este de ahora tratamos de identificar el sistema operativo lo que realizo fue adivinar el sistema operativo pero esta vez logramos de dar con el mismo mas especificamente y dar con los servicios que gestiona el mismo como los deamons miremos:
[ PORT STATE SERVICE VERSION
25/tcp open smtp Postfix smtpd
|_ SMTP: HELP with errors or timeout. Enable --script-trace to see what is happening.
80/tcp open http Apache httpd 2.2.9 ((Ubuntu) PHP/5.2.6-2ubuntu4.2 with Suhosin-Patch)
|_ HTML title: Index of /
110/tcp open pop3 hotwayd pop3d 0.8.4
1241/tcp open ssl/unknown
2500/tcp open smtp-proxy hotsmtpd based on hotwayd 0.8.4 ]
Como podemos ver identifica nuevamente los puertos ya mencionados asi como los servicios y la version y magicamente identifica el sistema operativo que gestiona el server :
[ Apache httpd 2.2.9 ((Ubuntu) PHP/5.2.6-2ubuntu4.2 with Suhosin-Patch ]
Sonrisa y la otra parte relativamente importante es que identifica la version de los servicios aunque esto no es tan fundamental por que puede que sea un falso asi como uno correcto pero aqui es que llega la intuicion del auditor de usar la logica ya que puedes ir teoricamente buscando cual es la version real de dicho servicio con la identificacion del sistema operativo.
y que resume esto? que podemos darnos con el escenario que la aplicacion web no es vulnerable pero si los servicios o deamons del mismo y podemos vulnerarla por ahi xD ELEMENTAL NO?
por eso es que es bien importante los scaneos de identificacion por que de muchas maneras puedes encontrar las vulnerabilidades si no lo son a nivel web son a nivel server pero siempre encontraras algo.Sigamos
[ OS details: Linux 2.6.13 - 2.6.23 ]
Nos indica mas o menos el kernel que corre bajo el sistema operativo pero no siempre se da este caso del mismo las mayoria de las veces lo atina..
otra de las herramientas que podemos encontrar por la jungla de la web es xprobe2 para la identificacion de sistemas operativos veamos:
[ go0ns.squad # xprobe2 -v 192.168.56.1
* Primary guess:
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.22" (Guess probability: 100%)
* Other guesses:
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.23" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.21" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.20" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.19" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.24" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.25" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.26" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.27" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.28" (Guess probability: 100%)
* Cleaning up scan engine
* Modules deinitialized
* Execution completed ]
casi igual como nmap lo unico que este tiene tareas mas especificas en la identificacion de sistemas operativos y nos arroja el mismo resultado que muchas veces pued confundir pero a medida que vallan perfeccionando las tecnicas dan con los mismos.
Otra herramienta que nos puede ayudar en la identificacion de sistemas y objetivos de la informacion del mismo es Maltego que se puede descargar desde No tienes permitido ver los links. Registrarse o Entrar a mi cuenta con la que pueden sacar emails,directorios,archivos,dominios,sub dominios y otras cosas del servidor identificado.
entonces que es lo que quiero adentrar y detallar mas aqui solo queria explicarles que para identificar vulnerabilidades en un servidor no tienes primero que comenzar por la aplicacion web nesesariamente con tan solo con la identificacion misma del sistema puedes abrir muchas posibilidades a descubrir muchas mas cosas que solo las vulnerabilidades que tiene la web o el servidor...
si ya saben que pueden encontrar una aplicacion web en un servidor que no sea vulnerable que buscas por lados y no encuentras nadas pero se te olvido buscar los servicios que tiene el server pero cuando scaneas encuentras que tiene varios deamons que son vulnerables como el mencionado arriba que gestiona el correo postfix donde corre el servicio smpt y supongamos que ese servicio contiene un deamon que sea vulnerable a un buffer overflow o (desbordamiento) como quieran decirle entonces BINGO !!! haz encontrado algo al menos en mi servidor local solo hay muy ocos servicios gestionandose.
pero siempre alla fuera en la jungla encontrarn muchicimo mas como servicios de mysql,mssql,u otras cosas interesantes..
entonces siempre recuerden que la identificacion de sistemas es lo primero que debemos hacer a la hora de buscar vulnerabilidades en una web por que puedes llegar a encontrar puertas abiertas sin tener que registrar la aplicacion web y no te imaginas las posibilidades que hay dentro del mismo..
si si te preguntas SE PUEDE USAR NMAP PARA BUSCAR VULNERABILIDADES? no y si por que no te identificara las vulnes de primera instancia pero realiza algunas cadenas de reglas como metodos de scan que te audarian a identificar servicios sin actualizacion vulnerables a algunos ataques..
espero que esta breve explicacion sobre la importancia de la identificacion y puertos de un sistema les haya gustado ya Breve Pasamos al proximo Paper y Aqui les dejo una listita de algunas herramientas que te ayudarian en este renglon:
nmap
Zenmap
Amap
Maltego
httprint
unicornscan
xprobe
son herramientas con usos similares pero les pueden acomodar tareas especificas para sacarle provecho...
Greetz: JosS,alevsk,ANTRAX,h4n0wars,e-r00t.org,security-shell members,Darvein,y mis hijos por crecer tan rapido carajo xD..
###########
#blood_rec#
###########
#Author: blood_rec
#Colaborators: Georgio
#blog: http://h4xxor.blogspot.com
#web: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#contact: blood_rec @el-hacker.org
#Musica Durante: Metallica
###################################
Importancia de El
########################################################################
# Analisis De Puertos,Identificacion de sistema,servicios del mismo...
########################################################################
==========================================================================================================================================================
A-Introduccion:
A La hora de identificar u realizar una tarea de auditoria web en un servidor muchos cometen el error o caen en la actividad que al comenzar una tarea de auditoria siempre se van con la busqueda de las vulnerabilidades primero o a usar sus SSS (Shadow Security Scanner)...
A LA hora de identificar un sistema u realizar una auditoria podemos hacer las cosas bien a nivel de servidor/cliente,y como en el sexo debemos empezar primero poco a poco o no me van a decir que a la hora de estar con una chica llegan se lo meten y ya en tan solo 3 meses la chica lo mandara al carajo xD...
pues los sistemas son asi debemos ir poco a poco para interactuar con ellos ya que con solo identificar el sistemas scannear los puertos y servicios (Deamons) que gestiona el mismo podemos hacer cosas maravillosas sin nesesidad de utilizar otras tecnicas...
a veces se les puede tornar aburrido pero de esto se trata esto mientras mas areas vas cubriendo en el tema mucho mas acto eres para llegar a tus objetivos...solo me voy a basar en teorias y algunas practicas y pruebas que realizo en mi servidor local,donde poseo algunas aplicaciones vulnerables y no vulnerables pero podemos vulnerarlas atacando sus servicios u cosas xD...
El servidor en el cual esta todo instalado es un servidor Ubuntu 8.10 Kernel Generico Apache/2.2.9 Suhosin-Patch Server con algunas aplicaciones como joomla,smf,wordpress y otro scripts programados. el servidor obviamente esta en mi red local., la maquina auditora esta con Slackware Kernel 2.6.21.5 (Una Laptop) y a la que la e convertido en una suite de pentesting...xD
B-Comienzo:
Bueno comenzaremos con Nmap O Zenmap cualquiera de los 2.ya que los comandos son practicamente lo mismo pero nos orientaremos a la primera ya que usaremos la consola en lo personal lo prefiero ya que es un poco mas rapido y de verdad que no me gusta la GUI de la misma xD para los gusto los colores y para el culo los mojones....xD pero pueden usar la que gusten...
Nmap es un scanner de puertos y servicios hasta con el mismo puedes identificar sistemas operativos de manera remota una herrmienta imprecindible para cualquier auditor,experto en seguridad,Administrador De Red,Sistema,Servidor,Lammer,Hacker,noob,geek,hasta el user normal pero es imprecindible si a estas alturas no sabes lo que es te ivito que busques en internet u entre a la pagina del autor.:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Sigamos Para comenzar con un scanneo Basico veremos La manera de comenzar son comandos muy faciles de aprender de memoria pero empezemos poco a poco
Voy a Probar scaneando el servidor con las reglas del firewall excluyendo a la maquina auditora a ver que sucede?:
[ go0ns@squad # nmap 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-26 23:29 GMT
All 1715 scanned ports on 192.168.56.1 are filtered
MAC Address: 00:76:62:6E:65:74 (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 49.736 seconds ]
Acabamos de ver que el firewall de esa manera nos bloqueo todos los pedidos dejandonos muchos logs en el servidor auditado:
[ Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:636 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Ldaps
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:1723 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Tacacs
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:113 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Auth
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:23 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Telnet
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:53 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:DNS
Time:Jul 26 17:41:42 Direction: Unknown In:wlan0 Out: Port:80 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:HTTP
Time:Jul 26 17:41:42 Direction: Unknown In:wlan0 Out: Port:80 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Klogin ]
UFF jajaja solo son algunos de los que puede dejar ok agregamos una regla que es lo que un servidor normal pues deberia tener ya que debe dejar la entrada de las ip's pero no en todos los caso ya que las reglas aplican a algunos puertos pero excluyen a muchos pero aprenderemos como sacar el mejor provecho posible... Ahora Vamos Y Realizamos:
[ go0ns@squad # nmap 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-26 23:28 GMT
Interesting ports on 192.168.56.1:
Not shown: 1710 closed ports
PORT STATE SERVICE
25/tcp open smtp
80/tcp open http
110/tcp open pop3
1241/tcp open nessus
2500/tcp open rtsserv
MAC Address:Unknown)
Nmap done: 1 IP address (1 host up) scanned in 13.743 seconds
]
Ya tenemos identificado al menos lo inicial y miremos que tenemos como pudieron ver fue un scan bien basico solo los puertos /tcp como la mayoria de los scanners en la jungla esto scans son bien agresivos y siempre son agarrados por el firewall como vimos en el primer caso terminando por banear nuestra ip si el administrador tiene buenas reglas n el firewall:
#####################
#Puerto | Servicio #
#####################
#25/tcp | smpt #
#80/tcp | http #
#110/tcp | pop3 #
#1241/tcp| nessus #
#2500/tcp| rtsserv #
#####################
Bueno analizemos tenemos 5 puertos identificados de primera instancia que se gestionan bajo el protocolo /tcp si no teneis conocimiento sobre que es el protcolo /tcp u los otros protocolos similares /udp y cosas pues no continues leyendo e instruyete desde 0 mijo...
en fin con el scaneo sencillo identificamos solo esos puertos como pudieron apreciar que el log del scan nos indica tambien que se encontraron Not shown: 1710 closed ports que estan entiendase o cerrados o filtrados Huh entonces preguntaran de como es posible si es una herramienta de scaneo de puertos y servicios pero de esto se trata de poder hacer las identificaciones especificas..
ahora queremos saber que sistema operativo tiene siempre como root asumiendo que estais en linux (igual puede hacerlo desde el otro sistema operativo) xD ok, pues realizamos
[ go0ns@squad # nmap -O 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-26 23:32 GMT
Interesting ports on 192.168.56.1:
Not shown: 1710 closed ports
PORT STATE SERVICE
25/tcp open smtp
80/tcp open http
110/tcp open pop3
1241/tcp open nessus
2500/tcp open rtsserv
MAC Address: (Unknown)
No exact OS matches for host (If you know what OS is running on it, see No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ).
TCP/IP fingerprint:
OS:SCAN(V=4.60%D=6/26%OT=25%CT=1%CU=33422%PV=Y%DS=1%G=Y%M=007662%TM=4A455AA
OS:F%P=i686-pc-linux-gnu)SEQ(SP=CD%GCD=1%ISR=CC%TI=Z%II=I%TS=U)SEQ(SP=CD%GC
OS:D=1%ISR=CD%TI=Z%II=I%TS=U)OPS(O1=M5B4%O2=M5B4%O3=M5B4%O4=M5B4%O5=M5B4%O6
OS:=M5B4)WIN(W1=16D0%W2=16D0%W3=16D0%W4=16D0%W5=16D0%W6=16D0)ECN(R=Y%DF=Y%T
OS:=40%W=16D0%O=M5B4%CC=N%Q=)T1(R=Y%DF=Y%T=40%S=O%A=S+%F=AS%RD=0%Q=)T2(R=N)
OS:T3(R=N)T4(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T5(R=Y%DF=Y%T=40%W=0%
OS:S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T7(
OS:R=N)U1(R=Y%DF=N%T=40%TOS=C0%IPL=164%UN=0%RIPL=G%RID=G%RIPCK=G%RUCK=G%RUL
OS:=G%RUD=G)IE(R=Y%DFI=N%T=40%TOSI=S%CD=S%SI=S%DLI=S)
Network Distance: 1 hop
OS detection performed. Please report any incorrect results at No tienes permitido ver los links. Registrarse o Entrar a mi cuenta .
Nmap done: 1 IP address (1 host up) scanned in 28.029 seconds
]
Bueno pudieron apreciar que nmap reacciono casi de la misma manera que con el 2do intento con un scaneo de puertos sencillo en los protocolos /tcp pero en este caso usamos el argumento -O para scanear el posible sistema operativo, como funciona? nmap envia cadenas especializadas a dos puertos especificos uno cerrado y uno abierto, estolo hace con el proposito de que cada sistema operativo reacciona de manera diferente a estas peticiones y como pudieron ver el scanner tubo problemas descubriendo el server que como mencione antes era ubuntu 8.10 pero igual vean los primeros resultados que se acercan a lo que queremos:
[ OS:F%P=i686-pc-linux-gnu)SEQ(SP=CD%GCD=1%ISR=CC%TI=Z%II=I%TS=U)SEQ(SP=CD%GC ]
Los comandos basicos de nmap los pueden ir encontrando poco a poco que tal si cambiamos un poco los comandos para que vallan haciendose una idea y familiarizandose con dicho programa y la manera que tenemos como siempre de llagar a nuestro objetivo en este caso usaremos un scaneo intensivo pero rapido que se supone que nos arroje los resultados mas imprecindibles..
[go0ns@squad # nmap -T Aggressive -A -v 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-27 01:43 GMT
Initiating ARP Ping Scan at 01:43
Scanning 192.168.56.1 [1 port]
Completed ARP Ping Scan at 01:43, 0.02s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 01:43
Completed Parallel DNS resolution of 1 host. at 01:43, 13.00s elapsed
Initiating SYN Stealth Scan at 01:43
Scanning 192.168.56.1 [1715 ports]
Discovered open port 25/tcp on 192.168.56.1
Discovered open port 80/tcp on 192.168.56.1
Discovered open port 110/tcp on 192.168.56.1
Discovered open port 2500/tcp on 192.168.56.1
Discovered open port 1241/tcp on 192.168.56.1
Completed SYN Stealth Scan at 01:43, 0.55s elapsed (1715 total ports)
Initiating Service scan at 01:43
Scanning 5 services on 192.168.56.1
Completed Service scan at 01:43, 11.47s elapsed (5 services on 1 host)
Initiating OS detection (try #1) against 192.168.56.1
SCRIPT ENGINE: Initiating script scanning.
Initiating SCRIPT ENGINE at 01:43
Completed SCRIPT ENGINE at 01:43, 5.05s elapsed
Host 192.168.56.1 appears to be up ... good.
Interesting ports on 192.168.56.1:
Not shown: 1710 closed ports
PORT STATE SERVICE VERSION
25/tcp open smtp Postfix smtpd
|_ SMTP: HELP with errors or timeout. Enable --script-trace to see what is happening.
80/tcp open http Apache httpd 2.2.9 ((Ubuntu) PHP/5.2.6-2ubuntu4.2 with Suhosin-Patch)
|_ HTML title: Index of /
110/tcp open pop3 hotwayd pop3d 0.8.4
1241/tcp open ssl/unknown
2500/tcp open smtp-proxy hotsmtpd based on hotwayd 0.8.4
MAC Address: (Unknown)
Device type: general purpose
Running: Linux 2.6.X
OS details: Linux 2.6.13 - 2.6.23
Uptime: 0.089 days (since Fri Jun 26 23:35:55 2009)
Network Distance: 1 hop
TCP Sequence Prediction: Difficulty=201 (Good luck!)
IP ID Sequence Generation: All zeros
Service Info: Host: go0ns.s3rver
Read data files from: /usr/local/share/nmap
OS and Service detection performed. Please report any incorrect results at No tienes permitido ver los links. Registrarse o Entrar a mi cuenta .
Nmap done: 1 IP address (1 host up) scanned in 33.036 seconds
Raw packets sent: 1735 (77.100KB) | Rcvd: 1731 (80.266KB) ]
Uff que lectura mas larga pero vamos a ver que datos contiene que nos pueden ayudar y ya se habran dado de cuenta de la gran diferencia con los resultados y el cambio de Parametros.
Veamos primero el scan y estas opciones para ver lo que relativamente es importante antes de probar este de ahora tratamos de identificar el sistema operativo lo que realizo fue adivinar el sistema operativo pero esta vez logramos de dar con el mismo mas especificamente y dar con los servicios que gestiona el mismo como los deamons miremos:
[ PORT STATE SERVICE VERSION
25/tcp open smtp Postfix smtpd
|_ SMTP: HELP with errors or timeout. Enable --script-trace to see what is happening.
80/tcp open http Apache httpd 2.2.9 ((Ubuntu) PHP/5.2.6-2ubuntu4.2 with Suhosin-Patch)
|_ HTML title: Index of /
110/tcp open pop3 hotwayd pop3d 0.8.4
1241/tcp open ssl/unknown
2500/tcp open smtp-proxy hotsmtpd based on hotwayd 0.8.4 ]
Como podemos ver identifica nuevamente los puertos ya mencionados asi como los servicios y la version y magicamente identifica el sistema operativo que gestiona el server :
[ Apache httpd 2.2.9 ((Ubuntu) PHP/5.2.6-2ubuntu4.2 with Suhosin-Patch ]
Sonrisa y la otra parte relativamente importante es que identifica la version de los servicios aunque esto no es tan fundamental por que puede que sea un falso asi como uno correcto pero aqui es que llega la intuicion del auditor de usar la logica ya que puedes ir teoricamente buscando cual es la version real de dicho servicio con la identificacion del sistema operativo.
y que resume esto? que podemos darnos con el escenario que la aplicacion web no es vulnerable pero si los servicios o deamons del mismo y podemos vulnerarla por ahi xD ELEMENTAL NO?
por eso es que es bien importante los scaneos de identificacion por que de muchas maneras puedes encontrar las vulnerabilidades si no lo son a nivel web son a nivel server pero siempre encontraras algo.Sigamos
[ OS details: Linux 2.6.13 - 2.6.23 ]
Nos indica mas o menos el kernel que corre bajo el sistema operativo pero no siempre se da este caso del mismo las mayoria de las veces lo atina..
otra de las herramientas que podemos encontrar por la jungla de la web es xprobe2 para la identificacion de sistemas operativos veamos:
[ go0ns.squad # xprobe2 -v 192.168.56.1
* Primary guess:
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.22" (Guess probability: 100%)
* Other guesses:
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.23" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.21" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.20" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.19" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.24" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.25" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.26" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.27" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.28" (Guess probability: 100%)
* Cleaning up scan engine
* Modules deinitialized
* Execution completed ]
casi igual como nmap lo unico que este tiene tareas mas especificas en la identificacion de sistemas operativos y nos arroja el mismo resultado que muchas veces pued confundir pero a medida que vallan perfeccionando las tecnicas dan con los mismos.
Otra herramienta que nos puede ayudar en la identificacion de sistemas y objetivos de la informacion del mismo es Maltego que se puede descargar desde No tienes permitido ver los links. Registrarse o Entrar a mi cuenta con la que pueden sacar emails,directorios,archivos,dominios,sub dominios y otras cosas del servidor identificado.
entonces que es lo que quiero adentrar y detallar mas aqui solo queria explicarles que para identificar vulnerabilidades en un servidor no tienes primero que comenzar por la aplicacion web nesesariamente con tan solo con la identificacion misma del sistema puedes abrir muchas posibilidades a descubrir muchas mas cosas que solo las vulnerabilidades que tiene la web o el servidor...
si ya saben que pueden encontrar una aplicacion web en un servidor que no sea vulnerable que buscas por lados y no encuentras nadas pero se te olvido buscar los servicios que tiene el server pero cuando scaneas encuentras que tiene varios deamons que son vulnerables como el mencionado arriba que gestiona el correo postfix donde corre el servicio smpt y supongamos que ese servicio contiene un deamon que sea vulnerable a un buffer overflow o (desbordamiento) como quieran decirle entonces BINGO !!! haz encontrado algo al menos en mi servidor local solo hay muy ocos servicios gestionandose.
pero siempre alla fuera en la jungla encontrarn muchicimo mas como servicios de mysql,mssql,u otras cosas interesantes..
entonces siempre recuerden que la identificacion de sistemas es lo primero que debemos hacer a la hora de buscar vulnerabilidades en una web por que puedes llegar a encontrar puertas abiertas sin tener que registrar la aplicacion web y no te imaginas las posibilidades que hay dentro del mismo..
si si te preguntas SE PUEDE USAR NMAP PARA BUSCAR VULNERABILIDADES? no y si por que no te identificara las vulnes de primera instancia pero realiza algunas cadenas de reglas como metodos de scan que te audarian a identificar servicios sin actualizacion vulnerables a algunos ataques..
espero que esta breve explicacion sobre la importancia de la identificacion y puertos de un sistema les haya gustado ya Breve Pasamos al proximo Paper y Aqui les dejo una listita de algunas herramientas que te ayudarian en este renglon:
nmap
Zenmap
Amap
Maltego
httprint
unicornscan
xprobe
son herramientas con usos similares pero les pueden acomodar tareas especificas para sacarle provecho...
Greetz: JosS,alevsk,ANTRAX,h4n0wars,e-r00t.org,security-shell members,Darvein,y mis hijos por crecer tan rapido carajo xD..
###########
#blood_rec#
###########
#50
Bugs y Exploits / SMF .htaccess ByPass
Febrero 24, 2010, 03:26:19 PM
SMF .htaccess ByPass
Discovered by Seph1roth on June 2007 (was priv8)
#
# Vulnerable: Simple Machine Forum [ALL Versions]
#
# Visit: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta - Best hacking site.
#
# Description:
If smf has index.php?action=admin in .htaccess ,i can bypass that by typing in the url some variable of administration panel :
example:
index.php?action=admin (.htaccess,then access denied)
index.php?action=membergroups (accessible)
index.php?action=news (accessible)
index.php?action=featuresettings (accessible)
...and others...
i can bypass and enter the administration by typing the accessible variables in the url...
# Greets to all BlackRoots Users
#
# Shoutz to all kiddies
#
# ./end
-------------------
Traduccion rapidita:
Vulnerable: Simple Machine Forum [Todas las Versiones]
# Description:
si el smf tiene .htaccess en index.php?action=admin, se puede bypasear escribiendo en la url una variable dentro del panel de administracion.
Ejemplo:
index.php?action=admin (.htaccess, DENEGADO)
index.php?action=membergroups (accessible)
index.php?action=news (accessible)
index.php?action=featuresettings (accessible)
Bytes
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Discovered by Seph1roth on June 2007 (was priv8)
#
# Vulnerable: Simple Machine Forum [ALL Versions]
#
# Visit: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta - Best hacking site.
#
# Description:
If smf has index.php?action=admin in .htaccess ,i can bypass that by typing in the url some variable of administration panel :
example:
index.php?action=admin (.htaccess,then access denied)
index.php?action=membergroups (accessible)
index.php?action=news (accessible)
index.php?action=featuresettings (accessible)
...and others...
i can bypass and enter the administration by typing the accessible variables in the url...
# Greets to all BlackRoots Users
#
# Shoutz to all kiddies
#
# ./end
-------------------
Traduccion rapidita:
Vulnerable: Simple Machine Forum [Todas las Versiones]
# Description:
si el smf tiene .htaccess en index.php?action=admin, se puede bypasear escribiendo en la url una variable dentro del panel de administracion.
Ejemplo:
index.php?action=admin (.htaccess, DENEGADO)
index.php?action=membergroups (accessible)
index.php?action=news (accessible)
index.php?action=featuresettings (accessible)
Bytes
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#51
Bugs y Exploits / [Tutorial] Vulnerabilidad CSRF By ShadinessDark [Colaboracion de Zero Bits]
Febrero 24, 2010, 03:24:51 PMInicio Tutorial Cross Site Request Forgery By ShadinessDark = Zero Bits
1.) Presentación
2.) Que es CSRF
3.) Quien descubrió la vulnerabilidad CSRF
4.) CSRF y Xss
5) Robo de Cookies en XSS & CSRF (Diferencia) - Colaboracion de Zero Bits
6.) Testeando vulnerabilidad CSRF y programas el code vulnerable
7.) Sacando una conclusión a todo
8.) Como cuidar nuestra Web de este tipo de ataques
9.) Despedida
1.) Presentación
Primero que nada este tutorial va dedicado a mis amigos de BugDox y a todo los Lectores especialmente a los que no les caigo bien, muchos me harán criticas Y eso es Bueno porque Uds. Me corrigen como muchos saben yo me retire del DEFACING no Es que yo sea conocido ni nada por el estilo este tutorial lo he hecho de manera especial
Para dar la diferencia de otros tutoriales que he visto en la red...
¿Por qué diferente?
Porque la mayoría de los tutoriales visto en la red son poco explicados para iniciados
¿A que se debe este tutorial?
Bueno este tutorial no puedo decir que lo hago con el fin de bien lo hago para bien y Para mal lo hago con concepto de cómo explotarlo y concepto de cómo arreglarlo
No es mi culpa que un Web Master no me haga caso ¿Verdad?
Los saludos más especiales para mis compañeros:
Zero Bits
KuTer
Jeferx
Darki113r
_84kur10_
Z1z30f
Kozmic.Kizz
2.) Que es CSRF
Bueno como muchos quizás han leído en la wikipedia ya csrf representa a
Cross Site Request Forgery el ataque se efectúa cuando por ejemplo Vemos algo
Así No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Siempre el atacante usa como victima a un usuario que le brinda confianza la Web.
Los que tenemos foros sabemos que cada usuario tiene como destino un perfil donde
Cambiamos contraseña – email – nombre de usuario y otras cositas casi siempre el Atacante usa un código malicioso para hacer una petición en {GET – Post – HTTP}
Con esta vulnerabilidad el atacante le puede cambiar a la victima su información de PERFIL.
3.) Quien descubrió la vulnerabilidad CSRF
En el 1988 Hardy Norma publico un documento que explique una solicitud cuestión nivel de confianza que llamo un
Diputado confuso. En 2000, un correo a bugtraq explico Zope fue afectado por un problema confuso
Web diputado que se define hoy como una vulnerabilidad CSRF mas tarde en el 2001 Peter Watkins publico una entrada
En la lista de correo bugtraq acuñar el termino CSRF en respuesta a otro hilo titulado
Los peligros de permitir a los usuarios colocar imágenes en los sitios Web.
Bueno sobre quien lo descubrio ese credito si no me toca a mi esa parte es de No tienes permitido ver los links. Registrarse o Entrar a mi cuenta solo lo logre traducir...
4.) CSRF y Xss
Quizás muchas personas nos preguntamos o se preguntan si esta vulnerabilidad
Es parecida o igual a xss.
Les explico bueno xss se aprovecha de la confianza de la victima que tiene el sitio
Web o aplicación el usuario lea ae contenido que aparece en su navegador que esta destinada y representada por el sitio Web que se esta viendo.
El csrf se aprovecha de la confianza que el sitio tiene para la victima ósea usuario...
4.1) Robo de Cookies en XSS & CSRF (Diferencia) - Colaboracion de Zero Bits
Bueno hay un metodo en XSS que algunos amigos me han dicho que se parece a el XSRF o CSRF, que son el ROBO DE COOKIES EN XSS y el CSRF, la verdad es que no ya que, el robo de cookies por xss como su nombre lo indica roba las cookies de cualquier usuario o administrador del sitio y el CSRF se encarga de ROBAR, VER y CAMBIAR cualquier informacion dependiendo de la victima que caiga.
Vamos a ver un ROBO DE COOKIES EN XSS y un ataque CSRF clasico, para que vean un poco la diferencia...
- ROBO DE COOKIES EN XSS
Primero tendriamos que saber si el server es vulnerable a XSS o tambien podriamos probar que el code
no filtre bien el contenido que se le asigne.
Para algunos que no entienden lo de es cuando dentro del agregariamos un link como y cuando se le de click se ejecute hay mismo, tambien podriamos agregar XSS con codes HEXADECIMALES (ya esto es otro tema, asi que no lo explicare).
Bueno, en otro servidor aparte (que seria el nuestro) codeariamos un programa en PHP que se encargue de recibir al usuario victima y robarle las cookies apenas entre (Para esto se necesita saber por lo menos PHP BASICO)
PD: Este code no es mio es de Chebyte. Pero esto es basico...
Bueno, le explicare el code para quienes no lo entiendan:
$cookie = $_REQUEST[cookie] : El que recibe la cookie
$file=fopen("cookies.txt", "a") : Crea el archivo cookies.txt para lectura
fput($file, "$cookie\n") : Muestra la cookie
fclose($file) : Cierra
Podriamos guardarlo "robador.php" y ahora faltaria el code que redireccione a este CODE:
Y Tachan! tienes la cookie...
Bueno antes que nada les dire lo SCRIPT KIDDIE y BUENO de este metodo:
1. SCRIPT KIDDIE: Usar este metodo contra webs de Hacking
2. NO-LAMMER: Usar contra sites malos como: Porno, Pedofilia, Estafadores, Enemigos, EMOS!!!, etc..
3. SCRIPT KIDDIE: Aprender este metodo unicamente sin saber como funciona
4. NO-LAMMER: Aprender JAVASCRIPT, HTML y PHP
5. MEDIO: Usarla para Phishing [Es malo y es bueno xD, pero no es lammer]
5. SCRIPT KIDDIE: Hacking MSN -.-"
Ahora pasaremos a hablar del CSRF clasico:
- XSRF/CSRF Clasico
Bueno ahora usaremos una forma de XSRF clasico, pero no de robo si no de CAMBIO de datos, que seria primero como dije probar si el server es vulnerable a JAVASCRIPT, o si no filtra bien el contenido de los BBCODES, o los inputs mal programados, o tambien podriamos atacar normal, sin que el usuario sepa que es un ataque.
Podriamos atacar sin que la victima sepa que es malo asi (dependiendo de la pagina):
Como dije depende de la web, SI EL SITE NO TIENE AL CAMBIAR DATOS, REPITE EL EMAIL o CONTRASEÑA es vulnerable y tambien de los input "name=NOMBRE" del site. La victima no sabe que le hemos cambiado el email...
Tambien si al cambiar datos salga un link como este:
CitarNo tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Es super hiper mega vulnerable ya que notamos que no dice en el link a cambiar: PASSANTERIOR o EMAILANTERIOR... y que pasa si le mandamos un MP (Mensaje Privado) depende claro si es un foro con un link como este:
Man vota por mi
Y al hacer click en cualquiera de los ejemplos los datos han sido cambiados..
Espero que les haya gustado mi parte en este bonito tutorial creado por mi bro ShadinessDark y puedan entender la diferencia entre XSS (El robo de cookies) y CSRF...
Mis saludos a:
ShadinessDark, KuTer, _84kur10_, k4mus23, Jeferx, D4NB4R, Darki113r, ChEk0_Hack, DestruKci0oN, Xianur0, Zer0 Z0orG, Zer0-R00t, x_jeshua, ZH4RK, zonithack, Bashettzx, Crazyhacker16, krisium, tkdead, MaNditOo, loreValdy, wscalle1 y todos mis grandes amigos =P...
Saludos a Pandora's Box Team..
5.)Testeando vulnerabilidad CSRF y programas el code vulnerable
Los ataques csrf lo reproducen por etiquetas HTML/JAVASCRIPT o una
Imagen, daré un breve ejemplo:
Un ejemplo nos envían un correo electrónico o un MP en algún foro cuyo propósito
Del atacante es que al darle clic realiza una solicitud a una URL del atacante les Mostrare un ejemplo:
Por ejemplo usando una imagen src.
<img src="No tienes permitido ver los links. Registrarse o Entrar a mi cuenta">
Script
<script src="No tienes permitido ver los links. Registrarse o Entrar a mi cuenta">
Casi siempre se usan los IFRAME
<iframe src="No tienes permitido ver los links. Registrarse o Entrar a mi cuenta">
Los ejemplos de arribas son dados con HTML ahora les doy el ejemplo de los de Javascript
<script>
var foo = new Image(); var foo = new Image ();
foo.src = "No tienes permitido ver los links. Registrarse o Entrar a mi cuenta</script>
También se puede hacer por XHTML pero hay que usar IE y bueno esa no se las explicare en este tutorial y si quieren me avisan y bueno lo modifico, Claro que existen muchas formas Vbscript – Actionscript – HTML – Javascript - JScript y otros que utilizan de marcado en los navegadores de los usuarios que hacen
Realizar peticiones REMOTAS.
¿Cambiando datos de la victima?
Bueno este breve codigo es solo un pequeño ejemplo:
<script>
var post_data = 'name=value'; post_data var = 'nombre = valor';
var xmlhttp=new XMLHttpRequest(); var xmlhttp = new XMLHttpRequest ();
xmlhttp.open("POST", 'No tienes permitido ver los links. Registrarse o Entrar a mi cuenta', true); No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ( "POST", "No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ', true);
xmlhttp.onreadystatechange = function () { xmlhttp.onreadystatechange = function () (
if (xmlhttp.readyState == 4) if (xmlhttp.readyState == 4)
{ (
alert(xmlhttp.responseText); alert (xmlhttp.responseText);
} )
}; );
xmlhttp.send(post_data); xmlhttp.send (post_data);
</script> </ script>
Como podemos ver en este código hacemos una petición a POST
Acuérdense que arriba les comente que cuando el atacante usa un código
Malicioso hace una petición en Get. Post y HTTP ¿Se acuerdan? Espero y me vayan entendiendo...
¿A dónde se dirige esta petición?
Bueno esta petición se dirige a la base de datos del sitio me explico
Cada vez que hacemos cambios extremos en nuestro perfil todo pasa
Por una base de datos bueno cuando la victima le da clic a la url enviada
Por el atacante hace una petición en la base de datos y cambia los datos de la cuenta
De la victima de confianza por el atacante ¿Me van entendiendo a que se debe este ataque?
7.) Sacando una conclusión a todo.
Mirando la lógica a todo este ataque se basa en un código malicioso que es muy usado, HTML Y Javascript.
Es un tipo de ataque que por parte de HTML usamos la etiqueta src y en javascript Usamos la misma etiqueta este ataque es basado en darle clic a un vinculo al Redireccionar la Web y cargar cambia la información que de nuestro usuario.
Haciendo una petición en la base de datos del código del atacante...
8.) Como cuidar nuestra Web de este tipo de ataques
Primero que nada vamos a nuestro FTP introducimos nuestros datos y entramos a la Carpeta public_html o donde este el archivo index.php le añadiremos algo que diga
'Actualcontraseña' Antes de seguir el código que pondré es sacado de la siguiente pagina No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Después que estemos en el index.php introduciremos este código con el Actualcontraseña esto tiene que ir dentro de <?php...
Luego buscamos el archive que se llama Config.php lo pueden encontrar
Por el mismo FTP y le agregamos lo siguiente:
En el archive datos.php usaremos lo siguiente:
Ahora vamos a nuestro panel entramos a PHPMYADMIN ósea a nuestro phpmyadmin
Y le damos donde dice Consulta y introducen el siguiente código:
9.) Despedida
Bueno señores ya hemos terminado este tutorial quizás muchos no entendieron
Y otros si me entendieron traten de hacer lo mejor por dar una buena explicación
Pero recuerden que no todo se pone tan fácil, Bueno en este tutorial compartí gran
Parte con mi hermano zero bits que su parte quedo maravillosa lo se porque lo lei
Me gustan las críticas así que espero las críticas tutorial escrito a mano todo los derechos del autor reservados y los códigos no todos son nuestros por eso hemos
Puesto en algunos la fuente les deseo un gran fin de semana...
No pongo mi sitio Web porque siempre los Web Master andan con el trauma de que
Hacemos Spam como si con eso piensan que acabaran el Spam sueñen un rato...
Group's Ethical.
Zero Bits
#52
Bugs y Exploits / [Tutorial] RFI By ShadinessDark
Febrero 24, 2010, 03:24:23 PMTutorial remote file inclusion
1.) Presentación
2.) Que es RFI
3.) Dorks RFI
4.) Testeando la vulnerabilidad
5.) Sacando una conclusión a todo
6.) Como cuidar nuestra Web de este tipo de ataques
7.) Despedida
1.) Presentación
Primero que nada este tutorial va dedicado a mis amigos de BugDox y a todo los Lectores especialmente a los que no les caigo bien, muchos me harán criticas Y eso es Bueno porque Uds. Me corrigen como muchos saben yo me retire del DEFACING no Es que yo sea conocido ni nada por el estilo este tutorial lo he hecho de manera especial
Para dar la diferencia de otros tutoriales que he visto en la red...
¿Por qué diferente?
Porque la mayoría de los tutoriales visto en la red son poco explicados para iniciados
¿A que se debe este tutorial?
Bueno este tutorial no puedo decir que lo hago con el fin de bien lo hago para bien y Para mal lo hago con concepto de cómo explotarlo y concepto de cómo arreglarlo
No es mi culpa que un Web Master no me haga caso ¿Verdad?
Los saludos más especiales para mis compañeros:
Zero Bits
KuTer
Jeferx
Darki113r
_84kur10_
Z1z30f
Kozmic.Kizz
2.) Que es RFI
RFI tiene como nombre Remote File Inclusión en español inclusión remota de archivo
Como ya saben que dice en la wikipedia esta vulnerabilidad se encuentra en páginas
Dinámicas ósea echas en PHP no en todo tipo de Web como saben siempre es depende
Del buen programador esta vulnerabilidad se encuentra en include() casi siempre
Buscamos en los códigos de fuentes por eso es bueno estar pendiente de nuestra Programación cuando tenemos un sitio Web, Un atacante puede inyectar su código
En un programa PHP en su servidor, Cuando acceden al servidor pueden acceder a Cualquier que tiene el programa PHP por ejemplo:
Base de datos
Archivos de contraseña
Y otras cosas
Pueden instalar sus propios servidores que lo ejecutan con los privilegios de la victima
Del servidor Web como {apache o httpd} Y si el servidor no lo han modificado en algunos locales de la vulnerabilidad de escalada de privilegios el atacante que monto
La shell puede ser usada para convertirse en root...
3.) Dorks RFI
Con un dork podemos conseguir las vulnerabilidades al azar con solo visitar
Www.Google.com y poner lo siguiente:
/index.inc.php?PATH_Includes=
/ashnews.php?pathtoashnews=
Uno de estos dos les servirá si no visiten No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
4.) Testeando la vulnerabilidad
Bueno ya hemos encontrado una Web ahora vamos a testearla haber si es vulnerable
Primero que nada muchas veces esto se encuentra con solo revisar en los códigos de Fuente siempre se encuentra lo siguiente:
Recordemos que esta vulnerabilidad se presenta cuando se intenta meter una página
Remota adentro de la otra y se utilizan lo códigos que di como ejemplo cuando se Encuentra la Vulnerabilidad.include() lo que hace es incluir una pagina remota por ejemplo $Bugdox
Se puede utilizar una url bajo argumento y eso es lo que hace explotar RFI por ejemplo:
tenemos ?ejemplo.php cuando el atacante introduce su codigo malicioso.
Citar
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Www.xD.com es la Web donde subí mi SHELL con el nombre c99.jpg
Al ejecutar esto en la Web de la victima ¿Qué pasa? No recoge ejemplo.php
Si no que el sistema agarra la url maligna que es la que le da una CONEXIÓN REMOTA que es cuando introducimos nuestra shell ¿Me entienden?.Un atacante
Puede saber controlar las variables de PHP se hace mediante:
Cuando register_globals esta habilitado en PHP el lenguaje automagicamente
Hace una instancia con los valores de las variables de la petición en http, y los pone
En el espacio de nombres del programa PHP.
Cuando se activa se le permite a un atacante inyectar un valor para cualquier variable Sin inicializar en cualquier programa solo el atacante añade un parámetro GET al final De la url es decir después de "="
Ejemplo hemos entrado en No tienes permitido ver los links. Registrarse o Entrar a mi cuenta hemos mirado el código de fuente
Hemos observado que tiene include() hacemos la prueba:
Resulta que al darle clic nos redirección a GOOGLE de una vez ya sabemos que la Web Es vulnerable a RFI.
Luego que encontramos nuestra Web vulnerable buscamos nuestra SHELL
Ya sea c99 o r57 y hay otras mas.
Buscamos un hosting gratuito que soporte PHP y guardamos nuestra shell en un
Jpg.php o con gif.php no importa el formato porque tampoco que vamos a poner
Cualquier formato a veces muchas Web no permiten extracciones como gif y otras...
5.) Sacando una conclusión a todo
Como pueden ver la lógica rfi no es muy difícil es un ataque muy básico
Trata de que No tienes permitido ver los links. Registrarse o Entrar a mi cuenta es la Web vulnerable bugdox.php esta es la que
Incluirá el redireccionamiento ?ejemplo= Esta es la que le permite a un atacante
Introducir códigos maliciosos por ejemplo la SHELL y No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Este sitio es el que almacena la shell...
6.) Como cuidar nuestra Web de este tipo de ataques
Para evitar este tipo de ataques en nuestros sitios podemos ir al FTP y buscar
La configuración index.php lo editamos y agregamos lo siguiente:
Antes de continuar este CODIGO de seguridad no es hecho por mi lo pueden ver
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta...
Codigo:
if (file_exists($_GET['id'].".php")) {
include ($_GET['id'].".php");
} else {
echo "El acceso a este lugar lo tiene denegado o no existe";
}
Ejemplo de codigo:
echo "El acceso a este lugar lo tiene denegado o no existe";
Este if funciona de la manera que si al colocar:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No te redireccionara si no que te dirá El acceso a este lugar lo tiene desnegado o no Existe pero si por ejemplo agregamos:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Y si existe pasara normalmente sin dar el error para que no de el Error este archivo debe existir.
7.) Despedida
Otro tutorial mas que hago no es la gran cosa a lo mejor tengo errores por hay
Si los tengo me gustarian las {Criticas} Son muy importante para correjir a los
Demas...
No pongo mi sitio Web porque siempre los Web Master andan con el trauma de que
Hacemos Spam como si con eso piensan que acabaran el Spam sueñen un rato.
By ShadinessDark
#53
Bugs y Exploits / Método de ataque y ejemplo de Software By ShadinessDark
Febrero 24, 2010, 03:23:44 PMEl peligro de permitir flash en los sitios.
By ShadinessDark
1.) Presentación
2.) ¿Que es flash?
3.) Método de ataque y ejemplo de Software
4.) Conclusión
5.) Despedida
1.) Presentación
Primero que nada este tutorial va dedicado a mis amigos de BugDox y a todo los Lectores especialmente a los que no les caigo bien, muchos me harán criticas Y eso es Bueno porque Uds. Me corrigen como muchos saben yo me retire del DEFACING no Es que yo sea conocido ni nada por el estilo este tutorial lo he hecho de manera especial
Para dar la diferencia de otros tutoriales que he visto en la red...
¿Por qué diferente?
Porque la mayoría de los tutoriales visto en la red son poco explicados para iniciados
¿A que se debe este tutorial?
Bueno este tutorial no puedo decir que lo hago con el fin de bien lo hago para bien y Para mal lo hago con concepto de cómo explotarlo y concepto de cómo arreglarlo
No es mi culpa que un Web Master no me haga caso ¿Verdad?
Los saludos más especiales para mis compañeros:
Zero Bits
KuTer
Jeferx
Darki113r
_84kur10_
Z1z30f
Kozmic.Kizz
1.) ¿Que es flash?
Segun la wikipedia:
Adobe Flash es una aplicación en forma de estudio de animación que trabaja sobre "Fotogramas" destinado a la producción y entrega de contenido interactivo para diferentes audiencias alrededor del mundo sin importar la plataforma. Es actualmente escrito y distribuido por Adobe Systems, y utiliza gráficos vectoriales e imágenes ráster, sonido, código de programa, flujo de vídeo y audio bidireccional (el flujo de subida sólo está disponible si se usa conjuntamente con Macromedia Flash Communication Server). En sentido estricto, Flash es el entorno y Flash Player es el programa de máquina virtual utilizado para ejecutar los archivos generados con Flash.
Los archivos de Flash, que tienen generalmente la extensión de archivo SWF, pueden aparecer en una página web para ser vista en un navegador, o pueden ser reproducidos independientemente por un reproductor Flash. Los archivos de Flash aparecen muy a menudo como animaciones en páginas Web y sitios Web multimedia, y más recientemente Aplicaciones de Internet Ricas. Son también ampliamente utilizados en anuncios de la web.
En versiones anteriores, Macromedia amplió a Flash más allá de las animaciones simples, convirtiéndolo en una herramienta de desarrollo completa, para crear principalmente elementos multimedia e interactivos para Internet.
Fue hasta 2005 perteneciente a la empresa Macromedia conocido hasta entonces como Macromedia Flash® y adquirido por Adobe Systems (desde entonces conocido como Adobe Flash) ampliando con ello su portafolio de productos dentro del mercado. No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
3.) Método de ataque y ejemplo de Software
Vamos a imaginar que tenemos un sitio No tienes permitido ver los links. Registrarse o Entrar a mi cuenta este sitio permite a los
Usuarios poner sus firmas en flash y sus imágenes flash haciendo el uso de la
Etiqueta EMBED, Imaginemos que vamos a nuestro perfil donde editamos nuestros
Datos y entramos a donde colocamos la firma y agregamos.
Este código lo añade el atacante en la cajita de TEXTO del foro de la victima la cual
Permite robar las cookies de sesión de usuario digamos que este ataque se reproduce
En sitios que permiten usar mucho flash hay una página que hace poco mire que fue
Por ella que me nació la idea de hacer este tutorial quizás muchos la conocen No tienes permitido ver los links. Registrarse o Entrar a mi cuenta bueno hay antes permitían mucho usar el flash no se si
Todavía lo hagan bueno este sitio permite que suban archivos los usuarios...
Bueno en el caso de los SMF el flash es peligroso va para los webmasters empezando
Por mi que uso flash en mi SMF ya en SMF la etiqueta es [flash]http://y cierra[/flash]
La etiqueta [Flash]http://se convierte en la etiqueta de un objeto correcto...
Un ejemplo:
Interpretemos por el script y nos quedaría algo así en lo anterior:
Bueno Uds se preguntaran que es clsid:D27CDB6E-AE6D-11cf-96B8-444553540000
Solo es un tag.
Bueno estos solo son ejemplos toda pagina Web que permite FLASH en la Web es probablemente vulnerable a un ataque XSS
¿Cómo protegemos nuestro sitio Web?
Solamente no permitamos los archivos flash en web-app. También una buena solución
Seria analizar la realidad del problema animación flash y el filtro de parámetros maliciosos
Usados por el atacante por medio de getURL(). Con esto me refiero a cuando un sitio Web
Permite que los archivos swf sean cargados al servidor, Muchos webmasters permiten a los Usuarios subir archivos lo mas seguro seria que los Webmasters del sitio bloqueen todo lo que
Tenga que ver con flash que contiene getURL() Esta acción no se refieren específicamente el ataque se reproduce a un sitio http xD también podemos cambiar getURL() esto podemos lograrlo por medio de la especificación de la ventana "_blank" me imagino que la han oído
En lenguaje de programación Web al hacer el cambio descritos la dirección URL javascript no
Se ejecutara con privilegios en el dominio que te aloja...
Como muchos sabemos ActionScript es un lenguaje es un lenguaje de Scripting complejo y proporcionamos con el la función eval() esto le permite a los atacantes mas sofisticados para
Evitar la protección de una análisis de ActionScript...
Un buen ejemplo le definiríamos asi:
Espero y me entiendan...
4.) Conclusión
Bueno si le vemos un poco la lógica a todo no es muy interesante pero peligrosa
Para los Webmaster a la hora de permitir usar SWF en su sitio Web, Si vemos
Este ataque nos lleva a un ataque XSS, Creo que con la explicación es más que
Entendible que el archivo la cual hemos subido como flash cuando la victima
Le da clic podemos sacar las cookies y así usarla para las travesuras si me equivoco
Corríjanme.
5.) Despedida
Otro tutorial mas que hago no es la gran cosa a lo mejor tengo errores por hay
Si los tengo me gustarian las {Criticas} Son muy importante para correjir a los
Demas...
No pongo mi sitio Web porque siempre los Web Master andan con el trauma de que
Hacemos Spam como si con eso piensan que acabaran el Spam sueñen un rato...
#54
Bugs y Exploits / Introduccion al HTTP Hacking By Zero Bits
Febrero 24, 2010, 03:19:41 PM
Introducción al HTTP Hacking
Este solo es una mera introduccion al HTTP Hacking hablando de los metodos y algunos ejemplos de como funcionan. Antes lean esto:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Ya que leyeron, explicare los metodos HTTP....
Metodos HTTP:
GET: Viene activado por defecto, puede obtener info de un fichero y tambien solicita una pagina.
HEAD: El server devuelve los headers de la pagina, gracias a eso podemos sacar buena info del Servidor.
Ej: Vamos a usar el MS-DOS con No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Abromps el MS-DOS y escribimos "nc No tienes permitido ver los links. Registrarse o Entrar a mi cuenta 80", se conectara en la linea de abajo de eso, escribimos: HEAD / HTTP/1.1, le damos dos veces a ENTER para confirmar y nos tira informacion como esta:
Cache-Control:Directivas que deben ser usadas a lo largo de la peticion
Content-Type:Con lo que salio, deben imaginarse
Set-Cookie:La cookie
Nos puede dar esa o mejor Informacion, depende del Servidor...
OPTIONS: Aqui esta otro que nos da mucha info, tambien informa de los metodos permitidos por el Servidor.
Ej: Probemos con No tienes permitido ver los links. Registrarse o Entrar a mi cuenta este metodo xD:
Podemos ver que info que sabran que es como DATE (La fecha actual), Server (Me imagino que ya sabran con lo que leyeron xD), Content-Length (Numero de caracteres), pero para quienes no conocen a ALLOW, dice los metodos permitidos por el Servidor, entonces aqui se permiten GET, HEAD, POST, OPTIONS y TRACE.
TRACE: Responde lo que le enviemos, podremos aprovecharnos de esa haciendo XSS o cualquier otra cosa como Floodearlo...
Ej:
Netcat dira si se llego a lograr o no...
POST: Podemos hacer que el servidor acepte informacion enviada por nosotros.
Ej: Podemos hacer que un uploader acepte una imagen con contenido malicioso.
PUT: Cuando vean que el servidor acepte PUT, leyendo esto puede que se emocionen, ya que PUT permite modificar un fichero.
Ej:
Content-Length, es el numero de caracteres....
Dependiendo de si funciona o no, te lo dira... A veces piden autorizacion, dependiendo de la seguridad, solo ahi que poner la IP o nombre del Servidor.
DELETE: Borra un fichero.
Ej:
nc No tienes permitido ver los links. Registrarse o Entrar a mi cuenta 80
DELETE /index.html HTTP/1.0
Bueno ya hemos terminado esta breve Introduccion al Http Hacking...
Pueden leer tutos:
* Aprende a usar Live http Headers
* HTTP al Descubierto By Sknight & Vengador de las Sombras
Autor: Zero Bits
Fecha: 24/07/09
Team: Pandoras Box Team
Este solo es una mera introduccion al HTTP Hacking hablando de los metodos y algunos ejemplos de como funcionan. Antes lean esto:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Ya que leyeron, explicare los metodos HTTP....
Metodos HTTP:
GET: Viene activado por defecto, puede obtener info de un fichero y tambien solicita una pagina.
HEAD: El server devuelve los headers de la pagina, gracias a eso podemos sacar buena info del Servidor.
Ej: Vamos a usar el MS-DOS con No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Abromps el MS-DOS y escribimos "nc No tienes permitido ver los links. Registrarse o Entrar a mi cuenta 80", se conectara en la linea de abajo de eso, escribimos: HEAD / HTTP/1.1, le damos dos veces a ENTER para confirmar y nos tira informacion como esta:
Cache-Control:Directivas que deben ser usadas a lo largo de la peticion
Content-Type:Con lo que salio, deben imaginarse
Set-Cookie:La cookie
Nos puede dar esa o mejor Informacion, depende del Servidor...
OPTIONS: Aqui esta otro que nos da mucha info, tambien informa de los metodos permitidos por el Servidor.
Ej: Probemos con No tienes permitido ver los links. Registrarse o Entrar a mi cuenta este metodo xD:
Podemos ver que info que sabran que es como DATE (La fecha actual), Server (Me imagino que ya sabran con lo que leyeron xD), Content-Length (Numero de caracteres), pero para quienes no conocen a ALLOW, dice los metodos permitidos por el Servidor, entonces aqui se permiten GET, HEAD, POST, OPTIONS y TRACE.
TRACE: Responde lo que le enviemos, podremos aprovecharnos de esa haciendo XSS o cualquier otra cosa como Floodearlo...
Ej:
Citarnc No tienes permitido ver los links. Registrarse o Entrar a mi cuentaTRACE / HTTP/1.0<script>alert("Probando TRACE")</script>
Netcat dira si se llego a lograr o no...
POST: Podemos hacer que el servidor acepte informacion enviada por nosotros.
Ej: Podemos hacer que un uploader acepte una imagen con contenido malicioso.
PUT: Cuando vean que el servidor acepte PUT, leyendo esto puede que se emocionen, ya que PUT permite modificar un fichero.
Ej:
CitarPUT /index.html HTTP/1.0
Content-Length: 14
<h1>Owned</h1>
Content-Length, es el numero de caracteres....
Dependiendo de si funciona o no, te lo dira... A veces piden autorizacion, dependiendo de la seguridad, solo ahi que poner la IP o nombre del Servidor.
DELETE: Borra un fichero.
Ej:
nc No tienes permitido ver los links. Registrarse o Entrar a mi cuenta 80
DELETE /index.html HTTP/1.0
Bueno ya hemos terminado esta breve Introduccion al Http Hacking...
Pueden leer tutos:
* Aprende a usar Live http Headers
* HTTP al Descubierto By Sknight & Vengador de las Sombras
Autor: Zero Bits
Fecha: 24/07/09
Team: Pandoras Box Team
#55
Bugs y Exploits / Cubriendo el Pentesting Web Cap 1 Sql Injections
Febrero 24, 2010, 03:19:24 PMsalu2
#56
Bugs y Exploits / Tips a la hora de usar shells + otras cuantas cosas
Febrero 24, 2010, 03:19:06 PM
Saludos a todos.
el tutorial esta basico, pero creo que a muchos les serviria
bueno el contenido de este minututorial es
0x01 Q son la shells.
0x02 PhpShells
0x03 Creacion de PhpShells
0x04 Subir una shell a un servidor
0x05 Ya subi la shell y ahora?
0x06 Preparando el sistema para volver (Keylogger php) o (POSTlogger php)
0x07 Dejar shell incrustada (Shell Embedded)
0x08 Preguntas en otros foros sobre este tuto
0x09 Conclusion
0x10 Agradecimiento
0x01 Shell
A una shell como tal la podemos definir como el software que permite que el usuario acceda a los servicios del sistema sin ir directamente al kernel, si no precisamente a travez de la shell, en otras palabras la shell sera una intermediaria entre el usuario y el sistema.
0x02 PhpShell (WebShell)
Bueno en este orden de ideas podemos entonces decir que una phpShell es un intermediario entre el sistema y el usuario, con la particularidad que esta desarrollada en php, asi como hay shells hechas en php, tambien existen en un sin fin de lenguajes de programacion, la ventaja de q la shell este hecha en php o en algun lenguaje de programacion para la web, es q podremos usar la shell aprovechando los servicios de la maquina remota.
en otras palabras Gracias a que en la maquina remota esta corriendo un servicio, nuestra (Web)shell se ejecutara y podremos visualizarla por el navegador.
0x03 Creacion de una PhpShell.
Pues como se imaginaran si quicieramos crear una phpshell, lo que necesitariamos fundamentalmente es conocer a fondo el lenguaje de programacion en el que la vamos a desarrollar, y crear opciones de manejo de archivos, navegacion en el servidor etc, es decir, todo lo que nos facilite interactuar con el sistema remoto.
un miniejemplo de una shell, que pueda ejecutar comandos en el servidor seria.
partiendo de que el comando de php : system('dir'); ejecuta el comando dir en la maquina donde este alojado el archivo, entonces podremos decir que lo haremos para que ejecute todo lo que envien por un navegador.
¿como asi? si pues por ejemplo si hacemos un archivo php con el siguiente contenido:
lo guardamos como test.php. lo colocamos en un servidor web que soporte php (podrian hacerlo en uno free o localmente para probar) y accedemmos al archivo por el navegador asi
el resultado que nos debe arrojar el servidor es simpemente: Hola
pues lo que le decimos esq con GET osea hace referencia a lo q viaje por la url (por decirlo de algun modo) y solo decimos que escriba lo q llego en comando.
si modificamos el test.php por algo como esto
lo que hara sera ejecutar el comando q le enviemos por la url
por ejemplo si mandamos algo como esto en la url
se ejecutara un dir en el servidor.
tambien podriamos hacer algo asi:
con lo que visualizaremos el codigo de index.php.
como ven, con este archivo php estamos de ciertaforma comunicandos con la maquina. asi que digamos q este es el principio basico de una shell. Actualemente encontraras shells famosas como c99,c100,r57... entre muchas otras, que ya cuentan con sistemas completo para saltarse muchos filtros. son faciles de encontrar. simpemente si quieren algunas de las q les digo coloquen en google:
0x04 Subir una shell a un servidor
Cuando se trata de atacar un servidor web, lo que uno principalmente busca de cierta forma, es tratar de colar una phpshell, para que? pues para tener mas acceso al servidor e ir por la informacion que nos interesa.
osea que ya se imaginaran que necesitan un especie de uploading o explotar algun tipo de bug que permita subir archivos. partiendo de ese principio basico se imaginaran que si colocamos digamos en google
encontraremos muchos uploading para probar haber si podemos colar una phpshell.
me he encontrado con muchas webs que no filtran las extensiones correctamente lo que nos permite subir archivos de forma arbitraria, eso es a lo llamamos Arbitrary file Upload, es asi como podemos subir una shell, sin tanto desmadre, y con poco esfuerzo.
aprovecho para contarle algo q me sucedio, durante el deface a el-informador... note e un principio q tenia blind sql inyeccion. pues como algunos sabran ese tipo de inyeccion son algo tediosas... tardamos mucho en dar con el resultado que queremos y a veces teniendo en cuenta q probablemente no corramos con suerte. entonces ps estaba trantando de hacerla cuando me dio por probar encontrar el panel de admin de la web que esta ubicado en:
me tope con una sorpresa cuando vi que habia un uploader para imagenes, asi que probe subir una shell.
y pues medio resultado... me sorprendi un poco e inclusive me dio algo de risa, pues de blind sql inyeccion a tener un uploading listo... y sin ningun esfuerzo pues jum... nos ahorramos bastante.
de esta forma subi la shell del informador (que aun esta online).
por otro lado, hay algunos tipos de filtros q nos podemos saltar, por ejemplo a veces usan cosas como
aqui lo que hacen es mirar lo q viene en el campo type de la cabecera http, para obtener el tipo del archivo, si strpos encuentra el tipo devuelve la posicion, si no devuelve un falso... como todos sabran podemos modificar las cabeceras para cambiar el tipo, pueden usar el http live header, achilles, tamper data... por otro lado podemos encontrarnos con esta filtracion.
con lo que solo bastaria subir la shell con un nombre como este shell.jpg.php, porq? porq explode('.','shell.jpg.php')
parte el nombre en un vector y toma el . como referencia, por tanto la posicion 1 tiene jpg y la 2 tiene php. y al comparar solo con la 1 entonces al parecer seria un jpg.
haber comoquemonos en este contexto, no tenemos ningun uploading, solo tenemos un sql inyeccion, y no tenemos admin login ni nada. cuanto esto pasa, podemos intentar filtrar una shell con la setencia outfile
podria ser algo como :
si nos pone mucha joda.. podemos intentar pasar el code php a hex para filtrarla.
Tambien podemos subir un archivo con PUT, bajo la condicion que el phpini este con esto
teniendo el put activado podemos enviar enla cabecera http algo como
y podremos subir shell.
0x05 Ya subi la shell y ahora?
Una vez que logremos tener la shell arriba, uno de los tips o cosas que podemos hacer es buscar los archivos de configuracion de la BD, para que? pues para usmear, o para dumpearla, como asi dumpearla? pues veran es simplemente descargarnos una copia de su BD, en particular las shells tienen opciones para los archivos q lista... como ver descargar editar etc.
ejemplo
ahora usmeando un poco encontramos los archivos de configuracion, inclusive notamos que nuestra shell nos lo indica.
si lo clickeamos nos dara informacion como esta:
con lo que nos podemos autenticar aqui.
Bueno una vez coloquemos los datos... de host,Bd user y password, podremos visualizar algo como:
la opcion dump es la que les habia mencionado previamente, y pues podran navegar en la bd... hagan de cuenta que es un cliente mysql.
la shell tiene opciones para hacer back conection.
para que sirve? pues para bypasear el cortafuegos, podemos leer archivos ya sea usando php o mysql... podremos hacer un sinfin de cosas, yo aconsejo que le brujeen a la shell ojala la la monten localmente, y ensayan las opciones. que pues son bastante intuitivas.
0x06 Preparando el sistema para volver
Bueno pues la idea es que una vez entramos, dejemos asegurado un proximo regreso, por ello esta es una de las tantas opciones, se trata de guardar en un log (que podria ser remoto pero que aqui lo dejo de forma local), esto se puede ubicar en el archivo php encargado de recibir los datos del login
Ahora podremos ver lo que guarde el log en logs.txt, aclaro q es un ejemplo simple, se podrian hacer cosas como conexion por ftp... etc. y si el admin quiere darse cuenta que le dejamos un keylogger (seria mas un POST logger o algo asi), pues tendria que ir a revisar el codigo fuente de su aplicacion.
0x07 Dejar shell incrustada (Shell Embedded)
se trata de agregar la shell dentro de un archivo existente, con el fin de evitar sumar archivos al servidor, solo es cuestion de encontrar el archivo indicado, y acomodamos la minishell para que solo reaccione si enviamos un parametro asi
esto con el fin de evitar q salgan errores... q adviertan que hay problemas en el archivo
y lo ejecutariamos asi
Bueno aqui acaba este listado de tips... y de teoria... espere les guste.
0x08 Preguntas de otros foros
ShadinessDark hackxcrack
Ah también me parece que le agregues la forma de esconder la shell...
Osea que no aparezca en la lista de archivos..
R
digamos q esta es su shell
y este es el index.php
hay varias formas ... por un lado esta una que es simplemente:
o
p´s es una forma sencilla. pero se podrian usar una especies de ofuscadres para que no se entienda el code.... y pues es cuestion de analizar cual es el mejor archivo para incrustar la shell... o el PostLogger...
edugibert hackxcrack
Se puede camuflar la shell con alguna archivo!! Haber si me explico coger el blinder y camuflar la shell con un pdf o un doc o lo que sea y después ejecutarlo ?¿ Si la respuesta es afirmativa como ?¿
R:
si man eso se puede hacer... quizas hallan varias formas, pero por ahora se me ocurren 2.
la primera es que subas digamos la shell con extension .jpg (o la que sea pero para el ejemplo sera jpg)
con la shell arriba con otro formato agregas un .htaccess con el siguiente codigo
eso hara que el servidor ejecute el code php de los jpg... por tanto aunq nuestra shell tenga extension jpg se ejecutara. ten encuenta q puede ser doc pdf lo q sea.
psdta: buena pregunta, con esto complementare el tuto
la otra que se me ocurre es que causemos un lfi aproposito asi:
y podremos incluir nuestra shell asi.
lo que hara que se incluya la supuesta imagen y se ejecute el php.
C3llu5 hackxcrack
tengo una pregunta
enkontre una web vulnerable, y logre subir un X texto para komprebar si me dejaba,
haora e intentado subir una shell , pero haora mi problem es el peso de la shell, no me pone problema por el formato, pero no me sube por el peso del archivo de la shell,
pues bueno mi pregunta, es ke si hay una de subirla, o alguna shell ke no pese tanto, para que no me ponga problema por el peso,
R:
man, que SO tiene el servidor?
podria intentar subir un archivo php pero no con una shell, si no con un uploader... depues ya subes shell usando el archivo q subiste... (un uploader pesa mucho menos)
o puede intentar subir un archivo php que ejecute esto
donde
es la ubicacion de tu shell
y ya despues accedes a:
0x10 Conclusiones
Nada solo resta decir, si quieres atacar algo la mejor herramienta es saber como funciona, asi tendras mas posibilidades
0x10 Agrecimiento
Agradezco a Cygog por sacarme de un par de dudas .
y a todos los q preguntan porq asi se complementa el tutorial.
Psdts
si ven errores o alguna bestialidad les agradezco me informen
Continuara...
by _84kur10_
el tutorial esta basico, pero creo que a muchos les serviria
bueno el contenido de este minututorial es
Tips a la hora de usar shells + otras cuantas cosas
0x01 Q son la shells.
0x02 PhpShells
0x03 Creacion de PhpShells
0x04 Subir una shell a un servidor
0x05 Ya subi la shell y ahora?
0x06 Preparando el sistema para volver (Keylogger php) o (POSTlogger php)
0x07 Dejar shell incrustada (Shell Embedded)
0x08 Preguntas en otros foros sobre este tuto
0x09 Conclusion
0x10 Agradecimiento
0x01 Shell
A una shell como tal la podemos definir como el software que permite que el usuario acceda a los servicios del sistema sin ir directamente al kernel, si no precisamente a travez de la shell, en otras palabras la shell sera una intermediaria entre el usuario y el sistema.
0x02 PhpShell (WebShell)
Bueno en este orden de ideas podemos entonces decir que una phpShell es un intermediario entre el sistema y el usuario, con la particularidad que esta desarrollada en php, asi como hay shells hechas en php, tambien existen en un sin fin de lenguajes de programacion, la ventaja de q la shell este hecha en php o en algun lenguaje de programacion para la web, es q podremos usar la shell aprovechando los servicios de la maquina remota.
en otras palabras Gracias a que en la maquina remota esta corriendo un servicio, nuestra (Web)shell se ejecutara y podremos visualizarla por el navegador.
0x03 Creacion de una PhpShell.
Pues como se imaginaran si quicieramos crear una phpshell, lo que necesitariamos fundamentalmente es conocer a fondo el lenguaje de programacion en el que la vamos a desarrollar, y crear opciones de manejo de archivos, navegacion en el servidor etc, es decir, todo lo que nos facilite interactuar con el sistema remoto.
un miniejemplo de una shell, que pueda ejecutar comandos en el servidor seria.
partiendo de que el comando de php : system('dir'); ejecuta el comando dir en la maquina donde este alojado el archivo, entonces podremos decir que lo haremos para que ejecute todo lo que envien por un navegador.
¿como asi? si pues por ejemplo si hacemos un archivo php con el siguiente contenido:
lo guardamos como test.php. lo colocamos en un servidor web que soporte php (podrian hacerlo en uno free o localmente para probar) y accedemmos al archivo por el navegador asi
el resultado que nos debe arrojar el servidor es simpemente: Hola
pues lo que le decimos esq con GET osea hace referencia a lo q viaje por la url (por decirlo de algun modo) y solo decimos que escriba lo q llego en comando.
si modificamos el test.php por algo como esto
lo que hara sera ejecutar el comando q le enviemos por la url
por ejemplo si mandamos algo como esto en la url
se ejecutara un dir en el servidor.
tambien podriamos hacer algo asi:
con lo que visualizaremos el codigo de index.php.
como ven, con este archivo php estamos de ciertaforma comunicandos con la maquina. asi que digamos q este es el principio basico de una shell. Actualemente encontraras shells famosas como c99,c100,r57... entre muchas otras, que ya cuentan con sistemas completo para saltarse muchos filtros. son faciles de encontrar. simpemente si quieren algunas de las q les digo coloquen en google:
0x04 Subir una shell a un servidor
Cuando se trata de atacar un servidor web, lo que uno principalmente busca de cierta forma, es tratar de colar una phpshell, para que? pues para tener mas acceso al servidor e ir por la informacion que nos interesa.
osea que ya se imaginaran que necesitan un especie de uploading o explotar algun tipo de bug que permita subir archivos. partiendo de ese principio basico se imaginaran que si colocamos digamos en google
encontraremos muchos uploading para probar haber si podemos colar una phpshell.
me he encontrado con muchas webs que no filtran las extensiones correctamente lo que nos permite subir archivos de forma arbitraria, eso es a lo llamamos Arbitrary file Upload, es asi como podemos subir una shell, sin tanto desmadre, y con poco esfuerzo.
aprovecho para contarle algo q me sucedio, durante el deface a el-informador... note e un principio q tenia blind sql inyeccion. pues como algunos sabran ese tipo de inyeccion son algo tediosas... tardamos mucho en dar con el resultado que queremos y a veces teniendo en cuenta q probablemente no corramos con suerte. entonces ps estaba trantando de hacerla cuando me dio por probar encontrar el panel de admin de la web que esta ubicado en:
me tope con una sorpresa cuando vi que habia un uploader para imagenes, asi que probe subir una shell.
y pues medio resultado... me sorprendi un poco e inclusive me dio algo de risa, pues de blind sql inyeccion a tener un uploading listo... y sin ningun esfuerzo pues jum... nos ahorramos bastante.
de esta forma subi la shell del informador (que aun esta online).
por otro lado, hay algunos tipos de filtros q nos podemos saltar, por ejemplo a veces usan cosas como
aqui lo que hacen es mirar lo q viene en el campo type de la cabecera http, para obtener el tipo del archivo, si strpos encuentra el tipo devuelve la posicion, si no devuelve un falso... como todos sabran podemos modificar las cabeceras para cambiar el tipo, pueden usar el http live header, achilles, tamper data... por otro lado podemos encontrarnos con esta filtracion.
con lo que solo bastaria subir la shell con un nombre como este shell.jpg.php, porq? porq explode('.','shell.jpg.php')
parte el nombre en un vector y toma el . como referencia, por tanto la posicion 1 tiene jpg y la 2 tiene php. y al comparar solo con la 1 entonces al parecer seria un jpg.
haber comoquemonos en este contexto, no tenemos ningun uploading, solo tenemos un sql inyeccion, y no tenemos admin login ni nada. cuanto esto pasa, podemos intentar filtrar una shell con la setencia outfile
podria ser algo como :
si nos pone mucha joda.. podemos intentar pasar el code php a hex para filtrarla.
Tambien podemos subir un archivo con PUT, bajo la condicion que el phpini este con esto
teniendo el put activado podemos enviar enla cabecera http algo como
y podremos subir shell.
0x05 Ya subi la shell y ahora?
Una vez que logremos tener la shell arriba, uno de los tips o cosas que podemos hacer es buscar los archivos de configuracion de la BD, para que? pues para usmear, o para dumpearla, como asi dumpearla? pues veran es simplemente descargarnos una copia de su BD, en particular las shells tienen opciones para los archivos q lista... como ver descargar editar etc.
ejemplo
ahora usmeando un poco encontramos los archivos de configuracion, inclusive notamos que nuestra shell nos lo indica.
si lo clickeamos nos dara informacion como esta:
con lo que nos podemos autenticar aqui.
Bueno una vez coloquemos los datos... de host,Bd user y password, podremos visualizar algo como:
la opcion dump es la que les habia mencionado previamente, y pues podran navegar en la bd... hagan de cuenta que es un cliente mysql.
la shell tiene opciones para hacer back conection.
para que sirve? pues para bypasear el cortafuegos, podemos leer archivos ya sea usando php o mysql... podremos hacer un sinfin de cosas, yo aconsejo que le brujeen a la shell ojala la la monten localmente, y ensayan las opciones. que pues son bastante intuitivas.
0x06 Preparando el sistema para volver
Bueno pues la idea es que una vez entramos, dejemos asegurado un proximo regreso, por ello esta es una de las tantas opciones, se trata de guardar en un log (que podria ser remoto pero que aqui lo dejo de forma local), esto se puede ubicar en el archivo php encargado de recibir los datos del login
Ahora podremos ver lo que guarde el log en logs.txt, aclaro q es un ejemplo simple, se podrian hacer cosas como conexion por ftp... etc. y si el admin quiere darse cuenta que le dejamos un keylogger (seria mas un POST logger o algo asi), pues tendria que ir a revisar el codigo fuente de su aplicacion.
0x07 Dejar shell incrustada (Shell Embedded)
se trata de agregar la shell dentro de un archivo existente, con el fin de evitar sumar archivos al servidor, solo es cuestion de encontrar el archivo indicado, y acomodamos la minishell para que solo reaccione si enviamos un parametro asi
esto con el fin de evitar q salgan errores... q adviertan que hay problemas en el archivo
y lo ejecutariamos asi
Bueno aqui acaba este listado de tips... y de teoria... espere les guste.
0x08 Preguntas de otros foros
ShadinessDark hackxcrack
Ah también me parece que le agregues la forma de esconder la shell...
Osea que no aparezca en la lista de archivos..
R
digamos q esta es su shell
y este es el index.php
hay varias formas ... por un lado esta una que es simplemente:
o
p´s es una forma sencilla. pero se podrian usar una especies de ofuscadres para que no se entienda el code.... y pues es cuestion de analizar cual es el mejor archivo para incrustar la shell... o el PostLogger...
edugibert hackxcrack
Se puede camuflar la shell con alguna archivo!! Haber si me explico coger el blinder y camuflar la shell con un pdf o un doc o lo que sea y después ejecutarlo ?¿ Si la respuesta es afirmativa como ?¿
R:
si man eso se puede hacer... quizas hallan varias formas, pero por ahora se me ocurren 2.
la primera es que subas digamos la shell con extension .jpg (o la que sea pero para el ejemplo sera jpg)
con la shell arriba con otro formato agregas un .htaccess con el siguiente codigo
eso hara que el servidor ejecute el code php de los jpg... por tanto aunq nuestra shell tenga extension jpg se ejecutara. ten encuenta q puede ser doc pdf lo q sea.
psdta: buena pregunta, con esto complementare el tuto
la otra que se me ocurre es que causemos un lfi aproposito asi:
y podremos incluir nuestra shell asi.
lo que hara que se incluya la supuesta imagen y se ejecute el php.
C3llu5 hackxcrack
tengo una pregunta
enkontre una web vulnerable, y logre subir un X texto para komprebar si me dejaba,
haora e intentado subir una shell , pero haora mi problem es el peso de la shell, no me pone problema por el formato, pero no me sube por el peso del archivo de la shell,
pues bueno mi pregunta, es ke si hay una de subirla, o alguna shell ke no pese tanto, para que no me ponga problema por el peso,
R:
man, que SO tiene el servidor?
podria intentar subir un archivo php pero no con una shell, si no con un uploader... depues ya subes shell usando el archivo q subiste... (un uploader pesa mucho menos)
o puede intentar subir un archivo php que ejecute esto
donde
es la ubicacion de tu shell
y ya despues accedes a:
0x10 Conclusiones
Nada solo resta decir, si quieres atacar algo la mejor herramienta es saber como funciona, asi tendras mas posibilidades
0x10 Agrecimiento
Agradezco a Cygog por sacarme de un par de dudas .
y a todos los q preguntan porq asi se complementa el tutorial.
Psdts
si ven errores o alguna bestialidad les agradezco me informen
Continuara...
by _84kur10_
#57
Bugs y Exploits / Admin Finder By _84kur10_
Febrero 24, 2010, 03:15:17 PM
Les dejo mi buscador de admin login, falta mejorarlo para q sea mas rapido, pero = funciona
admin.txt
admin.txt
#59
Bugs y Exploits / Admin Control Panel Finder - by Gladiator
Febrero 24, 2010, 03:13:37 PMFuente: LatinoHack
#60
Bugs y Exploits / Sniper-Admin by Guason
Febrero 24, 2010, 03:11:23 PMUse:
Citarperl No tienes permitido ver los links. Registrarse o Entrar a mi cuenta No tienes permitido ver los links. Registrarse o Entrar a mi cuenta