Information about http://ardilla.zapto.org/software/p246.pdf

IEEE 5º Congreso Internacional en Innovaci…

Pages: 5
Language: spanish
Created: Fri Sep 14 15:53:11 2007
Display cached document
Page 1
image
Page 2
image
Page 3
image
Page 4
image
Page 5
image
                            IEEE 5º Congreso Internacional en Innovación y Desarrollo
                          Tecnológico, 10 al 12 de octubre de 2007, Cuernavaca, Morelos,
                                                     México
     MORELOS


                                  Estado de la seguridad en Web Services
                                                H. F. González Robledo
                                      Universidad Politécnica de San Luis Potosí
                                          San Luis Potosí, SLP, 78000 México




Resumen: En este trabajo se hace una revisión del               Introducción
estado de los estándares relacionados con la seguridad
en servicios web, enumerando los más importantes                Servicios Web
hasta ahora y su fecha de aceptación por los diferentes
organismos. También se mencionan algunos
documentos que aún están en revisión aunque ya se               Un Servicio Web es un sistema de software diseñado
esten implementando y que si son aprobados se                   para soportar la interoperabilidad e interacción de
convertirán en estándares también. Se visualiza que los         máquina a máquina sobre una red. Tiene una interfase
estándares se concentran en las capas de transporte,            descrita en un formato procesable por la máquina
mensaje y descripción, y solo un poco en                        (específicamente WSDL). Otros sistemas interactúan
procesamiento, pero aún quedan muchas amenazas y                con el Servicio Web de una manera pre especificada
quedan también más estándares por desarrollar. Se               por su descripción        usando mensajes SOAP,
propone al final cuatro formas de verificar la seguridad        generalmente transportados por HTTP con una
a los servicios web existentes o a los que están por            serialización de XML, en conjunto con otros estándares
desarrollarse. Estas verificaciones son viables y algunas       web. [1]
ya se han implementado en proteger aplicaciones web o               El funcionamiento de los servicios web se puede
aplicaciones tradicionales.                                     explicar con la siguiente figura:
Palabras clave: seguridad web, servicios web.


Abstract: In this work a revision is made of the state of
the standars for security in web services, enumerating
the most important of them until now and their date of
acceptance by the different organisms. Also some
documents are mentioned that still are under revision
and that if they are approved also become in standards.
One visualizes that the standards are concentrated in the
layers of transport, message and description, and a little
in processing, but still is left many threats, and there is
also more standards to develop. Finally sets out four
forms to check the security to the existing web services
or to which they are about to be developed. This cheks
are viable and some or them have been implemented in
web or traditional applications protection.
                                                                          Fig. 1 Funcionamiento de los Servicios Web
Keywords: web security, web services.



                                                              246                                                  Pag.   1
                                         5º Congreso Internacional en Innovación y Desarrollo Tecnológico,
                                            10 al 12 de octubre de 2007, Cuernavaca, Morelos., México



     Existen múltiples herramientas para el desarrollo            ·No repudio: Si soy un usuario autorizado, debo de
de Servicios Web y grandes compañías detrás de estas          poder tener acceso a la información.
herramientas, así como también existen múltiples
                                                                  ·Privacidad: Mis datos, registros, acciones no
estándares y propuestas para mejorar o implementar la
                                                              deben ser expuestos.
seguridad en ellos. Los organismos involucrados en
estandarizar esta tecnología son principalmente World              Estos conceptos se convierten en pilar de la
Wide Web Consortium (W3C)[2] , Organization for the           seguridad de la información, junto con buenas
Advancement of Stuctured Information Standars                 prácticas, listas de verificación, patrones y
OASIS[3]       y    Web     Services     Interoperability     recomendaciones, como lo muestra [8]. También se
Organization WS-I[4] , que forman grupos de trabajo           establece que la seguridad en el Software es un proceso
para tareas específicas y que pueden tomar las                que incluye todas las etapas de desarrollo, la
propuestas de la industria y luego de analizarlas             implementación e incluso el seguimiento durante la
deciden si se consideran estándares o no.                     vida del software.
    La importancia de los servicios web, radica en la              En este trabajo se citan las estándares,
gran utilización que la industria les ha dado, en el          recomendaciones, buenas prácticas, listas de
apoyo de grandes compañías y en la funcionalidad que          verificación y patrones que son relativos a la seguridad
estos proveen, sin embargo, algunos consideran que            en Servicios Web y se plantea una visión a futuro de lo
estos no serán completamente funcionales hasta que            que serán. Como se menciona en [9]: "Los estándares
sean "seguros".[5]                                            de seguridad para Servicios Web no son suficientes",
                                                              además se hace alusión a otros comentarios: "Los
