SlideShare uma empresa Scribd logo
1 de 15
Tratamiento de seguridad en
        aplicaciones
Tratamiento de seguridad
• Definición de Aplicación:
• “Una aplicación es un programa informático diseñado para facilitar
  al usuario un determinado tipo de trabajo.” (Fuente: Wikipedia)
• Componentes de una Aplicación:
• •Procesos
• •Datos



•

•
Seguridad
•Las aplicaciones reciben datos, los procesan y
luego muestran los resultados.
•Los datos introducidos en una aplicación pueden
utilizarse en distintos contextos.
•Nombre de fichero
•Consultas SQL
•Consultas XPATH
•En códigos de marcas (XML, HTML, etc)
•…
Datos
•   Las aplicaciones
    pueden utilizar un
    mismo dato en
    distintos contextos.
•   Cada contexto
    puede tener
    implicaciones
    distintas.
Datos
• Un tratamiento incorrecto de los datos puede
  ocasionar que un cambio de contexto suponga
  una vulnerabilidad en la aplicación.
Cross SiteScriptint(XSS)
• •Es un error que se produce en contexto de lenguaje
  de marcas HTML, al generar la presentación de una
  página web.
• •Un usuario puede inyectar código malicioso
  (HTML/Javascript) que se ejecuta en el cliente.
• •Permite comprometer otros usuarios (ejecutar
  código, robar cookies).



•
SQL Injection

• •Es un error que se produce en contexto de sentencia SQL.
• •Un usuario es capar de alterar la sentencia SQL y alterar el
  comportamiento de la aplicación.
• •Añadir datos
• •Borrar datos
• •Extraer datos
• •Ejecutar comandos del sistema
• •…
• •Se puede comprometer datos y servidores.
PATH Traversal

• •Es un error que se produce en contexto de ruta de fichero.
• •El usuario es capaz de manipular la ruta de un fichero para
  que se acceda a ficheros de forma no controlada,
  generalmente escapando del directorio mediante ‘..’
• •Se pueden comprometer datos y servidores, dependiendo
  del uso que se le de los ficheros a los que se accede.
Buffer overflow
• Es un error que se produce en contexto de buffer de
  memoria.
• Se copia de un buffer de memoria a otro sin verificar
  que el buffer de destino sea mayor o igual que el buffer
  de origen.
• Permite modificar la memoria de la aplicación y tomar
  el control.
Validación de datos de entrada
               ¿Solución?
                     • ¡NO!
• •Se suele decir que una aplicación es segura si
  valida sus datos de entrada, pero eso no es
  cierto.
• •Un dato validado en la entrada de la
  aplicación puede ‘mutar’.
Validación de datos de entrada
               ¿Solución?
                        • ¡NO!
• •Si se verifican únicamente las entradas de datos
  se pueden producir ataques ‘de segundo nivel’.
• •Ejemplo: Un dato se verifica, se introduce en la
  base de datos pero luego al reutilizarse no se
  verifica de nuevo.
Validación de datos en cambios de
         contexto ¿Solución?
                       • ¡SI!
• •Te garantiza que SIEMPRE estarás tratando con
  datos de forma segura en todo momento.
• •En cada cambio de contexto deberían aplicarse
  únicamente las medidas necesarias para asegurar
  el dato en ese contexto, de manera se mejora la
  usabilidad.
Validación de datos en cambios de
       contexto ¿Solución?
Validación de datos en cambios de
       contexto ¿Solución?
Tratamiento de seguridad en aplicaciones

Mais conteúdo relacionado

Destaque

Intro to the arduino
Intro to the arduinoIntro to the arduino
Intro to the arduinoayreonmx
 
Maquinas virtuales
Maquinas virtualesMaquinas virtuales
Maquinas virtualesayreonmx
 
Clase 6 sistemas raid
Clase 6   sistemas raidClase 6   sistemas raid
Clase 6 sistemas raidayreonmx
 
Presentacion 4
Presentacion 4Presentacion 4
Presentacion 4ayreonmx
 
Presentation1
Presentation1Presentation1
Presentation1ayreonmx
 
Java – ejercicio 2
Java – ejercicio 2Java – ejercicio 2
Java – ejercicio 2ayreonmx
 
Java – ejercicio 3
Java – ejercicio 3Java – ejercicio 3
Java – ejercicio 3ayreonmx
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesosayreonmx
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidosayreonmx
 
1 fundamentos java
1 fundamentos java1 fundamentos java
1 fundamentos javaayreonmx
 
