SlideShare una empresa de Scribd logo
1 de 57
Seguridad en Aplicaciones Web 2.0 Pablo Víquez Noviembre, 2009
2 Acerca de… Pablo Viquez SeniorDeveloper  @ Schematic Co-Fundador de la comunidad Costa Rica PHP www.pabloviquez.com @pabloviquez
3 Agenda ,[object Object]
 Seguridad, ¿por qué?
 Reglas básicas
 Ataques y vulnerabilidades comunes
 Ejemplos,[object Object]
5 Web 2.0 “El término “Web 2.0” es comúnmente asociado con aplicaciones web que facilitan interactivamente el intercambio de información, interoperabilidad, diseño centrado en el usuario y colaboración”
6 Web 2.0 "Yo creo que Web 2.0 es pura basura, ni siquiera nadie sabe que significa" "I think Web 2.0 is of course a piece of jargon, nobody even knows what it means" Tim Berners-Lee
7 Web 2.0 “No se refiere a un cambio técnico, sino a las maneras en que los desarrolladores y los usuarios hacen uso de las aplicaciones en la web”
8 Web 2.0 Crear software y distribuirlo Crear servicios basados en información
9
10 Seguridad
11 "70% de los 100 sitios mas populares, han hospedado contenido malicioso ó han contenido redireccionamientospara víctimas de sitios legítimos a sitios maliciosos" (Websense, 2009)
12 Seguridad
13 Reglas Básicas nuncaconfíeen el usuario filtre todo el input, limpie todo el output evite las excusas! piense como hacker! deje que la seguridadsea parte de su diseño
14 Ataques y vulnerabilidades comunes
15
16
17 SQL Injection Inserción de datos adicionales en un “string” que eventualmente será ejecutado en la base de datos
SQL Injection :: Ejemplo 18
SQL Injection :: Ejemplo 19 $_POST[‘usuario’] = usuario123$_POST[‘clave’] = 123456 Página de login DB
SQL Injection :: Ejemplo $login=$_POST['login']; $password=$_POST['password']; $sql="SELECT * FROM user                WHERE login = '$login‘               AND password = '$password'"; 20 lo anterior dacomoresultado: "SELECT * FROM user          WHERE login = 'admin‘        AND password = '123456’";
SQL Injection :: Ejemplo 21
SQL Injection :: Ejemplo 22 SELECT *  FROM user WHERE login = '$login'AND password = '$password' lo anterior dacomoresultado: SELECT *  FROM user  WHERE login = 'admin'   AND password = '1' OR 1=1 OR ''=''
23 SQL Injection Inyección de consultas ?val=(DELETE FROM table); Recolección de datosarbitrarios ?id=column_name Denial of Service ?val=(BENCHMARK(100000000, MD5(RAND())); Modificación de Datos ?val=(UPDATE users SET is_admin=1);
Filtrar la entrada del usuario. addslashes("Admin’ or 1=1"); Usar las funciones específicas de la base de datos mysqli_real_escape_string("Admin’ or 1=1"); Usarsentenciaspreparadas (prepared statements) 24 SQL_Injection::Soluciones
25 XSS
XSS 26
XSS Consiste en inyectar código ejecutable en el navegador. Este ataque puede ser llevado a cabo utilizando: HTML JavaScript VBScript ActiveX Flash Cualquier otra tecnología que ejecute el cliente 27
XSS 28
XSS 29 (link con contenido malicioso) v v Víctima Atacante etc… ejecuta contenido malicioso Roba datos del usuario Sito web con vulnerabilidad
XSS 30
31
32 XSS http://www.apple.com/itunes/affiliates/download/?artistName=MSG1&thumbnailUrl=http://url.jpg&itmsUrl=http://www.url.com&albumName=MSG
33
34
Stored XSS 35 pone contenido malicioso en el sitio Accesa el sitio con el problema v v Víctima Atacante ejecuta contenido malicioso y roba los datos del usuario Sito web con vulnerabilidad
Stored XSS 36 }
XSS – Robo de sesión 37
XSS – Robo de claves 38
XSS – Robo de claves 39
XSS - Prevención 40
XSS - FIEO 41
XSS - FIEO 42 Hola Mundo<script>alert('Hola Mundo');</script>
XSS - FIEO 43 Hola Mundo<script>alert('Hola Mundo');</script>
44 CSRF
CSRF – Como funciona 45
46 “Cualquier aplicación que acepta pedidos HTTP (HTTP Request) de un usuario autenticado sin tener algún tipo de control para verificar que el pedido HTTP es único a la sesión del usuario, esta expuesto a un ataque.”
CSRF – Ejemplos 47 Llena el formulario y envía un correo.
CSRF – Ejemplos 48 <formmethod=“post”action=“email.php”><input type=“hidden”name=“para”value=“soporte@sitio.com” />    ….</form>
CSRF – Ejemplos 49 Atacante <formmethod=“post”action=“email.php”><input type=“hidden”name=“para”value=“usr@dominio.com” />    …</form>
50 CSRF::Soluciones Token de solo 1 uso:
CSRF::Soluciones 51 $_POST ¿Tiene un “token” en la sesión y es válido? Atacante Pedido denegado
52 AtaquesLógicos
Ataquelógico – Ejemplos 53
Ataquelógico – Ejemplos 54 <form>…<inputtype=“hidden”name=“total”value=“199.00” />…</form>

