Tema destacado: Deseas probar algunas mejoras a la interfaz del foro? Prueba cake! acerca de
Autor
|
Tema: Duda sobre procedimiento cuando buscamos vulns web (Leído 1,990 veces)
|
Debci
Wiki
Desconectado
Mensajes: 1.945
Actualizate o muere!
|
Hola a todos, hoy he estado leyendo unos papers (uno de ellos del Master en seguridad web SDC), he aprendido muchas cosas sobre SQLi y XSS. ES muy bonito cuando tienes el source code a la vista, y ves que puede injectar.
Se me presentan varias dudas:
1-Que haceis para ver si una variable es vulnerable a SQLi o XSS? Cojeis todas las variables de un web (si es asi como las conseguiis) y probais una a una? Si probais una a una, que probais para los XSS o los SQLi usais siempre la misma prueba o cambiais el script o querie que le lanzais?
2-Mi experiencia me dice que los escaners de vulnerabilidades no sirven para mucho, personalmente en mi vida he encontrado ni una sola vulnerabilidad con un escaner, sera que soy muy torpe o que los targets que examino son muy seguros. Que opinais al respecto?
3-Que haceis para saber si una input en una web es vulnerable a XSS? Porque la mayoria de veces tienen filtros o magic-quotes y eso dificulta las cosas.Se pueden bypassear magic-quotes? Como se que tipo de filtro usa un input? En mi caso hace un tiempo me encontre uno con addslashes, que deberia hacer en ese caso?
4-Soleis descargar una copia del sistema web que estais intentando vulnerar (osea, si es un foro, bajais el codigo PHP) para posteriormente analizarlo?
5-En algun caso, de un ataque real es practico usar un ataque por fuerza bruta a un formulario para aceder?
Espero que puedan resolver mis dudas.
Saludos
|
|
|
|
|
En línea
|
|
|
|
Erfiug
Desconectado
Mensajes: 44
|
puedes pasar el link del documento que estas leyendo? gracias
|
|
|
|
|
En línea
|
|
|
|
braulio--
Wiki
Desconectado
Mensajes: 889
Imagen recursiva
|
1) Para saber eso puedes encontrar las variables por medio de inputs, aunque muchas veces te puedes encontrar enlaces así http://host/index.php?id=21
Y ahí puedes probar con los típicos payloads de lo que quieras buscar. Los XSS más fáciles de encontrar están en las típicas cajas de búsqueda. 2) Yo personalmente no recomiendo los escaners ni por aprendizaje ni por eficacia ya que dan muchos falsos positivos. 3) Primero puedes inyectar los payloads más típicos y ver como se comporta la aplicación dependiendo como filtre los carácteres, a partir de ahí puedes seguir investigando que puedes hacer. Lo de saltar magic quotes depende de como estén puestas, de todas formas si solo filtra las quotes no protege nada ya que puedes inyectar algo así : <script>alert(/HOLA/);</script> o location = string.fromCharCode(numeros ascii de los caracteres) ; 4) Si no encuentras otra forma es bastante útil. 5) Yo nunca lo he intentado, pero si no tienes más remedio...
|
|
|
|
« Última modificación: 28 Julio 2010, 15:50 por braulio-- »
|
En línea
|
|
|
|
Debci
Wiki
Desconectado
Mensajes: 1.945
Actualizate o muere!
|
Entiendo, mas o menos lo que suponia, ahora por ejemplo, yo intento inyectar codigo en un input, y en el source se queda asi: </div></div><div id="mainContentMaster"><div class="fullPage"><div id="mainSearch" class="ovrh" style="padding-right:10px"><div><h1>0 search results for <script>alert AND () AND ;</script></h1> Y la cadena que le he metido a la variable es: <script>alert();</script> Osea, la basica. Que alternativa me queda ahora? Saludos
|
|
|
|
« Última modificación: 28 Julio 2010, 16:01 por Debci »
|
En línea
|
|
|
|
Erfiug
Desconectado
Mensajes: 44
|
Entiendo, mas o menos lo que suponia, ahora por ejemplo, yo intento inyectar codigo en un input, y en el source se queda asi: </div></div><div id="mainContentMaster"><div class="fullPage"><div id="mainSearch" class="ovrh" style="padding-right:10px"><div><h1>0 search results for <script>alert AND () AND ;</script></h1> Y la cadena que le he metido a la variable es: <script>alert();</script> Osea, la basica. Que alternativa me queda ahora? Saludos Parece que codifican en HTMl los carácteres < y >, lo que hace que el tema esté jodido... Puedes poner el link del paper que estás leyendo?
|
|
|
|
|
En línea
|
|
|
|
braulio--
Wiki
Desconectado
Mensajes: 889
Imagen recursiva
|
En ese caso me parece que es un filtro en plan htmlentities() y se podía saltar dependiendo de que codificación fuera. En el caso de que fuera utf-7 podrías mandar la siguiente cadena : +ADw-script+AD4-alert(/XSS/)+ADsAPA-/script+AD4- y te devolvería el alert(/XSS/) , pero no creo que sea muy común eso.
|
|
|
|
|
En línea
|
|
|
|
Debci
Wiki
Desconectado
Mensajes: 1.945
Actualizate o muere!
|
En ese caso me parece que es un filtro en plan htmlentities() y se podía saltar dependiendo de que codificación fuera. En el caso de que fuera utf-7 podrías mandar la siguiente cadena : +ADw-script+AD4-alert(/XSS/)+ADsAPA-/script+AD4- y te devolvería el alert(/XSS/) , pero no creo que sea muy común eso. a que te refieres con no muy común? Saludos
|
|
|
|
|
En línea
|
|
|
|
braulio--
Wiki
Desconectado
Mensajes: 889
Imagen recursiva
|
Que no suelen estar en utf-7 para facilitarte este tipo de bypass del filtro.
|
|
|
|
|
En línea
|
|
|
|
Erfiug
Desconectado
Mensajes: 44
|
En ese caso me parece que es un filtro en plan htmlentities() y se podía saltar dependiendo de que codificación fuera. En el caso de que fuera utf-7 podrías mandar la siguiente cadena : +ADw-script+AD4-alert(/XSS/)+ADsAPA-/script+AD4- y te devolvería el alert(/XSS/) , pero no creo que sea muy común eso. a que te refieres con no muy común? Saludos En ese caso me parece que es un filtro en plan htmlentities() y se podía saltar dependiendo de que codificación fuera. En el caso de que fuera utf-7 podrías mandar la siguiente cadena : +ADw-script+AD4-alert(/XSS/)+ADsAPA-/script+AD4- y te devolvería el alert(/XSS/) , pero no creo que sea muy común eso. a que te refieres con no muy común? Saludos A que pocas páginas web utilizan esa codificación... Para ver que codificación utiliza fíjate si hay alguna línea en la cabezera parecida a: <meta http-equiv="Content-Type" content="text/html; charset="'iso-8859-1','UTF-7'," Puedes pasarme el link del paper que estás leyendo? O seguirás ignorándome?
|
|
|
|
|
En línea
|
|
|
|
bizco
Desconectado
Mensajes: 698
|
y aun pareciendo mentira, los campos hidden en algunas paginas contienen informacion que puedes usar a tu favor. es decir, campos que tienen informacion sobre el usuario que envia el formulario y no es verificada, incluso campos en los que puedes injectar sql pq el webmaster asume que ese campo no se puede modificar.
|
|
|
|
|
En línea
|
|
|
|
Debci
Wiki
Desconectado
Mensajes: 1.945
Actualizate o muere!
|
|
|
|
|
|
En línea
|
|
|
|
Darioxhcx
Desconectado
Mensajes: 2.150
|
aunque nadie recomiende scanners , yo te recomiendaria que al menos uses el crawler de acunetix , es el mejor , teniendo en cuenta que no consume recursos como ese ue es por fuerza bruta y ensima echo en java , y saca buenos resultados despues bueno,, no lei lo que dijeron los otros users con detenimiento , pero ya te habran dicho casi todo  un link que te puede servir http://projects.webappsec.org/Threat-Classification-Enumeration-Viewsaludos
|
|
|
|
|
En línea
|
|
|
|
Littlehorse
All the world's a stage
Colaborador
 