Manual del proteus
Manual del proteusManual del proteus
Manual del proteusayreonmx
 
Programacion de microcontroladores
Programacion de microcontroladoresProgramacion de microcontroladores
Programacion de microcontroladoresayreonmx
 
GESTION DE PROCESOS EN SISTEMAS OPERATIVOS
GESTION DE PROCESOS EN SISTEMAS OPERATIVOSGESTION DE PROCESOS EN SISTEMAS OPERATIVOS
GESTION DE PROCESOS EN SISTEMAS OPERATIVOSomarhcc
 

Destaque (13)

Intro to the arduino
Intro to the arduinoIntro to the arduino
Intro to the arduino
 
Maquinas virtuales
Maquinas virtualesMaquinas virtuales
Maquinas virtuales
 
Clase 6 sistemas raid
Clase 6   sistemas raidClase 6   sistemas raid
Clase 6 sistemas raid
 
Presentacion 4
Presentacion 4Presentacion 4
Presentacion 4
 
Presentation1
Presentation1Presentation1
Presentation1
 
Java – ejercicio 2
Java – ejercicio 2Java – ejercicio 2
Java – ejercicio 2
 
Java – ejercicio 3
Java – ejercicio 3Java – ejercicio 3
Java – ejercicio 3
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesos
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
1 fundamentos java
1 fundamentos java1 fundamentos java
1 fundamentos java
 
Manual del proteus
Manual del proteusManual del proteus
Manual del proteus
 
Programacion de microcontroladores
Programacion de microcontroladoresProgramacion de microcontroladores
Programacion de microcontroladores
 
GESTION DE PROCESOS EN SISTEMAS OPERATIVOS
GESTION DE PROCESOS EN SISTEMAS OPERATIVOSGESTION DE PROCESOS EN SISTEMAS OPERATIVOS
GESTION DE PROCESOS EN SISTEMAS OPERATIVOS
 

Semelhante a Tratamiento de seguridad en aplicaciones

Tratamiento seguro de datos en aplicaciones. OWASP Conference 2007.
Tratamiento seguro de datos en aplicaciones. OWASP Conference 2007.Tratamiento seguro de datos en aplicaciones. OWASP Conference 2007.
Tratamiento seguro de datos en aplicaciones. OWASP Conference 2007.Internet Security Auditors
 
VenatasydesventajasSGBD.pdf
VenatasydesventajasSGBD.pdfVenatasydesventajasSGBD.pdf
VenatasydesventajasSGBD.pdfssuser948499
 
Mejores prácticas desarrollo de base de datos
Mejores prácticas desarrollo de base de datos Mejores prácticas desarrollo de base de datos
Mejores prácticas desarrollo de base de datos Eduardo Castro
 
Seguridad Base de Datos sql injection v1.0
Seguridad Base de Datos sql injection v1.0Seguridad Base de Datos sql injection v1.0
Seguridad Base de Datos sql injection v1.0José Moreno
 
Sistemas de informacion diseño de si
Sistemas de informacion   diseño de siSistemas de informacion   diseño de si
Sistemas de informacion diseño de siUDES - USTA
 
Vulnerabilidades en sitios web(español)
Vulnerabilidades en sitios web(español)Vulnerabilidades en sitios web(español)
Vulnerabilidades en sitios web(español)Miguel de la Cruz
 
Taller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccionTaller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccionJosé Antonio Sandoval Acosta
 
Curso Fundeweb2 para java desde cero a experto.ppt
Curso Fundeweb2 para java desde cero a experto.pptCurso Fundeweb2 para java desde cero a experto.ppt
Curso Fundeweb2 para java desde cero a experto.pptRolitoChc1
 
Integración de Oracle Data Integrator con Oracle GoldenGate 12c
Integración de Oracle Data Integrator  con Oracle GoldenGate 12cIntegración de Oracle Data Integrator  con Oracle GoldenGate 12c
Integración de Oracle Data Integrator con Oracle GoldenGate 12cEdelweiss Kammermann
 
Trabajo practico gestion de datos Nicolas Galan
Trabajo practico gestion de datos Nicolas GalanTrabajo practico gestion de datos Nicolas Galan
Trabajo practico gestion de datos Nicolas GalanNNG123
 
Auditoria bd
Auditoria bdAuditoria bd
Auditoria bdHaydee Lo
 
