37
Texto Texto Gonzalo Vigo Scheiner Gonzalo Vigo Scheiner Òscar Conejo Carrera Òscar Conejo Carrera Seguridad Seguridad Marzo- Marzo- 2016 2016 #CiberSeguretatUB

Taller cybersecurity 2016

Embed Size (px)

Citation preview

Page 1: Taller cybersecurity 2016

TextoTexto

Gonzalo Vigo ScheinerGonzalo Vigo ScheinerÒscar Conejo CarreraÒscar Conejo Carrera

Taller de Ciber Taller de Ciber SeguridadSeguridad

Marzo-Marzo-20162016

#CiberSeguretatUB

Page 2: Taller cybersecurity 2016

Taller de Ciber Taller de Ciber SeguridadSeguridad

2

Gonzalo Vigo ScheinerGonzalo Vigo [email protected]/in/gonzalovigo@gvigosch

Òscar Conejo CarreraÒscar Conejo [email protected]/in/oscarcc

Page 3: Taller cybersecurity 2016

ÍndiceÍndiceIntroducciónIntroducción

Seguridad de aplicacionesSeguridad de aplicaciones

OWASP TOP10OWASP TOP10

Herramientas HEHerramientas HE

Taller HackingTaller Hacking

Introducción al análisis ForenseIntroducción al análisis Forense

3

Page 4: Taller cybersecurity 2016

IntroducciónIntroducciónLa La CiberseguridadCiberseguridad busca proteger los busca proteger los activos de informaciónactivos de información digital en los digital en los sistemas interconectados. Está comprendida sistemas interconectados. Está comprendida dentro de la dentro de la seguridad de la informaciónseguridad de la información..

4

Activos de Activos de informaciinformaciónón

- Servicios- Servicios- Datos/Información- Datos/Información- Aplicaciones- Aplicaciones- Equipos informáticos- Equipos informáticos- Personal- Personal- Redes de - Redes de comunicacióncomunicación- Soportes de - Soportes de informacióninformación- Equipamiento auxiliar- Equipamiento auxiliar- Instalaciones- Instalaciones

IntegridadIntegridad ConfidencialidaConfidencialidadd

DisponibilidadDisponibilidad

¿Qué protege la ¿Qué protege la seguridad de la seguridad de la

información?información?

Page 5: Taller cybersecurity 2016

IntroducciónIntroducción

5

http://www3.weforum.org/docs/WEF_Global_Risks_2015_Report15.pdfhttp://www3.weforum.org/docs/WEF_Global_Risks_2015_Report15.pdf

Page 6: Taller cybersecurity 2016

IntroducciónIntroducción

6

https://cybermap.kaspersky.com/https://cybermap.kaspersky.com/

Page 7: Taller cybersecurity 2016

VulnerabilidadVulnerabilidad: Fallo o agujero de seguridad mediante el : Fallo o agujero de seguridad mediante el cual es posible comprometer la disponibilidad, integridad o cual es posible comprometer la disponibilidad, integridad o confidencialidad de la información.confidencialidad de la información.

ExplotaciónExplotación: Se calcula en función del vector de acceso, : Se calcula en función del vector de acceso, complejidad de acceso y autenticación necesaria.complejidad de acceso y autenticación necesaria.

ImpactoImpacto: Se determina en función de el impacto sobre la : Se determina en función de el impacto sobre la confidencialidad, integridad y disponibilidad de los datosconfidencialidad, integridad y disponibilidad de los datos

CVSS ScoreCVSS ScoreFactores Factores

de de explotacióexplotació

nnImpactoImpacto== xx

7

Seguridad de Seguridad de aplicacionesaplicaciones

https://nvd.nist.gov/CVSS/v2-calculator

Page 8: Taller cybersecurity 2016

Seguridad de Seguridad de aplicacionesaplicaciones

SalvaguardaSalvaguarda: Es aquella acción técnica o conjunto de : Es aquella acción técnica o conjunto de ellas que permite reducir o mitigar un riesgo o ellas que permite reducir o mitigar un riesgo o vulnerabilidad.vulnerabilidad.

