SlideShare una empresa de Scribd logo
1 de 11
Generando Aplicaciones Seguras conGenerando Aplicaciones Seguras con
GeneXusGeneXus
Diego Rostagnol - PedidosYADiego Rostagnol - PedidosYA
Dos grandes áreas
Servidor Aplicación
Autenticación
!= Autorización
 Autenticación: Es el proceso por el
cual demostramos que somos quienes
decimos ser.
 Autorización: Se produce despues de
la Autenticación y es el proceso por el
cual obtenemos o no permisos para
efectuar una determinada acción.
¿ Que implica?
• Crear un manejo de permisos de usuarios de
mi sistema.
• Evitar que personas no autorizadas puedan
autenticarse ante mi aplicación.
• Asegurar que los usuarios accedan solamente
a los datos que que están autorizados a
manipular.
Errores comunes
• No controlar que exista un usuario logueado en todas las
pantallas de la aplicación
• No validar los roles en cada pantalla
• Confiar en que el usuario llega a las pantallas de mi
aplicación siguiendo los links en ella.
• No usar las Transacciones como parte de mi aplicación
pero dejarlas accesibles.
• Dejar los prompts automaticos sin seguridad
• Poner el código del usuario logueado en el form o pasarlo
por parametro
• Dejar disponible en producción el archivo
DeveloperMenu.xml
Consideraciones
• No se puede confiar en las validaciones que
ejecutan del lado del cliente. (Browser).
•Las validaciones de los datos ingresados se
deben hacer del lado del servidor.
•Propiedades Visible y Enabled no aseguran
que el valor de las variables o atributos no
sea modificado.
• Aplicaciones para Smart Devices
• Compuesta por una parte nativa en
el Dispositivo que se alimenta de
servicios REST alojados en un
Servidor Web.
• Servicios REST:
http://.../higueron/servlet/rest/cliente/
Transacción
1
Clave
Nuevos Problemas de Seguridad en EVO2
{"Cliente":{"CliId":129,"CliNom":"Rodolfo","CliNac":"1976-08-5"}}
• JSON
• REST Usa operaciones del protocolo HTTP (GET, PUT, POST,
DELETE)
• Los servicios se generan cuando la Trn se expone como WS
REST en una App SD (Ej: Al aplicar WWSD a una TRN)
• Hay que poner reglas que hagan las comprobaciones de
autenticación y autorización.
Nuevos Problemas de Seguridad en EVO2
¿Como nos ayuda GeneXus?
• Encriptación de parametros (SiteKey y
SessionKey).
• GAM !!
• Se encarga de prevenir
automáticamente ataques de tipo "SQL
Injection".
Buenas practicas
• Usar MD5, SHA1 o similar para la
encriptación de contraseñas (algoritmos de
reducción criptográficos).
• NUNCA pasar identificadores de usuario
por parámetro
• ??????
Gracias!!Gracias!!

Más contenido relacionado

La actualidad más candente (6)

Diapositivas de wordpress
Diapositivas de wordpressDiapositivas de wordpress
Diapositivas de wordpress
 
Proceso de instalación de Microsoft Exchange 2010
Proceso de instalación de Microsoft Exchange 2010Proceso de instalación de Microsoft Exchange 2010
Proceso de instalación de Microsoft Exchange 2010
 
Instale PHP y Drupal fácilmente en Windows con Web PI (parte I)
Instale PHP y Drupal fácilmente en Windows con Web PI (parte I)Instale PHP y Drupal fácilmente en Windows con Web PI (parte I)
Instale PHP y Drupal fácilmente en Windows con Web PI (parte I)
 
Nuevos escenarios cubiertos por el gam
Nuevos escenarios cubiertos por el gamNuevos escenarios cubiertos por el gam
Nuevos escenarios cubiertos por el gam
 
127 qué hace-y_cómo_se_utiliza_la_seguridad_integrada_a_gene_xus
127 qué hace-y_cómo_se_utiliza_la_seguridad_integrada_a_gene_xus127 qué hace-y_cómo_se_utiliza_la_seguridad_integrada_a_gene_xus
127 qué hace-y_cómo_se_utiliza_la_seguridad_integrada_a_gene_xus
 
30.gam introduction sp
30.gam introduction sp30.gam introduction sp
30.gam introduction sp
 

Destacado

La empresa
La empresa La empresa
La empresa
JhonasxD
 
D. Nieto A. Barreno
D. Nieto A. BarrenoD. Nieto A. Barreno
D. Nieto A. Barreno
DavidNieto01
 
La Empresa
La EmpresaLa Empresa
La Empresa
JhonasxD
 
Cuestionariomedicoxango
Cuestionariomedicoxango Cuestionariomedicoxango
Cuestionariomedicoxango
Eva Bárcenas
 
Exposición A.barreno d.nieto
Exposición A.barreno d.nietoExposición A.barreno d.nieto
Exposición A.barreno d.nieto
DavidNieto01
 

Destacado (20)

Mapa conceptual sobre temas 17 al 21
Mapa conceptual sobre temas 17 al 21Mapa conceptual sobre temas 17 al 21
Mapa conceptual sobre temas 17 al 21
 