Dev ops best practices - spanish v4
Dev ops best practices - spanish v4Dev ops best practices - spanish v4
Dev ops best practices - spanish v4Vemn1
 

Semelhante a Tratamiento de seguridad en aplicaciones (20)

OWASP Meeting. Tratamiento de Datos
OWASP Meeting. Tratamiento de DatosOWASP Meeting. Tratamiento de Datos
OWASP Meeting. Tratamiento de Datos
 
Tratamiento seguro de datos en aplicaciones. OWASP Conference 2007.
Tratamiento seguro de datos en aplicaciones. OWASP Conference 2007.Tratamiento seguro de datos en aplicaciones. OWASP Conference 2007.
Tratamiento seguro de datos en aplicaciones. OWASP Conference 2007.
 
VenatasydesventajasSGBD.pdf
VenatasydesventajasSGBD.pdfVenatasydesventajasSGBD.pdf
VenatasydesventajasSGBD.pdf
 
Mejores prácticas desarrollo de base de datos
Mejores prácticas desarrollo de base de datos Mejores prácticas desarrollo de base de datos
Mejores prácticas desarrollo de base de datos
 
17988998.ppt
17988998.ppt17988998.ppt
17988998.ppt
 
Base de datos pdf
Base de datos pdfBase de datos pdf
Base de datos pdf
 
Seguridad Base de Datos sql injection v1.0
Seguridad Base de Datos sql injection v1.0Seguridad Base de Datos sql injection v1.0
Seguridad Base de Datos sql injection v1.0
 
En 20 minutos ...Control de Cambios de la BD con Liquibase
En 20 minutos ...Control de Cambios de la BD con LiquibaseEn 20 minutos ...Control de Cambios de la BD con Liquibase
En 20 minutos ...Control de Cambios de la BD con Liquibase
 
Sistemas de informacion diseño de si
Sistemas de informacion   diseño de siSistemas de informacion   diseño de si
Sistemas de informacion diseño de si
 
Video sgbd
Video sgbdVideo sgbd
Video sgbd
 
Oracle
OracleOracle
Oracle
 
Vulnerabilidades en sitios web(español)
Vulnerabilidades en sitios web(español)Vulnerabilidades en sitios web(español)
Vulnerabilidades en sitios web(español)
 
Taller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccionTaller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccion
 
Curso Fundeweb2 para java desde cero a experto.ppt
Curso Fundeweb2 para java desde cero a experto.pptCurso Fundeweb2 para java desde cero a experto.ppt
Curso Fundeweb2 para java desde cero a experto.ppt
 
Integración de Oracle Data Integrator con Oracle GoldenGate 12c
Integración de Oracle Data Integrator  con Oracle GoldenGate 12cIntegración de Oracle Data Integrator  con Oracle GoldenGate 12c
Integración de Oracle Data Integrator con Oracle GoldenGate 12c
 
Trabajo practico gestion de datos Nicolas Galan
Trabajo practico gestion de datos Nicolas GalanTrabajo practico gestion de datos Nicolas Galan
Trabajo practico gestion de datos Nicolas Galan
 
Auditoria bd
Auditoria bdAuditoria bd
Auditoria bd
 
Dev ops best practices - spanish v4
Dev ops best practices - spanish v4Dev ops best practices - spanish v4
Dev ops best practices - spanish v4
 
Ingrid 9-1
Ingrid 9-1Ingrid 9-1
Ingrid 9-1
 
Caracteristicas Microsoft SQL Server
Caracteristicas Microsoft SQL ServerCaracteristicas Microsoft SQL Server
Caracteristicas Microsoft SQL Server
 

Mais de ayreonmx

Java ejercicio 1
Java   ejercicio 1Java   ejercicio 1
Java ejercicio 1ayreonmx
 
Introducción a java ii
Introducción a java iiIntroducción a java ii
Introducción a java iiayreonmx
 
Introducción a los microprocesadores ii
Introducción a los microprocesadores iiIntroducción a los microprocesadores ii
Introducción a los microprocesadores iiayreonmx
 
Linux 1ntroducc1on
Linux 1ntroducc1onLinux 1ntroducc1on
Linux 1ntroducc1onayreonmx
 
Intr0ducción a los micr0pr0cesadores i
Intr0ducción a los micr0pr0cesadores iIntr0ducción a los micr0pr0cesadores i
Intr0ducción a los micr0pr0cesadores iayreonmx
 
Introobjetos
IntroobjetosIntroobjetos
Introobjetosayreonmx
 
