Monografias.com > Computación > General
Descargar Imprimir Comentar Ver trabajos relacionados

Técnicas de protección de software basadas en hardware



Partes: 1, 2

    1. Resumen
    2. Técnicas
      de protección basadas en hardware
    3. Principales
      vulnerabilidades
    4. Conclusiones
    5. Trabajo
      futuro
    6. Referencias

    Resumen

    En los últimos tiempos el auge que ha alcanzado
    Internet ha
    propiciado el aumento de las publicaciones y del intercambio de
    información digital entre personas o
    entidades. Evidentemente estos elementos constituyen ventajas
    irrefutables, pero junto con toda esa información,
    también existe información publicada que posibilita
    a ciertas personas llevar a cabo acciones que
    no son del todo bien vistas. Por ejemplo, en Internet, existen
    los sitios dedicados a publicar la forma de explotar las
    vulnerabilidades y fallas de las aplicaciones; así como
    información acerca de cómo llevar a cabo procesos de
    ingeniería inversa a componentes
    ejecutables. A partir de toda esa información cualquier
    persona con
    malas intenciones puede llevar a cabo ataques con el fin de
    violar la integridad de las aplicaciones y obtener
    información sensible de las mismas.

    El presente trabajo tiene
    como intención dar a conocer algunos de los métodos y
    soluciones
    existentes para proteger las aflicciones contra este tipo de
    personas y así evitar que sean conocidos elementos
    confidenciales propios de la aplicación. Decir que las
    soluciones vistas en el trabajo son
    aquellas que utilizan algún tipo de dispositivo de
    hardware externo
    a la
    computadora, con el propósito de elevar la seguridad de las
    aplicaciones.

    1
    Introducción

    El creciente auge que ha alcanzado Internet, junto con
    el desarrollo de
    múltiples herramientas
    informáticas, ha posibilitado un aumento en el intercambio
    digital de información entre las personas. Además
    de la posibilidad de disponer de un gran cúmulo de
    información de variados temas en cualquier momento. Lo
    anteriormente expuesto indudablemente implica numerosas ventajas,
    aunque desafortunadamente existe información que
    posibilita a ciertas personas llevar a cabo acciones que no son
    del todo bien vistas. Esto se ve favorecido por el hecho de que
    en Internet es posible publicar información con relativa
    facilidad y con controles de seguridad prácticamente
    nulos; haciendo de Internet un lugar rico en información
    poco confiable u ofensiva.

    La idea anterior se fundamenta en el hecho de que, en
    Internet cada vez son más los sitios, pertenecientes a
    personas o grupo de
    ellas, dedicados a publicar la forma de explotar las
    vulnerabilidades y fallas de las aplicaciones [2, 3]. Por otra
    parte, se publica también información de
    cómo llevar a cabo procesos de ingeniería inversa a
    componentes ejecutables; proceso este
    que facilita la comprensión del funcionamiento de las
    aplicaciones, permitiendo violar su integridad y obtener
    información confidencial acerca de algoritmos
    empleados. Toda esta cantidad de información es utilizada,
    actualmente, por muchas personas para obtener beneficios propios
    por procedimientos
    ilícitos1.

    Es válido decir que para tratar de contrarrestar
    los efectos de estas violaciones, en los últimos tiempos
    han aumentado las investigaciones y
    desarrollos de métodos más sistemáticos,
    relacionados con las protecciones basadas en software y
    hardware.

    Innumerables han sido las propuestas desarrolladas que
    utilizan alguna técnica de software, con el objetivo de
    hacer menos comprensible el código
    de la aplicación o simplemente lograr que no sea visible
    mediante un proceso de ingeniería inversa. Para esto
    utilizan técnicas
    de ofuscación de código, criptográficas,
    marcas de
    agua, entre
    otras [4-9]. En teoría
    estas técnicas parecen ser efectivas, pero cuando son
    llevadas a la práctica chocan con que las computadoras
    actuales no son lo suficientemente confiables como para almacenar
    algún tipo de clave criptográfica, o ejecutar un
    código sin que este sea observado por un atacante. Por lo
    que, en la actualidad, existe una tendencia a utilizar un
    hardware externo a la computadora y
    así garantizar un medio no inseguro donde se puedan
    proteger los secretos de la aplicación[10-14]. Esto no
    quiere decir que las soluciones de software queden en el olvido,
    simplemente estas comienzan a complementarse con las de
    hardware.

    Luego de haber enunciado las situaciones anteriores se
    puede decir que el desarrollo seguro de
    aplicaciones se enfrenta a los siguientes problemas:

    1. Aumento de las herramientas capaces de violentar la
    integridad de las aplicaciones y decodificar sus componentes de
    seguridad.

    2. Los métodos actuales de protección
    basados en software no son lo suficientemente seguros como
    para proteger totalmente una aplicación.

    3. Las arquitecturas convencionales de hardware son
    medios
    inseguros para aplicaciones que requieran cierto grado de
    confidencialidad.

    El objetivo de este trabajo está orientado a dar
    a conocer algunos de los métodos y soluciones existentes,
    ya sean comerciales o en proceso de investigación, que utilizan algún
    tipo de dispositivo de hardware para elevar su seguridad. En este
    punto vale aclarar que no pretende decir que solución es
    mejor o peor, sino identificar las características
    más importantes de cada una de ellas, así como sus
    principales deficiencias. De forma tal que los desarrolladores de
    aplicaciones cuenten con una modesta aproximación de las
    tendencias actuales en este tema.

    1 Sin embargo muchas de estas acciones no están
    debidamente tipificadas como delitos en los
    códigos legales correspondientes.

    2 De inglés
    Advanced Encryption Standard (Estándar de Cifrado
    Avanzado)

    3 Del inglés Chip Operating System
    (COS)

    El resto del trabajo está estructurado de la
    siguiente forma. En la siguiente sección se
    describirán algunas de las técnicas que existen en
    la actualidad y las soluciones basadas en ellas, destacando sus
    principales fortalezas y debilidades; además de resaltar
    los componentes de hardware utilizados. En la sección 3 se
    exponen las principales vulnerabilidades a las que se enfrentan
    estas soluciones. En la sección 4 se dan las conclusiones
    del trabajo, para cerrar con la propuesta del trabajo
    futuro.

    Partes: 1, 2

    Página siguiente 

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter