CategoríaSeguridad

Temas relacionados con seguridad informatica.

5 sitios vulnerables de la semana

Para seguir con la tradición, acá están los 5 sitios vulnerables de la semana.
Tres de ellos con vulnerabilidades XSS y uno con SQL Injection, el quinto tiene ambas. Generando un error mediante inyeccion de codigo mysql es posible explotar la vulnerabilidad XSS.

kblocked

Corresponden a las vulnerabildiades SQL Injection y XSS y los sitios son los siguientes:

Seguir leyendo

Cómo provocar un ataque DDoS mediante SQL Injection

Más que enseñar a explotar esta vulnerabilidad para provocar un ataque de denegación de servicio, lo que busco es que los desarrolladores sepan la magnitud que puede tener una falla de este tipo (hay que encontrarle el lado white a las cosa :).  Un ataque de denegación de servicio (DoS), como su nombre lo dice y en palabras simples, consiste en denegar un servicio para que éste deje de responder y se caiga. Este tipo de ataque se puede realizar de forma distribuida para que tenga mejor efecto, es decir, sincronizando y distribuyendo la carga y el ataque en distintas máquinas con el mismo objetivo.

Imágen: https://nsl.cs.columbia.edu(Imágen: https://nsl.cs.columbia.edu)

Seguir leyendo

Explotando vulnerabilidades LFI y Directory Transversal en un sitio web

unprotectedUna vulnerabilidad LFI o Directory Transversal puede comprometer todo un servidor, no solo la cuenta del sitio que tiene la vulnerabilidad. Estas vulnerabilidades ocurren cuando se parsea una variable y el contenido de ésta es incluido o leído directamente, ya sea usando una función “include”, “fread”, “file”, etc.

Son vulnerabilidades muy comunes y comprometen a todo el servidor, si un atacante con las capacidades necesarias puede obtener acceso al servidor hatsa ganar root.

Les voy a mostrar cómo hacerlo y el impacto que puede llegar a tener.
El sitio elegido es el de la “Ilustre Municipalidad de Castro”, sitio hecho en ASP puaj.

Antes de publicar todo esto, me di el trabajo de comunicarlo a los encagrados del sitio web sin obtener respuesta, por lo que asumo que no les interesa la seguridad y asi como yo, cualquier persona podría hacerle algo al sitio web o al servidor, asi que me di la libertad de tomar este sitio como ejemplo didactico.

Seguir leyendo

Sitios vulnerables de la semana

Los sitios vulnerables de esta semana correspnden a 5, lo inaceptable es que 3 de ellos pertenecen a la Universidad San Sebastián. Esta semana semana expondré sitios con vulnerabilidades de SQL Injection, XSS y Path Disclosure, los sitios afectados son:
wrongway1

Seguir leyendo

Cómo agregar una capa más de seguridad a un login

Un sistema de inicio de sesión tradicional funciona simplemente enviando, en texto plano, los datos de usuario y password al sistema en php o el lenguaje que sea, el sistema lo recibe, lo encripta y lo compara con la información de la base de datos para saber si es correcto o no. Lo que no está mal, pero deja abierta la posibilida de que alguien este sniffeando la red y capture los datos en bruto (raw) o texto plano.
Como podemos ver en el siguiente esquema:

secure-js1

Una forma que se me ocurrió para que los datos del formulario, especialmente la password, no viajarán en texto plano, fue encriptarla mediante javascript al momento de hacer el submit. De esta forma, cuando el atacante logre capturar los datos lo que verá es una cadena en md5, como aparece en el siguiente gráfico:

secure-js2

Seguir leyendo

¿Qué es una vulnerabilidad File/Path Disclosure?

Una vulnerabilidad del tipo File o Path Disclosure es cuando queda al descubierto la ruta de la aplicación o script en ejecución y de esta forma saber en que directorio especificamente se encuentra el sitio web. A simple vista parece ser inofensivo, pero cuando se necesita subir maliciosamente un archivo o descargar algo indevidamente, esto es muy útil.

disclosure

Esta vulnerabilidad corresponde a un error de programación al no atajar correctamente los errores o excepciones, por ejemplo, uno de los casos mas frecuentes se da con la famosa función include o requiere (en php):

  1. <?php
  2. include($_GET[‘section’].".php");
  3. ?>

Es muy común ver en sitios web como se pasa por parámetro la sección, algo similar a https://sitio.cl/index.php?section=contacto, entonces el script index.php recibe la variable “section”, le agrega la extension .php y la incluye, pero …

¿Qué pasa cuando cambiamos contacto por letras al azar como fdsghjk?
Fácil, la función include intentará incluir el archivo fdsghjk.php y como no existe, php mostrara un error parecido a Failed to open stream: No such file or directory in /home/web/public_html/index.php y con esto, ya tenemos la ruta donde se está ejecutando la aplicación: /home/web/public_html. De esta forma se nos facilita un ataque LFI o RFI.