Conceptos de Seguridad Informática
                                                              estándares no tratan en como prevenir ataques que
    La seguridad informática no es algo estático, es          vienen", dice Tony Baer, director de onStregies. "Los
algo que esta en constante evolución, es un estado            estándares son sobre como definir políticas. Son sobre
momentáneo.                                                   el intercambio de información"
     Los conceptos básicos sobre seguridad tratados en
[6] y [7] son :
                                                              Arquitectura de servicios web y estándares de
     Identificación,    Autenticación,     Autorización,      seguridad relacionados
Auditoria, Integridad, Confidencialidad, No repudio,
Privacidad. También se incluye el DRM (Digital Right          La arquitectura propuesta de los servicios web en el
Management en inglés) que no trataremos en este               último informe técnico del grupo de arquitectura de
trabajo, por no tener demasiada relación hasta la fecha.      servicios web de W3C es la siguiente:

    ·Identificación: Decir quien soy. Decir mi nombre.
    ·Autenticación: Probar que soy quien digo. Mostrar
una identificación.
     ·Autorización: Verificar que tengo permisos para
entrar o hacer algo.
    ·Auditoría: Es importante saber que ha estado
pasando, debe haber registro de quien entre y quien sale
y que hace.
    ·Integridad: Los datos no sean modificados por
usuarios no autorizados.
    ·Confidencialidad: Los datos solo son mostrados al
                                                                          Fig. 2 Arquitectura de los Servicios Web
usuario que tiene autorización.




                                                                                                                     Pag.   2
                                           5º Congreso Internacional en Innovación y Desarrollo Tecnológico,
                                              10 al 12 de octubre de 2007, Cuernavaca, Morelos., México



     Se destacan varias capas, como la de                            ·    Ataques a la aplicación (middleware)
comunicación, mensaje, descripción y proceso. Y en
esta versión la seguridad y el manejo se contemplan en               Ataques a nivel de aplicación o implementación
cada una de las capas.                                          final, como

     Es importante mencionar que existen estándares                       Alteración de parámetros
para el web que pueden ser utilizados para la seguridad                   Inyección Xpath
en servicios web, pero en algunos casos, como se
menciona en [9] SSL no es suficiente porque se refiere                    Inyección de SQL
a seguridad entre puntos de comunicación, no entre                        Condiciones de carrera
aplicaciones, además de que no se puede almacenar los
mensajes para demostrar su veracidad, no se puede dar                     Ataques de fuerza bruta
la auditoria, sobre todo porque las llaves utilizadas para                Inyección de código
el intercambio de información son temporales y
efímeras.
     Se han detectado ataques a diferentes capas, entre              Los servicios web requieren mucha granularidad