Linea tiempo
Linea tiempoLinea tiempo
Linea tiempo
 
Clavicula
ClaviculaClavicula
Clavicula
 
La empresa
La empresa La empresa
La empresa
 
Little red riding hood from sd muh 18 surabaya
Little red riding hood from sd muh 18 surabayaLittle red riding hood from sd muh 18 surabaya
Little red riding hood from sd muh 18 surabaya
 
Evaluacion de historia mestizos.
Evaluacion de historia mestizos.Evaluacion de historia mestizos.
Evaluacion de historia mestizos.
 
Production design
Production designProduction design
Production design
 
Antivirus presentacion nidya
Antivirus presentacion nidyaAntivirus presentacion nidya
Antivirus presentacion nidya
 
D. Nieto A. Barreno
D. Nieto A. BarrenoD. Nieto A. Barreno
D. Nieto A. Barreno
 
Relationship ruts
Relationship rutsRelationship ruts
Relationship ruts
 
Gorgon LNG Project - Overarching Approval Document (Ministerial 800)
Gorgon LNG Project - Overarching Approval Document (Ministerial 800)Gorgon LNG Project - Overarching Approval Document (Ministerial 800)
Gorgon LNG Project - Overarching Approval Document (Ministerial 800)
 
Adv20001 kwankingpeatleywarburton group-project
Adv20001 kwankingpeatleywarburton group-projectAdv20001 kwankingpeatleywarburton group-project
Adv20001 kwankingpeatleywarburton group-project
 
La Empresa
La EmpresaLa Empresa
La Empresa
 
Cuestionariomedicoxango
Cuestionariomedicoxango Cuestionariomedicoxango
Cuestionariomedicoxango
 
Las vitaminas y el sistema inmune
Las vitaminas y el sistema inmuneLas vitaminas y el sistema inmune
Las vitaminas y el sistema inmune
 
Exposición A.barreno d.nieto
Exposición A.barreno d.nietoExposición A.barreno d.nieto
Exposición A.barreno d.nieto
 
Porfirio diaz
Porfirio diazPorfirio diaz
Porfirio diaz
 
El corazon humano
El corazon humanoEl corazon humano
El corazon humano
 
Exposición
ExposiciónExposición
Exposición
 
Investigation of heavy metals content (Cd , Ni and Pb) in the muscle tissue o...
Investigation of heavy metals content (Cd , Ni and Pb) in the muscle tissue o...Investigation of heavy metals content (Cd , Ni and Pb) in the muscle tissue o...
Investigation of heavy metals content (Cd , Ni and Pb) in the muscle tissue o...
 

Similar a Seguridad en aplicaciones web por Diego Rostagnol de Hexa GUG agosto 2013

Graphic otp generator ultra light 3.2.2_sharpmindsoftware
Graphic otp generator ultra light 3.2.2_sharpmindsoftwareGraphic otp generator ultra light 3.2.2_sharpmindsoftware
Graphic otp generator ultra light 3.2.2_sharpmindsoftware
amaulini
 
Control de acceso al sistema operativo
Control de acceso al sistema operativoControl de acceso al sistema operativo
Control de acceso al sistema operativo
Galindo Urzagaste
 

Similar a Seguridad en aplicaciones web por Diego Rostagnol de Hexa GUG agosto 2013 (20)

Presentación sso con cas
Presentación sso con casPresentación sso con cas
Presentación sso con cas
 
GFI - Seguridad en tus APIs
GFI - Seguridad en tus APIsGFI - Seguridad en tus APIs
GFI - Seguridad en tus APIs
 
Seguridad en las apis desde un punto de vista de developer
Seguridad en las apis desde un punto de vista de developerSeguridad en las apis desde un punto de vista de developer
Seguridad en las apis desde un punto de vista de developer
 