Más contenido relacionado

Destacado

PASSARELLO ESPEDITO Clase 1 _introduccionARQUITECTURAS EMPRESARIALES
PASSARELLO ESPEDITO Clase 1 _introduccionARQUITECTURAS EMPRESARIALESPASSARELLO ESPEDITO Clase 1 _introduccionARQUITECTURAS EMPRESARIALES
PASSARELLO ESPEDITO Clase 1 _introduccionARQUITECTURAS EMPRESARIALESEspedito Passarello
 
Manuel Stylstar Fr
Manuel Stylstar FrManuel Stylstar Fr
Manuel Stylstar Frguest8a1c5d
 
Le Contenu De La Cct En Mat!èRe De Formation
Le Contenu De La Cct En Mat!èRe De FormationLe Contenu De La Cct En Mat!èRe De Formation
Le Contenu De La Cct En Mat!èRe De FormationCNE 218
 
Informativo n°36 -_1°_basico_b_-_21_de_noviembre_de_2014
Informativo n°36 -_1°_basico_b_-_21_de_noviembre_de_2014Informativo n°36 -_1°_basico_b_-_21_de_noviembre_de_2014
Informativo n°36 -_1°_basico_b_-_21_de_noviembre_de_2014Colegio Camilo Henríquez
 
Choice Reviews Online
Choice Reviews OnlineChoice Reviews Online
Choice Reviews Onlineematos
 
Extraits du guide facebook
Extraits du guide facebookExtraits du guide facebook
Extraits du guide facebookREALIZ
 
Video PolíTica
Video PolíTicaVideo PolíTica
Video PolíTicamayumy
 
Cómo no se tiene que aparcar
Cómo no se tiene que aparcarCómo no se tiene que aparcar
Cómo no se tiene que aparcarnopueser
 
Investigación de Problemas
Investigación de ProblemasInvestigación de Problemas
Investigación de ProblemasMarina Rojo
 
Le forum
Le forumLe forum
Le forumvigipro
 
Planisoft comptes annuels et annexes au 31 decembre 2007
Planisoft comptes annuels et annexes au 31 decembre 2007Planisoft comptes annuels et annexes au 31 decembre 2007
Planisoft comptes annuels et annexes au 31 decembre 2007Frontware International
 
Comment être visible sur internet et créer son site web
Comment être visible sur internet et créer son site webComment être visible sur internet et créer son site web
Comment être visible sur internet et créer son site webmarinemaingot
 
Une récession possible au Canada - Se préparer comme PME
Une récession possible au Canada - Se préparer comme PMEUne récession possible au Canada - Se préparer comme PME
Une récession possible au Canada - Se préparer comme PMETravailleur autonome
 
PéRipéTies Melhor
PéRipéTies MelhorPéRipéTies Melhor
PéRipéTies Melhoraygher
 

Destacado (20)

PASSARELLO ESPEDITO Clase 1 _introduccionARQUITECTURAS EMPRESARIALES
PASSARELLO ESPEDITO Clase 1 _introduccionARQUITECTURAS EMPRESARIALESPASSARELLO ESPEDITO Clase 1 _introduccionARQUITECTURAS EMPRESARIALES
PASSARELLO ESPEDITO Clase 1 _introduccionARQUITECTURAS EMPRESARIALES
 
5 3 2 Repeticiones
5 3 2 Repeticiones5 3 2 Repeticiones
5 3 2 Repeticiones
 
Informativo nº 7 3°basico b
Informativo nº 7  3°basico bInformativo nº 7  3°basico b
Informativo nº 7 3°basico b
 