Preventivas: Reducen la probabilidad.Preventivas: Reducen la probabilidad.Curativas: Acotan la degradación o el impactoCurativas: Acotan la degradación o el impacto

Plan de acciónPlan de acción: Conjunto de iniciativas técnicas : Conjunto de iniciativas técnicas organizadas en proyectos para la reducción del riesgo o organizadas en proyectos para la reducción del riesgo o mitigación de las vulnerabilidades halladas.mitigación de las vulnerabilidades halladas.

8

Page 9: Taller cybersecurity 2016

Seguridad de Seguridad de aplicacionesaplicaciones

9

EnfoquesEnfoques

Caja negraPentest de seguridad donde el técnico no cuenta con información sobre el Sistema. Refleja de la mejor manera possible un ataque real.

Caja grisPentest de seguridad donde el técnico cuenta con información limitada sobre el Sistema. Sirve para profundizar en aquellos puntos críticos del Sistema.

Caja blancaPentest de seguridad donde el técnico cuenta toda la información possible (accesos, mapas de red, código Fuente, etc.)

Page 10: Taller cybersecurity 2016

OWASP Top 10OWASP Top 10

Cross-Site Scripting (XSS)Cross-Site Scripting (XSS)

SQL InjectionSQL Injection

Directory trasversalDirectory trasversal

File IncludeFile Include

Code injectionCode injection

Commands injectionCommands injection

10

OWASP Top 10

•A1 Injection•A2 Broken Authentication and Session Management•A3 Cross-Site Scripting (XSS)•A4 Insecure Direct Object References•A5 Security Misconfiguration•A6 Sensitive Data Exposure•A7 Missing Function Level Access Control•A8 Cross-Site Request Forgery (CSRF)•A9 Using Components with Known Vulnerabilities•A10 Unvalidated Redirects and Forwards

Page 11: Taller cybersecurity 2016

Cross-Site Scripting XSSCross-Site Scripting XSSEste ataque ocurre por una falta de validación y Este ataque ocurre por una falta de validación y tratamiento de los datos de entrada la aplicación tratamiento de los datos de entrada la aplicación web, donde el atacante puede aprovechar para web, donde el atacante puede aprovechar para realizar inyecciones de código scripting (ej: realizar inyecciones de código scripting (ej: JavaScript, Vbscript, etc.).JavaScript, Vbscript, etc.).

11

Page 12: Taller cybersecurity 2016

Cross-Site Scripting XSSCross-Site Scripting XSSPosibles ataques:Posibles ataques:

Secuetro del navegadorSecuetro del navegador

Robo de información sensibleRobo de información sensible

Defacement “aparente” de la aplicaciónDefacement “aparente” de la aplicación

Envío dirigido de exploits basados en Envío dirigido de exploits basados en navegadornavegador

Etc.Etc.12

Page 13: Taller cybersecurity 2016

Cross-Site Scripting XSSCross-Site Scripting XSSUn ejemplo de explotación de Cross-Site-Scripting Un ejemplo de explotación de Cross-Site-Scripting utilizando Phishing como vector de ataque:utilizando Phishing como vector de ataque:

13

Page 14: Taller cybersecurity 2016

Cross-Site Scripting XSSCross-Site Scripting XSSExplotando XSS:Explotando XSS:•Identificación de vías de entrada de datos (inputs, Identificación de vías de entrada de datos (inputs, atributos, cookies, parámetros, etc.)atributos, cookies, parámetros, etc.)•Sustitución de valor esperado por valor manipulado Sustitución de valor esperado por valor manipulado con script con script previo envío de la petición HTTPprevio envío de la petición HTTP..•Observar resultados en cliente y servidor.Observar resultados en cliente y servidor.

14

Page 15: Taller cybersecurity 2016

SQL InjectionSQL InjectionLos ataques de inyección SQL son ataques en los Los ataques de inyección SQL son ataques en los que ordenes SQL son enviadas al servidor la que ordenes SQL son enviadas al servidor la correcta realización de una consulta SQL correcta realización de una consulta SQL predefinida.predefinida.

Un atacante puede crear o alterar estas consultas Un atacante puede crear o alterar estas consultas para exponer datos ocultos, sobrescribirlos o para exponer datos ocultos, sobrescribirlos o ejecutar consultas a nivel de sistemas en el ejecutar consultas a nivel de sistemas en el servidor de la base de datos.servidor de la base de datos.