AWS Summits América Latina 2015-Mejores Prácticas de Seguridad para IAM (Iden...
AWS Summits América Latina 2015-Mejores Prácticas de Seguridad para IAM (Iden...AWS Summits América Latina 2015-Mejores Prácticas de Seguridad para IAM (Iden...
AWS Summits América Latina 2015-Mejores Prácticas de Seguridad para IAM (Iden...
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"
 
Graphic otp generator ultra light 3.2.2_sharpmindsoftware
Graphic otp generator ultra light 3.2.2_sharpmindsoftwareGraphic otp generator ultra light 3.2.2_sharpmindsoftware
Graphic otp generator ultra light 3.2.2_sharpmindsoftware
 
Secure Development, Seguridad al Codificar
Secure Development, Seguridad al CodificarSecure Development, Seguridad al Codificar
Secure Development, Seguridad al Codificar
 
Los 7 pecados del Desarrollo Web
Los 7 pecados del Desarrollo WebLos 7 pecados del Desarrollo Web
Los 7 pecados del Desarrollo Web
 
Gestión de Identidades y Control de Acceso en los Servicios usando WSO2 Ident...
Gestión de Identidades y Control de Acceso en los Servicios usando WSO2 Ident...Gestión de Identidades y Control de Acceso en los Servicios usando WSO2 Ident...
Gestión de Identidades y Control de Acceso en los Servicios usando WSO2 Ident...
 
Sitios blindados de SharePoint
Sitios blindados de SharePointSitios blindados de SharePoint
Sitios blindados de SharePoint
 
Seguridad web
Seguridad webSeguridad web
Seguridad web
 
Aplicaciones Web Seguras (Anti-SQLi)
Aplicaciones Web Seguras (Anti-SQLi)Aplicaciones Web Seguras (Anti-SQLi)
Aplicaciones Web Seguras (Anti-SQLi)
 
La Identidad Digital Unica En La Empresa, ¿Utopia o Realidad?
La Identidad Digital Unica En La Empresa, ¿Utopia o Realidad?La Identidad Digital Unica En La Empresa, ¿Utopia o Realidad?
La Identidad Digital Unica En La Empresa, ¿Utopia o Realidad?
 
Temas owasp
Temas owaspTemas owasp
Temas owasp
 
Seguridad en Aplicaciones Web y Comercio Electrónico
Seguridad en Aplicaciones Web y Comercio ElectrónicoSeguridad en Aplicaciones Web y Comercio Electrónico
Seguridad en Aplicaciones Web y Comercio Electrónico
 
OAuth 2.0 (Spanish)
OAuth 2.0 (Spanish)OAuth 2.0 (Spanish)
OAuth 2.0 (Spanish)
 
Control de acceso al sistema operativo
Control de acceso al sistema operativoControl de acceso al sistema operativo
Control de acceso al sistema operativo
 
SERVIDOR IIS EN W8
SERVIDOR IIS EN W8SERVIDOR IIS EN W8
SERVIDOR IIS EN W8
 
Qué es eso de OAuth y como se implementa en Symfony2 (y otros)
Qué es eso de OAuth y como se implementa en Symfony2 (y otros)Qué es eso de OAuth y como se implementa en Symfony2 (y otros)
Qué es eso de OAuth y como se implementa en Symfony2 (y otros)
 
DNIe en tu Active Directory
DNIe en tu Active DirectoryDNIe en tu Active Directory
DNIe en tu Active Directory
 

Último

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
FagnerLisboa3
 

Último (11)

Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 

Seguridad en aplicaciones web por Diego Rostagnol de Hexa GUG agosto 2013

  • 1. Generando Aplicaciones Seguras conGenerando Aplicaciones Seguras con GeneXusGeneXus Diego Rostagnol - PedidosYADiego Rostagnol - PedidosYA
  • 3. Autenticación != Autorización  Autenticación: Es el proceso por el cual demostramos que somos quienes decimos ser.  Autorización: Se produce despues de la Autenticación y es el proceso por el cual obtenemos o no permisos para efectuar una determinada acción.
  • 4. ¿ Que implica? • Crear un manejo de permisos de usuarios de mi sistema. • Evitar que personas no autorizadas puedan autenticarse ante mi aplicación. • Asegurar que los usuarios accedan solamente a los datos que que están autorizados a manipular.
  • 5. Errores comunes • No controlar que exista un usuario logueado en todas las pantallas de la aplicación • No validar los roles en cada pantalla • Confiar en que el usuario llega a las pantallas de mi aplicación siguiendo los links en ella. • No usar las Transacciones como parte de mi aplicación pero dejarlas accesibles. • Dejar los prompts automaticos sin seguridad • Poner el código del usuario logueado en el form o pasarlo por parametro • Dejar disponible en producción el archivo DeveloperMenu.xml
  • 6. Consideraciones • No se puede confiar en las validaciones que ejecutan del lado del cliente. (Browser). •Las validaciones de los datos ingresados se deben hacer del lado del servidor. •Propiedades Visible y Enabled no aseguran que el valor de las variables o atributos no sea modificado.
  • 7. • Aplicaciones para Smart Devices • Compuesta por una parte nativa en el Dispositivo que se alimenta de servicios REST alojados en un Servidor Web. • Servicios REST: http://.../higueron/servlet/rest/cliente/ Transacción 1 Clave Nuevos Problemas de Seguridad en EVO2
  • 8. {"Cliente":{"CliId":129,"CliNom":"Rodolfo","CliNac":"1976-08-5"}} • JSON • REST Usa operaciones del protocolo HTTP (GET, PUT, POST, DELETE) • Los servicios se generan cuando la Trn se expone como WS REST en una App SD (Ej: Al aplicar WWSD a una TRN) • Hay que poner reglas que hagan las comprobaciones de autenticación y autorización. Nuevos Problemas de Seguridad en EVO2
  • 9. ¿Como nos ayuda GeneXus? • Encriptación de parametros (SiteKey y SessionKey). • GAM !! • Se encarga de prevenir automáticamente ataques de tipo "SQL Injection".
  • 10. Buenas practicas • Usar MD5, SHA1 o similar para la encriptación de contraseñas (algoritmos de reducción criptográficos). • NUNCA pasar identificadores de usuario por parámetro • ??????