Manuel Stylstar Fr
Manuel Stylstar FrManuel Stylstar Fr
Manuel Stylstar Fr
 
Savez-vous vendre?
Savez-vous vendre?Savez-vous vendre?
Savez-vous vendre?
 
Le Contenu De La Cct En Mat!èRe De Formation
Le Contenu De La Cct En Mat!èRe De FormationLe Contenu De La Cct En Mat!èRe De Formation
Le Contenu De La Cct En Mat!èRe De Formation
 
Informativo n°36 -_1°_basico_b_-_21_de_noviembre_de_2014
Informativo n°36 -_1°_basico_b_-_21_de_noviembre_de_2014Informativo n°36 -_1°_basico_b_-_21_de_noviembre_de_2014
Informativo n°36 -_1°_basico_b_-_21_de_noviembre_de_2014
 
Choice Reviews Online
Choice Reviews OnlineChoice Reviews Online
Choice Reviews Online
 
Extraits du guide facebook
Extraits du guide facebookExtraits du guide facebook
Extraits du guide facebook
 
Video PolíTica
Video PolíTicaVideo PolíTica
Video PolíTica
 
Trece Lineas Para Vivir
Trece Lineas Para VivirTrece Lineas Para Vivir
Trece Lineas Para Vivir
 
Cómo no se tiene que aparcar
Cómo no se tiene que aparcarCómo no se tiene que aparcar
Cómo no se tiene que aparcar
 
Investigación de Problemas
Investigación de ProblemasInvestigación de Problemas
Investigación de Problemas
 
Le forum
Le forumLe forum
Le forum
 
PresentacióN1fewfwe
PresentacióN1fewfwePresentacióN1fewfwe
PresentacióN1fewfwe
 
6°basico a
6°basico a6°basico a
6°basico a
 
Planisoft comptes annuels et annexes au 31 decembre 2007
Planisoft comptes annuels et annexes au 31 decembre 2007Planisoft comptes annuels et annexes au 31 decembre 2007
Planisoft comptes annuels et annexes au 31 decembre 2007
 
Comment être visible sur internet et créer son site web
Comment être visible sur internet et créer son site webComment être visible sur internet et créer son site web
Comment être visible sur internet et créer son site web
 
Une récession possible au Canada - Se préparer comme PME
Une récession possible au Canada - Se préparer comme PMEUne récession possible au Canada - Se préparer comme PME
Une récession possible au Canada - Se préparer comme PME
 
PéRipéTies Melhor
PéRipéTies MelhorPéRipéTies Melhor
PéRipéTies Melhor
 

Similar a Seguridad de aplicaciones web 2.0

Inyecciones sql para todos
Inyecciones sql para todosInyecciones sql para todos
Inyecciones sql para todoscsaralg
 
Evidencia Informe amenaza a las bases de datos - Gestión de la Seguridad Info...
Evidencia Informe amenaza a las bases de datos - Gestión de la Seguridad Info...Evidencia Informe amenaza a las bases de datos - Gestión de la Seguridad Info...
Evidencia Informe amenaza a las bases de datos - Gestión de la Seguridad Info...Jesús Daniel Mayo
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"www.encamina.com
 
la mejor forma de Conectar c# con mysql con archivos de configuracion
 la mejor forma de Conectar c# con mysql con archivos de configuracion  la mejor forma de Conectar c# con mysql con archivos de configuracion
la mejor forma de Conectar c# con mysql con archivos de configuracion juandavid1118
 
2. administracion de la seguridad
2.  administracion de la seguridad2.  administracion de la seguridad
2. administracion de la seguridadNestor Lopez
 
Ruby On Rails Intro
Ruby On Rails IntroRuby On Rails Intro
Ruby On Rails IntroThirdWay
 
Curso basicoseguridadweb slideshare3
Curso basicoseguridadweb slideshare3Curso basicoseguridadweb slideshare3
Curso basicoseguridadweb slideshare3tantascosasquenose
 
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
 
Seguridad en servidores WEB. Modulo mod_security
Seguridad en servidores WEB. Modulo mod_securitySeguridad en servidores WEB. Modulo mod_security
Seguridad en servidores WEB. Modulo mod_securityseguridadelinux
 
Presentacion moodler
Presentacion moodlerPresentacion moodler
Presentacion moodlercarmensp
 
Web App Security, Ethical hacking for CodeCamp SDQ 5
Web App Security, Ethical hacking for CodeCamp SDQ 5Web App Security, Ethical hacking for CodeCamp SDQ 5
Web App Security, Ethical hacking for CodeCamp SDQ 5Jose Gratereaux
 