15

Page 16: Taller cybersecurity 2016

SQL InjectionSQL Injection

Posibles ataques SQL Injection:Posibles ataques SQL Injection:

Fugas de información de BBDDFugas de información de BBDD

Modificación de datos Modificación de datos (INSERT/UPDATE/DELETE)(INSERT/UPDATE/DELETE)

DoS a BBDDDoS a BBDD

Etc.Etc.

16

Page 17: Taller cybersecurity 2016

SQL InjectionSQL InjectionExplotando SQL Injection:Explotando SQL Injection:

•Identificación de vías de entrada de datos (inputs, Identificación de vías de entrada de datos (inputs, atributos, cookies, parámetros, etc.)atributos, cookies, parámetros, etc.)•Sustitución de valor esperado por un valor manipulado Sustitución de valor esperado por un valor manipulado con una sentencia SQL, con una sentencia SQL, previo envío de la petición HTTPprevio envío de la petición HTTP..•Observar resultados en cliente y servidor.Observar resultados en cliente y servidor.

17

Page 18: Taller cybersecurity 2016

Path TraversalPath TraversalEs un Bug, que permite al usuario saltarse las Es un Bug, que permite al usuario saltarse las restricciones a nivel de permisos y acceder a un restricciones a nivel de permisos y acceder a un directorio superior, fuera del contexto de la directorio superior, fuera del contexto de la aplicación web.aplicación web.

18

Page 19: Taller cybersecurity 2016

Path TraversalPath TraversalPosibles ataques SQL Injection:Posibles ataques SQL Injection:

Fugas de informaciónFugas de información

Ejecución de código remotoEjecución de código remoto

Exposición de información sensibleExposición de información sensible

Etc.Etc.

19

Page 20: Taller cybersecurity 2016

Path TraversalPath TraversalExplotando Directory Trasversal:Explotando Directory Trasversal:•Identificación de entradas de direcciones (URL, directorio, Identificación de entradas de direcciones (URL, directorio, fichero, etc.) o barra de direccionesfichero, etc.) o barra de direcciones•Manipulación de dato esperado antes del envío de la Manipulación de dato esperado antes del envío de la petición HTTPpetición HTTP•Observar respuesta HTTPObservar respuesta HTTP

20

Page 21: Taller cybersecurity 2016

HerramientasHerramientasOWASP ZAP, BURP Suite: PentestingOWASP ZAP, BURP Suite: Pentesting

Nessus y VEGA: Scanner avanzado de vulnerabilidadesNessus y VEGA: Scanner avanzado de vulnerabilidades

SQLMap: Inyección SQLSQLMap: Inyección SQL

NMAP - ZENMAP: Scanner de puertosNMAP - ZENMAP: Scanner de puertos

OWASP Mantra: Framework de SeguridadOWASP Mantra: Framework de Seguridad

Bactrack/Kali Linux: S.O. Suite Hacking y Análisis ForenseBactrack/Kali Linux: S.O. Suite Hacking y Análisis Forense

Metasploit: HackingMetasploit: Hacking

Encase y FTK: Análisis Forense Encase y FTK: Análisis Forense

21

Page 22: Taller cybersecurity 2016

Computación ForenseComputación Forense¿Que es?¿Que es?

La computación forense es el uso de técnicas La computación forense es el uso de técnicas de investigación y análisis para identificar, de investigación y análisis para identificar, coleccionar, examinar y preservar información coleccionar, examinar y preservar información que se almacena y se codifica digitalmente.que se almacena y se codifica digitalmente.

El objetivo es el mismo que el forense clásico: El objetivo es el mismo que el forense clásico: obtener evidencias y proveer un análisis para obtener evidencias y proveer un análisis para poderlo usar en un procedimiento formal poderlo usar en un procedimiento formal (legal, institucional, etc)(legal, institucional, etc)

Page 23: Taller cybersecurity 2016

Computación ForenseComputación Forense

McKemmish ModelMcKemmish Modeladquisicióadquisiciónn

preservaciópreservaciónn

