Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe...

23
Seguridad de un Portal 5 de noviembre, 2010 Gabriel Fernández [email protected]

Transcript of Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe...

Page 1: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

Seguridad de un Portal

5 de noviembre, 2010

Gabriel Fernández

[email protected]

Page 2: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

¿Qué debemos proteger?

2

http://moplincom.moplin.com/wp-content/uploads/2009/08/joke-redes1.jpg

Información

Disponibilidad

Page 3: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

¿Por qué debemos protegernos?

3

Amenazas a la Confidencialidad

Intercepción (Canales inseguros

de comunicación)

Acceso no autorizado

(Autenticación débil o insuficiente)

Fuga de información/Divulgación

no autorizada (No tener control

sobre lo que divulgamos; mal

empleo de cookies; mal manejo de

errores)

Page 4: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

¿Por qué debemos protegernos? (II)

4

Amenazas a la Integridad

Cross Site Scripting (XSS)

Inyección SQL

Defacement

Pharming

Page 5: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

¿Por qué debemos protegernos? (II)

5

Amenazas a la Disponibilidad

Denegación de servicios (DoS)

Denegación de servicios

distribuida (DDoS)

Buffer Overflow

Page 6: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

¿Cómo nos protegemos?

6

Mitigar los riesgos = Aplicar

controles

Funciones de Hardware y

Software

Gestión y procedimientos

adecuados

Page 7: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

Controles

www.agesic.gub.uy

Page 8: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

Debemos controlar qué

información indexan los

motores de búsqueda

Los motores de búsqueda

analizan mediante robots

la estructura de nuestro

sitio y la registran, pero

respetan las excepciones

detalladas en el archivo

“robots.txt”

No ponga a disposición más de lo

necesario

8

# Robots.txt file from

http://www.nl.gob.mx

#

# Bans from tesoreria

#

# Disallow /tesoreria/

User-agent: *

Disallow: /tesoreria/

Disallow: /stats/

Disallow: /servicios/

Disallow: /protegido/

Disallow: /skins/

Disallow: /Eventos/

Disallow: /buscador/

Disallow: /apps/

Allow: /protegido/buscador/

Page 9: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

1. Entrar al sitio www.google.com/webmasters/tools

2. Acceder con el usuario: [email protected]: taller17092010

3. Hacer clic bajo sitios: www.inforclas.com

4. Acceder a “Información del sitio” y seguidamente en “Acceso de rastreadores”

5. Genere un archivo robots.txt a partir de la información que pueda recabar de la estructura del sitio de su organismo

Creando nuestro primer “robot”…

9

Ejercicio 1

Page 10: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

¿Qué es?

Técnica que explota la gran capacidad de almacenamiento de

información de Google, buscando información específica que ha

sido añadida a las bases de datos del buscador.

¿Cómo prevenirlo?

Aprenda cómo funciona Google