Avance proyecto integrador i
Avance proyecto integrador iAvance proyecto integrador i
Avance proyecto integrador iSantiago Forland
 
Inyeccion sql
Inyeccion sqlInyeccion sql
Inyeccion sqlobispo28
 

Similar a Seguridad de aplicaciones web 2.0 (20)

Inyecciones sql para todos
Inyecciones sql para todosInyecciones sql para todos
Inyecciones sql para todos
 
Evidencia Informe amenaza a las bases de datos - Gestión de la Seguridad Info...
Evidencia Informe amenaza a las bases de datos - Gestión de la Seguridad Info...Evidencia Informe amenaza a las bases de datos - Gestión de la Seguridad Info...
Evidencia Informe amenaza a las bases de datos - Gestión de la Seguridad Info...
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"
 
la mejor forma de Conectar c# con mysql con archivos de configuracion
 la mejor forma de Conectar c# con mysql con archivos de configuracion  la mejor forma de Conectar c# con mysql con archivos de configuracion
la mejor forma de Conectar c# con mysql con archivos de configuracion
 
Inyecciones SQL
Inyecciones SQLInyecciones SQL
Inyecciones SQL
 
Rails intro
Rails introRails intro
Rails intro
 
2. administracion de la seguridad
2.  administracion de la seguridad2.  administracion de la seguridad
2. administracion de la seguridad
 
Ruby On Rails Intro
Ruby On Rails IntroRuby On Rails Intro
Ruby On Rails Intro
 
Curso basicoseguridadweb slideshare3
Curso basicoseguridadweb slideshare3Curso basicoseguridadweb slideshare3
Curso basicoseguridadweb slideshare3
 
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
 
Angular js
Angular jsAngular js
Angular js
 
Seguridad en servidores WEB. Modulo mod_security
Seguridad en servidores WEB. Modulo mod_securitySeguridad en servidores WEB. Modulo mod_security
Seguridad en servidores WEB. Modulo mod_security
 
Presentacion moodler
Presentacion moodlerPresentacion moodler
Presentacion moodler
 
Seguridad En Programación
Seguridad En ProgramaciónSeguridad En Programación
Seguridad En Programación
 