Desconectado
Mensajes: 2.710
Nie Dam Sie
|
Utilizar o no utilizar escáneres depende principalmente del objetivo de la auditoria. Mas alla que un escáner no puede competir contra la creatividad de una persona, pueden ser útiles para comprobar que no estas dando nada por sentado. Aclarar que con objetivo me refiero a lo que se quiere lograr, mas alla de la buena u mala intención que puede haber en ello.
Ahora bien, si la idea es intentar pasar lo mas desapercibido posible, un escáner es la ultima opción. Mas allá de la flexibilidad que pueda proveer algún software en particular, siempre llaman la atención mas de lo que deberían.
Saludos
|
|
|
|
|
En línea
|
An expert is a man who has made all the mistakes which can be made, in a very narrow field.
|
|
|
Debci
Wiki
Desconectado
Mensajes: 1.945
Actualizate o muere!
|
Ahora mi pregunta es esta:
Cuando analizan un posible vector de ataque como determinan, en el caso de XSS por ejemplo, cual es el filtro que esta utilizando?
Son todos los filtros, de una manera u otra bypasseables?
Saludos
|
|
|
|
|
En línea
|
|
|
|
Erfiug
Desconectado
Mensajes: 44
|
Ahora mi pregunta es esta:
Cuando analizan un posible vector de ataque como determinan, en el caso de XSS por ejemplo, cual es el filtro que esta utilizando?
Mirando el código fuente.. o probando con distintos inputs si no dispones de este. Son todos los filtros, de una manera u otra bypasseables?
Esto es equivalente a preguntar si todas las webs son vulnerables a ataques XSS
|
|
|
|
|
En línea
|
|
|
|
|
|