Ejercicio basico jsf’s
Ejercicio basico jsf’sEjercicio basico jsf’s
Ejercicio basico jsf’sayreonmx
 

Mais de ayreonmx (8)

Java ejercicio 1
Java   ejercicio 1Java   ejercicio 1
Java ejercicio 1
 
Introducción a java ii
Introducción a java iiIntroducción a java ii
Introducción a java ii
 
Introducción a los microprocesadores ii
Introducción a los microprocesadores iiIntroducción a los microprocesadores ii
Introducción a los microprocesadores ii
 
Cli unix2
Cli unix2Cli unix2
Cli unix2
 
Linux 1ntroducc1on
Linux 1ntroducc1onLinux 1ntroducc1on
Linux 1ntroducc1on
 
Intr0ducción a los micr0pr0cesadores i
Intr0ducción a los micr0pr0cesadores iIntr0ducción a los micr0pr0cesadores i
Intr0ducción a los micr0pr0cesadores i
 
Introobjetos
IntroobjetosIntroobjetos
Introobjetos
 
Ejercicio basico jsf’s
Ejercicio basico jsf’sEjercicio basico jsf’s
Ejercicio basico jsf’s
 

Tratamiento de seguridad en aplicaciones

  • 1. Tratamiento de seguridad en aplicaciones
  • 2. Tratamiento de seguridad • Definición de Aplicación: • “Una aplicación es un programa informático diseñado para facilitar al usuario un determinado tipo de trabajo.” (Fuente: Wikipedia) • Componentes de una Aplicación: • •Procesos • •Datos • •
  • 3. Seguridad •Las aplicaciones reciben datos, los procesan y luego muestran los resultados. •Los datos introducidos en una aplicación pueden utilizarse en distintos contextos. •Nombre de fichero •Consultas SQL •Consultas XPATH •En códigos de marcas (XML, HTML, etc) •…
  • 4. Datos • Las aplicaciones pueden utilizar un mismo dato en distintos contextos. • Cada contexto puede tener implicaciones distintas.
  • 5. Datos • Un tratamiento incorrecto de los datos puede ocasionar que un cambio de contexto suponga una vulnerabilidad en la aplicación.
  • 6. Cross SiteScriptint(XSS) • •Es un error que se produce en contexto de lenguaje de marcas HTML, al generar la presentación de una página web. • •Un usuario puede inyectar código malicioso (HTML/Javascript) que se ejecuta en el cliente. • •Permite comprometer otros usuarios (ejecutar código, robar cookies). •
  • 7. SQL Injection • •Es un error que se produce en contexto de sentencia SQL. • •Un usuario es capar de alterar la sentencia SQL y alterar el comportamiento de la aplicación. • •Añadir datos • •Borrar datos • •Extraer datos • •Ejecutar comandos del sistema • •… • •Se puede comprometer datos y servidores.
  • 8. PATH Traversal • •Es un error que se produce en contexto de ruta de fichero. • •El usuario es capaz de manipular la ruta de un fichero para que se acceda a ficheros de forma no controlada, generalmente escapando del directorio mediante ‘..’ • •Se pueden comprometer datos y servidores, dependiendo del uso que se le de los ficheros a los que se accede.
  • 9. Buffer overflow • Es un error que se produce en contexto de buffer de memoria. • Se copia de un buffer de memoria a otro sin verificar que el buffer de destino sea mayor o igual que el buffer de origen. • Permite modificar la memoria de la aplicación y tomar el control.
  • 10. Validación de datos de entrada ¿Solución? • ¡NO! • •Se suele decir que una aplicación es segura si valida sus datos de entrada, pero eso no es cierto. • •Un dato validado en la entrada de la aplicación puede ‘mutar’.
  • 11. Validación de datos de entrada ¿Solución? • ¡NO! • •Si se verifican únicamente las entradas de datos se pueden producir ataques ‘de segundo nivel’. • •Ejemplo: Un dato se verifica, se introduce en la base de datos pero luego al reutilizarse no se verifica de nuevo.
  • 12. Validación de datos en cambios de contexto ¿Solución? • ¡SI! • •Te garantiza que SIEMPRE estarás tratando con datos de forma segura en todo momento. • •En cada cambio de contexto deberían aplicarse únicamente las medidas necesarias para asegurar el dato en ese contexto, de manera se mejora la usabilidad.
  • 13. Validación de datos en cambios de contexto ¿Solución?
  • 14. Validación de datos en cambios de contexto ¿Solución?