los más comunes están:                                          para ofrecer seguridad [10]. Necesitan mantener el
                                                                contexto seguro y controlado de acuerdo a sus políticas
                                                                de seguridad. Algunos puntos a tomarse en cuenta son:
    Capa de comunicaciones:                                     Diferencias entre comunicación entre extremos es
                                                                diferente a comunicación entre puntos, las capacidades
    ·    Ataques al protocolo encargado del transporte          de negociación entre los extremos no pueden ser
         de mensajes.                                           definidas hasta que estos interactúen, debe estar
    Capa de mensaje:                                            orientado fuertemente a infraestructura de llave pública,
                                                                el manejo de la seguridad deberá ser más robusto para
    ·    Alteración de mensajes                                 escalar el cómputo distribuido y que los intermediarios
                                                                hacen que la protección completa sea más difícil.
    ·    Confidencialidad
                                                                    Dentro de la granularidad, se han desarrollado
    ·    Descubrimiento de información                          estándares relacionados con las capas iniciales, de los
    ·    Ataque de hombre en medio                              cuales se comentan a continuación los que considero
                                                                más importantes:
    ·    Spoofing
    ·    Denegación de servicio
                                                                     WS-I Basic Security Profile 1.0. Entrega final el 30
    ·    Ataques de repetición de partes                             de Marzo de 2007.
    ·    Suplantación                                                W3C WS-Policy 1.5 Framework. Candidato a
                                                                     recomendación el 30 de Marzo de 2007.
    Capa de descripción:
                                                                     W3C WS-Policy 1.5 Attachment. Candidato a
    ·    Enumeración de servicios                                    recomendación el 30 de Marzo de 2007.
    ·    Denegación de Servicio                                      Liberty ID-WSF Security Mechanisms Core
    ·    Suplantación                                                Version v2.0-18. Proposal.

    Capa de procesamiento                                            OASIS WS-Security 1.0: Aprobado como estándar
                                                                     de OASIS en abril de 2004.
    ·    Ataques al Parser de XML
                                                                     OASIS WS-Security 1.1: Aprobado como estándar
    ·    Parameter overflow                                          de OASIS el 21 de Febrero de 2006.




                                                                                                                  Pag.   3
                                        5º Congreso Internacional en Innovación y Desarrollo Tecnológico,
                                           10 al 12 de octubre de 2007, Cuernavaca, Morelos., México



    OASIS SAML v 1.0: Aprobado como estándar                 Incluso empresas como Sun o Microsoft han liberado
    OASIS en Noviembre 2002.                                 herramientas para verificar la codificación del servicio
                                                             web desarrollado con su tecnología y asegurar cierto
    OASIS XACML v 2.0: Aprobado como estándar
                                                             grado de seguridad[17]
    OASIS en Febrero 2005.
    WS-I Reliable Secure Profile Usage Scenarios             Discusión
    version 1.0. Propuesta 6 Noviembre de 2006.
                                                             Una búsqueda en google con la opción: filetype: wsdl,
    W3C Usando XKMS con PGP. Nota del grupo el               para buscar archivos publicados en Internet de
    19 de Diciembre de 2005.                                 definición de servicios web, arrojó 37,100 archivos.
    W3C Descripción WSDL de XKMS. Nota del                   Esto es una muestra de que existe aceptación y uso de
    grupo el 18 de Noviembre de 2005.                        los mismos. Lo grave es que no todos cuentan con la
                                                             seguridad necesaria.
    W3C XKMS 2.0. Recomendación el 28 de Junio
    de 2005.                                                     Dentro de los estándares aceptados hasta ahora, el
                                                             esfuerzo se ha enfocado en asegurar la comunicación,
    W3C XML-Siganture XPath           Filter        2.0.     los mensajes, la descripción y parte del procesamiento.
    Recomendación 8 de Noviembre 2002.                       Aunque muchos de los ataques más críticos se ven en el
    W3C XML-Signature Syntax and Processing.                 software de soporte o en la aplicación y ocurren por
    Recomendación el 12 de Febrero de 2002.                  descuido o desconocimiento de los desarrolladores.
                                                                  Siguen existiendo amenazas que son atacadas en
                                                             diversas formas, desde firewalls y proxies hasta
     Los siguientes son propuestas que todavía están en      políticas de codificación. Las siguientes son cuatro
revisión y que están relacionadas con algunas                verificaciones para aventajar en la seguridad de los
anteriores:                                                  servicios web.
                                                                  1.   Asegurar los servicios web de manera general
    WS-Trust                                                           contra las principales amenazas, a manera de
                                                                       un firewall XML, un firewall de aplicación al
    WS-Privacy                                                         estilo mod_Security o un proxy de
                                                                       aplicaciones que limpien la información que
    WS-Secure Conversations
                                                                       va a recibir el servicio web. Protegiendo en el
    WS-Federation                                                      nivel        superior         al        servicio.
                                                                       Este es un intermediario que protege de forma
    WS-Authorization
                                                                       genérica y a manera de filtro los servicios web,
    WS-Services Security Policy                                        pudiendo ser aplicado para remediar los
                                                                       servicios que ya existen.
    WS-Realiability
                                                                  2.   Extender el software de soporte para servicios
    WS-Security Infraestructure
                                                                       web añadiendo protecciones y validaciones
    WS-Security Patterns                                               implícitas, añadiendo una capa de seguridad
                                                                       desde el interior de la aplicación.
     Los organismos han estado muy activos trabajando                  Esta es una forma de proteger servicios web