(http://www.google.es/support/websearch/?hl=es)

Archivo “robots.txt”

Aplique "posicionamiento inverso" a todo aquello que

quiera mantener lejos de ojos ajenos

Mucho más que un buscador… Google Hacking

10

Page 11: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

Google HackingEjemplos

11

1. Direcciones privadas

site:gub.uy inurl:intranet

2. Directorios navegables

site:gub.uy intitle:"Index of"

3. Archivos con claves

ext:pwd inurl:(service | authors | administrators | users) "# -FrontPage-"

4. Base de datos con búsquedas predeterminadas (GHDB): http://www.hackersforcharity.org/ghdb/

5. Para divertirse en casa

intitle:”Live View / - AXIS“

Page 12: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

Analice su sitio empleando las técnicas

de google hacking buscando:

1. Direcciones privadas

2. Directorios navegables

3. Archivos sensibles

Recuerde que puede mezclar parámetros de búsqueda para optimizar sus

resultados (site: + ext: + palabra clave)

Siempre puede emplear la GHDB como ayuda en su análisis

Analizando nuestros sitios…

12

Ejercicio 2

Page 13: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

Mensajes con sentido, útil

para diagnosticar e inútil

para atacar

Manejo de errores de

usuario y del sistema

Esquema común para el

tratamiento de errores

Estandarizar los mensajes

de error

Manejando los errores

13

http://bytesizebio.net/index.php/tag/science/

Page 14: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

¿Qué son las cookies?

¿Cuál es su utilidad?

¿Qué debemos considerar al

emplear cookies?

Asegurar el canal de comunicación

Cifrar la información almacenada

Evitar almacenar información

confidencial

Evitar cookies longevas

Evaluar si pueden suplantarse

por mecanismos más seguros

Galletas de la fortunaUsar cookies de forma segura

14

Page 15: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

Identificación

Autenticación

Autorización

Mecanismos recomendados

para autenticar:

Autenticación basada en formulario

Web;

Autenticación basada en la

dirección;

Autenticación HTTP digest;

Autenticación del cliente mediante

Certificado Digital

Pasará, pasará... - Control de acceso

15

Page 16: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

Proteger la información que

atraviesa la conexión entre un

usuario y nuestro portal

Protocolo SSL/TLS

Asegurar la identidad de

nuestro portal

Dime con quién hablas y te diré quién eres Canales seguros de comunicación

16

Aquellas páginas protegidas mediante

SSL/TLS sólo deben ser accedidas

por este mecanismo

Page 17: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

No pecar de inocente …

Fijar caracteres válidos

Filtrar los datos de entrada antes de

procesarlos

No almacene información sin filtrar

en una base de datos

Desconfíe de todo parámetro de

entrada (URLs, cadenas,

encabezados, cookies o campos)

Protegernos de:

Inyección SQL

XSS

Más vale malo conocido... Validación de los datos de entrada

17

Page 18: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

1. ¿Cómo manejo los errores?

1. Identifique un formulario de ingreso a un área restringida de su sitio

(tip: GH: site:[organismo].gub.uy inurl:intranet | inurl:intranet)

2. Pruebe completando el formulario parcialmente (ej.: sólo usuario)

3. Pruebe ingresando caracteres “extraños” (ej: “;”,”.” )

2. ¿Soy vulnerable a XSS?

1. Sobre el formulario de búsqueda de su sitio pruebe ejecutar

<script>alert("XSS");</script>

3. ¿Admito Inyección SQL?

1. Sobre un formulario de ingreso a un área restringida de su sitio

pruebe ejecutar “' or 1=1 --”

Verificando nuestros sitios…

18

Ejercicio 3

Page 19: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

La misión si decide aceptarla

es: evitar que lo saturen

¿Misión Imposible?

Cómo hacerla casi posible:

Limitar consultas a bases de datos

(tiempo de ejecución; número de

registros devueltos)

Evitar bloqueos de cuentas de

usuarios de forma malintencionada

Evitar desbordamientos de buffer

Limitar la escritura a disco

Protegerse contra amenazas de negación de

servicio

19

http://swain.webframe.org/tshirts/

Page 20: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

Protección contra

Pharming

Resguardo de información

Seguimiento

Auditoría

OWASP

(http://www.owasp.org)

Más vale prevenir que curar …

+ Controles

20

Page 21: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

Distribución Live de Linux pre-

configurada como entorno de

pruebas de intrusión Web

Compilado de las mejores

herramientas OpenSource para

análisis de seguridad web

http://samurai.inguardians.com/

¿Cómo auditar con una navaja suiza?

Samurai-WTF

21

Page 22: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

1. Inicie Samurai-WTF

2. Desde Mozilla Firefox acceda al Target: Mutillidae

(Bookmarks .: Target .: Mutillidae)

3. Ejecute ataques de XSS e Inyección SQL sobre el

formulario de Login (puede emplear las tools “XSS ME”

y “SQL Inject ME”) y registre los resultados

4. Ejecute un análisis desde w3af a la url: http://127.0.0.1/

mutillidae. Evalue los resultados; tome dos

vulnerabilidades y plantee como resolverlas

Hackeo didáctico

22

Ejercicio 4

Page 23: Desarrollo de un Portal - AGESIC - Inicio · Sobre el formulario de búsqueda de su sitio pruebe ejecutar ... Protección contra Pharming Resguardo de información Seguimiento Auditoría

Muchas gracias

www.agesic.gub.uy