(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0
(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0
(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0
 
BEING DBA
BEING DBABEING DBA
BEING DBA
 
Seguridad WEB - Principios básicos.
Seguridad WEB - Principios básicos.Seguridad WEB - Principios básicos.
Seguridad WEB - Principios básicos.
 
Web App Security, Ethical hacking for CodeCamp SDQ 5
Web App Security, Ethical hacking for CodeCamp SDQ 5Web App Security, Ethical hacking for CodeCamp SDQ 5
Web App Security, Ethical hacking for CodeCamp SDQ 5
 
Avance proyecto integrador i
Avance proyecto integrador iAvance proyecto integrador i
Avance proyecto integrador i
 
Inyeccion sql
Inyeccion sqlInyeccion sql
Inyeccion sql
 

Último

Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 

Último (20)

Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 

Seguridad de aplicaciones web 2.0

  • 1. Seguridad en Aplicaciones Web 2.0 Pablo Víquez Noviembre, 2009
  • 2. 2 Acerca de… Pablo Viquez SeniorDeveloper @ Schematic Co-Fundador de la comunidad Costa Rica PHP www.pabloviquez.com @pabloviquez
  • 3.
  • 6. Ataques y vulnerabilidades comunes
  • 7.
  • 8. 5 Web 2.0 “El término “Web 2.0” es comúnmente asociado con aplicaciones web que facilitan interactivamente el intercambio de información, interoperabilidad, diseño centrado en el usuario y colaboración”
  • 9. 6 Web 2.0 "Yo creo que Web 2.0 es pura basura, ni siquiera nadie sabe que significa" "I think Web 2.0 is of course a piece of jargon, nobody even knows what it means" Tim Berners-Lee
  • 10. 7 Web 2.0 “No se refiere a un cambio técnico, sino a las maneras en que los desarrolladores y los usuarios hacen uso de las aplicaciones en la web”
  • 11. 8 Web 2.0 Crear software y distribuirlo Crear servicios basados en información
  • 12. 9
  • 14. 11 "70% de los 100 sitios mas populares, han hospedado contenido malicioso ó han contenido redireccionamientospara víctimas de sitios legítimos a sitios maliciosos" (Websense, 2009)
  • 16. 13 Reglas Básicas nuncaconfíeen el usuario filtre todo el input, limpie todo el output evite las excusas! piense como hacker! deje que la seguridadsea parte de su diseño
  • 17. 14 Ataques y vulnerabilidades comunes
  • 18. 15
  • 19. 16
  • 20. 17 SQL Injection Inserción de datos adicionales en un “string” que eventualmente será ejecutado en la base de datos
  • 21. SQL Injection :: Ejemplo 18
  • 22. SQL Injection :: Ejemplo 19 $_POST[‘usuario’] = usuario123$_POST[‘clave’] = 123456 Página de login DB
  • 23. SQL Injection :: Ejemplo $login=$_POST['login']; $password=$_POST['password']; $sql="SELECT * FROM user WHERE login = '$login‘ AND password = '$password'"; 20 lo anterior dacomoresultado: "SELECT * FROM user WHERE login = 'admin‘ AND password = '123456’";
  • 24. SQL Injection :: Ejemplo 21
  • 25. SQL Injection :: Ejemplo 22 SELECT * FROM user WHERE login = '$login'AND password = '$password' lo anterior dacomoresultado: SELECT * FROM user WHERE login = 'admin' AND password = '1' OR 1=1 OR ''=''
  • 26. 23 SQL Injection Inyección de consultas ?val=(DELETE FROM table); Recolección de datosarbitrarios ?id=column_name Denial of Service ?val=(BENCHMARK(100000000, MD5(RAND())); Modificación de Datos ?val=(UPDATE users SET is_admin=1);
  • 27. Filtrar la entrada del usuario. addslashes("Admin’ or 1=1"); Usar las funciones específicas de la base de datos mysqli_real_escape_string("Admin’ or 1=1"); Usarsentenciaspreparadas (prepared statements) 24 SQL_Injection::Soluciones
  • 30. XSS Consiste en inyectar código ejecutable en el navegador. Este ataque puede ser llevado a cabo utilizando: HTML JavaScript VBScript ActiveX Flash Cualquier otra tecnología que ejecute el cliente 27
  • 32. XSS 29 (link con contenido malicioso) v v Víctima Atacante etc… ejecuta contenido malicioso Roba datos del usuario Sito web con vulnerabilidad
  • 34. 31
  • 36. 33
  • 37. 34
  • 38. Stored XSS 35 pone contenido malicioso en el sitio Accesa el sitio con el problema v v Víctima Atacante ejecuta contenido malicioso y roba los datos del usuario Sito web con vulnerabilidad
  • 40. XSS – Robo de sesión 37
  • 41. XSS – Robo de claves 38
  • 42. XSS – Robo de claves 39
  • 45. XSS - FIEO 42 Hola Mundo&lt;script&gt;alert(&#039;Hola Mundo&#039;);&lt;/script&gt;
  • 46. XSS - FIEO 43 Hola Mundo&lt;script&gt;alert(&#039;Hola Mundo&#039;);&lt;/script&gt;
  • 48. CSRF – Como funciona 45
  • 49. 46 “Cualquier aplicación que acepta pedidos HTTP (HTTP Request) de un usuario autenticado sin tener algún tipo de control para verificar que el pedido HTTP es único a la sesión del usuario, esta expuesto a un ataque.”
  • 50. CSRF – Ejemplos 47 Llena el formulario y envía un correo.
  • 51. CSRF – Ejemplos 48 <formmethod=“post”action=“email.php”><input type=“hidden”name=“para”value=“soporte@sitio.com” /> ….</form>
  • 52. CSRF – Ejemplos 49 Atacante <formmethod=“post”action=“email.php”><input type=“hidden”name=“para”value=“usr@dominio.com” /> …</form>
  • 53. 50 CSRF::Soluciones Token de solo 1 uso:
  • 54. CSRF::Soluciones 51 $_POST ¿Tiene un “token” en la sesión y es válido? Atacante Pedido denegado
  • 57. Ataquelógico – Ejemplos 54 <form>…<inputtype=“hidden”name=“total”value=“199.00” />…</form>
  • 58. Ataquelógico – Ejemplos 55 <form>…<inputtype=“hidden”name=“total”value=“0” />…</form>
  • 59. 56 Referencias Open Web Application Security Project http://www.owasp.org Chris Shiflett http://www.shiflett.orgGuia de Seguridad PHP http://php.net/manual/en/security.intro.phpBlack Hat http://www.blackhat.com Yahoo Search http://search.yahoo.com Google Search http://www.google.com