examinaexaminarr

análisianálisiss

presentacipresentaciónón

Principio de LocardPrincipio de Locard

sospechasospechavíctimavíctima

Escena Escena crimen crimen digitaldigital

Page 24: Taller cybersecurity 2016

Computación ForenseComputación Forense¿Que es una evidencia?¿Que es una evidencia?

La evidencia en su sentido más amplio incluye La evidencia en su sentido más amplio incluye todo que se utiliza para determinar o todo que se utiliza para determinar o demostrar la verdad de una aserción.demostrar la verdad de una aserción.

Tipos: Intuitiva, científica, personal, anécdota, Tipos: Intuitiva, científica, personal, anécdota, legallegal

Lo más importante para proteger la validez de Lo más importante para proteger la validez de una evidencia es preservar su cadena de una evidencia es preservar su cadena de custodia.custodia.

Page 25: Taller cybersecurity 2016

Computación ForenseComputación ForenseHardwareHardware

Memoria (RAM, ROM, EPROM, EEPROM)Memoria (RAM, ROM, EPROM, EEPROM)Discos Duros (SCSI, IDE, PATA, SATA, SSD)Discos Duros (SCSI, IDE, PATA, SATA, SSD)SIM cardSIM cardGPSGPS

SoftwareSoftware

Sistemas Operativos (Windows, UNIX, Mac OS, Sistemas Operativos (Windows, UNIX, Mac OS, iOS, Android)iOS, Android)

Sistemas de ficheros (FAT 16/32, NTFS, ext2/ext3, Sistemas de ficheros (FAT 16/32, NTFS, ext2/ext3, HFS+, ReiserFS, BFFS)HFS+, ReiserFS, BFFS)

Page 26: Taller cybersecurity 2016

Computación ForenseComputación ForenseNetworksNetworks

Puertos físicosPuertos físicos

Media Access Control (MAC)Media Access Control (MAC)

Direcciones IPDirecciones IP

Puertos lógicosPuertos lógicos

SocketsSockets

Uniform Resource Locators (URL)Uniform Resource Locators (URL)

Page 27: Taller cybersecurity 2016

Computación ForenseComputación ForenseInformación que contiene la RAM en claro:Información que contiene la RAM en claro:

Keys encriptadasKeys encriptadas

PasswordsPasswords

Direcciones emailDirecciones email

Código del programa cargadoCódigo del programa cargado

Conexiones de red abiertasConexiones de red abiertas

Procesos establecidosProcesos establecidos

Page 28: Taller cybersecurity 2016

Computación ForenseComputación Forense

RAM Files:RAM Files:

C:\\Windows\hiberfile.sysC:\\Windows\hiberfile.sys

C:\\Windows\pagefile.sysC:\\Windows\pagefile.sys

Crash dump filesCrash dump files

Archivo SWAPArchivo SWAP

Page 29: Taller cybersecurity 2016

Computación ForenseComputación ForenseRAM Técnicas y herramientas forensics:RAM Técnicas y herramientas forensics:

Máquina virtual:Máquina virtual:

VMWare —> archivo vmemVMWare —> archivo vmem

VirtualBox —> comando debugvmVirtualBox —> comando debugvm

Mandiant Memoryze, MoonSols, FTK Imager, MAC Mandiant Memoryze, MoonSols, FTK Imager, MAC memory reader, EnCase WinEn, BeltaSoft Live RAM memory reader, EnCase WinEn, BeltaSoft Live RAM capturercapturer

Mediante FireWire con Inception o VolatilityMediante FireWire con Inception o Volatility

Mediante PCI usando WindowSCOPE ($8000)Mediante PCI usando WindowSCOPE ($8000)

Page 30: Taller cybersecurity 2016

Computación ForenseComputación ForenseWindows Forensics: Boot ProcessWindows Forensics: Boot Process

És el primer proceso a cargar.És el primer proceso a cargar.

Se puede interrumpir el Boot Process para Se puede interrumpir el Boot Process para visualizar la configuración CMOSvisualizar la configuración CMOS

Para que se usa:Para que se usa:

Determinar que archivos fueron alteradosDeterminar que archivos fueron alterados