en estandarizar las propuestas de seguridad, y aunque                  existentes, además de facilitar el desarrollo
ya existen las especificaciones e incluso algunas                      futuro de más servicios. También ataca las
implementaciones en diferentes herramietas de las                      amenazas más comunes, protegiendo a nivel
últimas mencionadas, todavía no son consideradas                       superior.
estándares.
                                                                  3.   Asegurar el servicio web en específico.
                                                                       Realizando auditorias de código, auditorias de




                                                                                                                 Pag.   4
                                                  5º Congreso Internacional en Innovación y Desarrollo Tecnológico,
                                                      10 al 12 de octubre de 2007, Cuernavaca, Morelos., México



           arquitectura, atacando el servicio en busca de               [11] History-making components: Tracing the roots of components
                                                                             from OOP through WS. James Durham. Disponible en línea:
           vulnerabilidades. Realizar los procesos                           http://www-
           recomendables para el desarrollo de                               128.ibm.com/developerworks/webservices/library/co-tmline/,
           aplicaciones web y servicios web seguros. Esa                     citado el 19 de Abril de 2007.
           forma funciona para cada servicio web                        [12] Attacinkg and Defending Web Services: A Spire research
           desarrollado, y para los futuros, es costosa                      report. Lindstrom, Peter. Enero 2004.
           pero mantiene la independencia de los
                                                                        [13] Securing Web Services. M. Hondo, N. Nagaratnam & A.
           servicios. Se puede aplicar desde el desarrollo                   Nadalín. IBM Systems Journal No. 2, 2002.
           del servicio.
                                                                        [14] Web Services Security: Scenarios, Patterns and Implementation.
      4.   Desarrollar políticas, recomendaciones y                          Guidance for Web Service Enhancementes. Microsoft 2005.
           buenas prácticas internas, o adaptar las                     [15] Attacking Web Services. The next generation of vulnerable
           existentes a las necesidades propias, para                        Enterprice Applications. Alex Stamos, Scott Stender. Presentada
           desarrollar servicios web seguros, aparte de                      en Defcon XIII en las vegas 2006.
           utilizar los estándares existentes. Estas                    [16] Web Services Security:         Mark    O'Neill   et   al.   Ed.
           prácticas deben ser utilizadas por todos los                      McGrawHill/Osborne.
           desarrolladores.                                             [17] Secure Sessions for Web Services. Karthikeyan Bhargavan et al.
           Esta forma aplica para futuros desarrollos de                     ACM Transactios on Information and System Security, Vol. 10,
           servicios web, y no es excluyente de las                          No 2, Articulo 8, Fecha de publicación: Mayo 2007.
           anteriores, puede servir de complemento a
           futuro.
                                                                        Hugo Francisco González Robledo
Referencias                                                             Ingeniero en Sistemas Computacionales egresado del
[1]   Web servies Architecture, W3C Febrary 2004, Disponible en         Instituto Tecnológico de San Luis Potosí en 2000.
      línea: http://www.w3.org/TR/ws-arch/ citado el 27 de febrero de   Obtuvo el grado de Maestría en Ciencias en Ciencias de
      2007.                                                             la Computación en 2005 por el mismo instituto.
[2]   Sitio web de W3C. http://www.w3c.org                              Miembro fundador del Mexican Honeynet Project.
                                                                        Miembro profesional de la ACM. Durante unos años
[3]   Sitio web de OASIS. http://www.oasis-open.org
                                                                        fue el contacto para RENASEC (Red Nacional de
[4]   Sitio web de WS-I. http://www.ws-i.org                            Seguridad en Cómputo) región noreste en el ITSLP.
[5]   Securing Web Services. Salz, Rich. Disponible en línea:           Con certificación LPI nivel 1. Su experiencia gira en
      http://www.xml.com/pub/a/ws/2003/01/15/ends.html, citado el       torno al Software Libre y Seguridad Informática. Ha
      19 de Abril de 2007.                                              sido ponente en diversos foros internacionales.
[6]   Programming Web Services with Perl. Pavel Kulchenko &             Actualmente es asesor académico de la Universidad
      Randy J. Ray. Ed. O'reilly 2002.                                  Politécnica de San Luis Potosí.
[7]   Cerified Information Systems Security Professional, Study
      Guide. Ed Tittel, Miek Chapple & James Michael Stewart.
      Sybex 2003.                                                       Dirección del autor: Iturbide 140, Col Centro
[8]   Core Security Patterns: Best practice and strategies for J2EE,    Histórico, San Luis Potosí, S.L.P., cp 78000, México.
      Web Services identity Management. Christoper Steel, Ramesk
      Nagappm and Ray Lan. Prentice Hall PTR/Sun Microsystems           email:    hugo.gonzalez@upslp.edu.mx
      2005.
                                                                                  hugo@honeynet.org.mx
[9]   Web services security standars aren't enough. Dan Goodin.
      Revista Infoworl Noviembre 24 del 2006. Disponible en línea :
      http://www.infoworld.com/article/06/11/24/48FEwssecstand_1.
      html citado el 10 de Abril de 2007.
[10] Securing Web Services ­ Concepts, Standars, and
     Requirements, SUN White Paper, Octubre 2003. Shivaram
     Mysore.




                                                                                                                                    Pag.   5