Determinar el Sistema OperativoDeterminar el Sistema Operativo

Ver señales de manipulación por malwareVer señales de manipulación por malware

Page 31: Taller cybersecurity 2016

Computación ForenseComputación ForenseWindows Forensics: Boot ProcessWindows Forensics: Boot Process

boot.ini (Win XP)boot.ini (Win XP)

Versión S.O. instaladaVersión S.O. instalada

Información sobre las múltiples opciones de Información sobre las múltiples opciones de arranquearranque

Si la máquina hibernó, hiberfil.sys carga el Si la máquina hibernó, hiberfil.sys carga el último estado del sistemaúltimo estado del sistema

bcd (Win Vista y posterior)bcd (Win Vista y posterior)

Usa el Boot ManagerUsa el Boot Manager

Page 32: Taller cybersecurity 2016

Computación ForenseComputación ForenseWindows Forensics: Setup LogsWindows Forensics: Setup Logs

Windows XP —> setuplog.txt y Windows XP —> setuplog.txt y netsetup.log (informa sobre cómo se netsetup.log (informa sobre cómo se instaló y configuró windows)instaló y configuró windows)

Windows 7: Windows 7: https://technet.microsoft.com/en-us/library/dd744583(WS.10).aspx

CurrentVersion Registry KeyCurrentVersion Registry Key

Page 33: Taller cybersecurity 2016

Computación ForenseComputación ForenseWindows Forensics: Donde encontrar Windows Forensics: Donde encontrar evidenciasevidencias

Historial de InternetHistorial de Internet

Event LogsEvent Logs

Archivos prefetch Archivos prefetch

Archivos thumbs.dbArchivos thumbs.db– Metadatos Metadatos

Page 34: Taller cybersecurity 2016

Computación ForenseComputación Forense• Conceptos InvestigaciónConceptos Investigación

– Preservar la evidencia - IntegridadPreservar la evidencia - Integridad– Cadena de custodiaCadena de custodia– Etiquetar y Documentar/ReportingEtiquetar y Documentar/Reporting– Volatilidad de adquisición de evidencias: de mayor a Volatilidad de adquisición de evidencias: de mayor a

menor menor – RAM y Swap DumpRAM y Swap Dump– Read OnlyRead Only– Imágenes AFF y HashesImágenes AFF y Hashes

Page 35: Taller cybersecurity 2016

Computación ForenseComputación Forense• Pasos InvestigaciónPasos Investigación

1. Desenchufar el cable de red 1. Desenchufar el cable de red

2. Hacer el volcado de memoria i swap2. Hacer el volcado de memoria i swap

3. Desenchufar la máquina directamente del cable de la 3. Desenchufar la máquina directamente del cable de la corrientecorriente

4. Clonar el disco y copias así como los hashes4. Clonar el disco y copias así como los hashes

5. Analizar y investigar la copia5. Analizar y investigar la copia

6. Reporting6. Reporting

7. Presentar el report con las evidencias delante de un tribunal7. Presentar el report con las evidencias delante de un tribunal

Page 36: Taller cybersecurity 2016

Computación ForenseComputación Forense• Distribuciones Live ForensicsDistribuciones Live Forensics• Helix: Helix: Tiene herramientas de adquisición de Tiene herramientas de adquisición de

evidencias de sistemas Windows en calienteevidencias de sistemas Windows en caliente• Caine: Caine: Monta los dispositivos en Read Only por Monta los dispositivos en Read Only por

defectodefecto• Backtrack/Kali Linux: Backtrack/Kali Linux: Modo Forense: Modo Read Modo Forense: Modo Read

Only por defecto y no utiliza la propia swap para hacer Only por defecto y no utiliza la propia swap para hacer el dump, podría sobreescribir la prueba.el dump, podría sobreescribir la prueba.

• Santoku: Santoku: Herramientas para mobile forensics Herramientas para mobile forensics

Page 37: Taller cybersecurity 2016

Taller HackingTaller Hacking

• Instalación WFP en VboxInstalación WFP en Vbox• Pentest Web for pentesterPentest Web for pentester• Herramientas (opcional): Mantra, Kali, etc.Herramientas (opcional): Mantra, Kali, etc.

37