11 research outputs found

    STALlion: a simple typed assembly language for static analysis

    Get PDF
    Typed assembly languages have the goal of providing security guarantees, for example, for the limited use of resources in a host machine or the detection of autoupdate code. This work presents a simple typed assembly language which allows us to perform various kinds of static analysis tasks with the purpose of detecting flaws in the code security. The security policy we use guarantees type and memory safety. Moreover, wa can ensure that non-initialized variables are not read, and that there is no out-of-bound array accesses. The language we present, called STALlion, was designed in order to interpret a particular kind of imperative programs, more specifically abstract syntax tree.Eje: I - Workshop de Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Entorno de Código Móvil Seguro

    Get PDF
    En este trabajo se presenta la línea Código Móvil Seguro del grupo de investigación “Procesadores de Lenguajes” del Departamento de Computación de la Universidad Nacional de Río Cuarto. Se presenta una técnica para garantizar código móvil seguro, denominada Proof-Carrying Code based on Static Analysis (PCC-SA), cuya principal ventaja es que el tamaño de las pruebas generadas es lineal respecto a la longitud de los programas. A fin de demostrar la aplicabilidad de esta técnica, se han implementado prototipos de un compilador certificante y un verificador de codigo basados en ella. En este trabajo también se presentan nuevas lineas de trabajo iniciadas, entre las cuales se destacan la extensión del prototipo de compilador certificante, la paralelización de PCC-SA y un modelo de seguridad para programas concurrentes.Eje: Programacion, LenguajesRed de Universidades con Carreras en Informática (RedUNCI

    Entorno de Código Móvil Seguro

    Get PDF
    En este trabajo se presenta la línea Código Móvil Seguro del grupo de investigación “Procesadores de Lenguajes” del Departamento de Computación de la Universidad Nacional de Río Cuarto. Se presenta una técnica para garantizar código móvil seguro, denominada Proof-Carrying Code based on Static Analysis (PCC-SA), cuya principal ventaja es que el tamaño de las pruebas generadas es lineal respecto a la longitud de los programas. A fin de demostrar la aplicabilidad de esta técnica, se han implementado prototipos de un compilador certificante y un verificador de codigo basados en ella. En este trabajo también se presentan nuevas lineas de trabajo iniciadas, entre las cuales se destacan la extensión del prototipo de compilador certificante, la paralelización de PCC-SA y un modelo de seguridad para programas concurrentes.Eje: Programacion, LenguajesRed de Universidades con Carreras en Informática (RedUNCI

    Avances en la línea de investigación sobre PCC del grupo de procesadores de lenguajes y métodos formales de la UNRC

    Get PDF
    En este trabajo se presenta una de las líneas del grupo de investigación “Procesadores de Lenguajes y Métodos Formales”, perteneciente al Departamento de Computación de la UNRC. El aspecto fundamental de dicha línea es la creación de un framework para proponer soluciones alternativas que contribuyan al logro de técnicas de generación y ejecución eficiente de Código Móvil Seguro. Se presenta a C-Metric, una herramienta para medir métricas sobre programas C. C-Metric cuenta con un analizador sintáctico y semántico de programas C, que genera un árbol sintáctico abstracto sobre el cual se evaluan las diferentes métricas. La construcción de dicho árbol contempla todo el proceso a que somete al programa fuente el entorno de compilación C (preprocesador, bibliotecas estándar, etc).Eje: Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Avances en la línea de investigación sobre PCC del grupo de procesadores de lenguajes y métodos formales de la UNRC

    Get PDF
    En este trabajo se presenta una de las líneas del grupo de investigación “Procesadores de Lenguajes y Métodos Formales”, perteneciente al Departamento de Computación de la UNRC. El aspecto fundamental de dicha línea es la creación de un framework para proponer soluciones alternativas que contribuyan al logro de técnicas de generación y ejecución eficiente de Código Móvil Seguro. Se presenta a C-Metric, una herramienta para medir métricas sobre programas C. C-Metric cuenta con un analizador sintáctico y semántico de programas C, que genera un árbol sintáctico abstracto sobre el cual se evaluan las diferentes métricas. La construcción de dicho árbol contempla todo el proceso a que somete al programa fuente el entorno de compilación C (preprocesador, bibliotecas estándar, etc).Eje: Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Secure mobile code and control flow analysis

    Get PDF
    The interaction between software systems by means of mobile code is a powerful and truly effective method, particularly useful for installing and executing code dynamically. However, for this mechanism to be applicable safely, especially in industrial or critical applications, techniques that guarantee foreign code execution safety for the consumer or host will be necessary. Of course, tool support for automating, at least partially, the application of these techniques is essential. The importance of guarantee code execution safety originates numerous active research lines, among which Proof-Carrying Code (PCC) is one of the most successful. One of the problems to overcome for the PCC industrial use is to obtain lineal methods of safeness certification and verification. A framework for the generation and execution of safe mobile code based on PCC together with techniques for static analysis of control and data-flow, called PCC-SA, was developed later by the authors. The results of the group that allowed proving the hypothesis that the PCC-SA complexity in practice is lineal respect to the input programs length, as for certification as for verification processes are also presented. To achieve this, a C-program family, whose elements are referred to as lineally annotative, is defined. Parameters statically measured over their source code determine whether a program belongs to this family or not. Different properties of this family are demonstrated in this work, which allows formally showing that for all the programs of this family, the PCC-SA presents a lineal behavior. The parameters required for a large sample of programs keeping of standard packages, are calculated. This calculation finally determines that all the programs of the sample are lineally annotative, which validates the hypothesis previously stated.Red de Universidades con Carreras en Informática (RedUNCI

    STALlion: a simple typed assembly language for static analysis

    Get PDF
    Typed assembly languages have the goal of providing security guarantees, for example, for the limited use of resources in a host machine or the detection of autoupdate code. This work presents a simple typed assembly language which allows us to perform various kinds of static analysis tasks with the purpose of detecting flaws in the code security. The security policy we use guarantees type and memory safety. Moreover, wa can ensure that non-initialized variables are not read, and that there is no out-of-bound array accesses. The language we present, called STALlion, was designed in order to interpret a particular kind of imperative programs, more specifically abstract syntax tree.Eje: I - Workshop de Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Secure mobile code and control flow analysis

    Get PDF
    The interaction between software systems by means of mobile code is a powerful and truly effective method, particularly useful for installing and executing code dynamically. However, for this mechanism to be applicable safely, especially in industrial or critical applications, techniques that guarantee foreign code execution safety for the consumer or host will be necessary. Of course, tool support for automating, at least partially, the application of these techniques is essential. The importance of guarantee code execution safety originates numerous active research lines, among which Proof-Carrying Code (PCC) is one of the most successful. One of the problems to overcome for the PCC industrial use is to obtain lineal methods of safeness certification and verification. A framework for the generation and execution of safe mobile code based on PCC together with techniques for static analysis of control and data-flow, called PCC-SA, was developed later by the authors. The results of the group that allowed proving the hypothesis that the PCC-SA complexity in practice is lineal respect to the input programs length, as for certification as for verification processes are also presented. To achieve this, a C-program family, whose elements are referred to as lineally annotative, is defined. Parameters statically measured over their source code determine whether a program belongs to this family or not. Different properties of this family are demonstrated in this work, which allows formally showing that for all the programs of this family, the PCC-SA presents a lineal behavior. The parameters required for a large sample of programs keeping of standard packages, are calculated. This calculation finally determines that all the programs of the sample are lineally annotative, which validates the hypothesis previously stated.Red de Universidades con Carreras en Informática (RedUNCI

    Optimización del prototipo del entorno de ejecución de PCC-SA

    Get PDF
    Proof-Carrying Code based on Static Analysis (PCC-SA) es un entorno de ejecución de código móvil seguro. PCC-SA combina Proof-Carrying Code (PCC) y análisis estático con el fin de proporcionar una solución en aquellos casos en los cuales la política de seguridad no puede ser verificada eficientemente por un sistema de tipos formal, como es el caso de verificar inicialización de variables y accesos válidos a arreglos. PCC-SA utiliza un código intermedio de alto nivel, un árbol sintáctico abstracto (ASA) anotado con información de tipos. Este tipo de representación intermedia permite realizar diversos análisis estáticos para generar y verificar la información necesaria, y gran cantidad de optimizaciones al código generado. La principal ventaja de esta técnica reside en que el tamaño de la prueba generada es lineal con respecto al tamaño de los programas. Además, la complejidad de la generación de las anotaciones y la verificación de la seguridad del código también es lineal con respecto al tamaño de los programas. En este trabajo se presenta el diseño de las optimizaciones del prototipo de PCCSA (desarrollado originalmente con el solo fin de probar la factibilidad de PCC-SA). La meta de estas actividades es realizar un primer paso hacia la obtención de un ambiente de ejecución de código móvil seguro que pueda ser usado industrialmente.Eje: I - Workshop de Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Optimización del prototipo del entorno de ejecución de PCC-SA

    Get PDF
    Proof-Carrying Code based on Static Analysis (PCC-SA) es un entorno de ejecución de código móvil seguro. PCC-SA combina Proof-Carrying Code (PCC) y análisis estático con el fin de proporcionar una solución en aquellos casos en los cuales la política de seguridad no puede ser verificada eficientemente por un sistema de tipos formal, como es el caso de verificar inicialización de variables y accesos válidos a arreglos. PCC-SA utiliza un código intermedio de alto nivel, un árbol sintáctico abstracto (ASA) anotado con información de tipos. Este tipo de representación intermedia permite realizar diversos análisis estáticos para generar y verificar la información necesaria, y gran cantidad de optimizaciones al código generado. La principal ventaja de esta técnica reside en que el tamaño de la prueba generada es lineal con respecto al tamaño de los programas. Además, la complejidad de la generación de las anotaciones y la verificación de la seguridad del código también es lineal con respecto al tamaño de los programas. En este trabajo se presenta el diseño de las optimizaciones del prototipo de PCCSA (desarrollado originalmente con el solo fin de probar la factibilidad de PCC-SA). La meta de estas actividades es realizar un primer paso hacia la obtención de un ambiente de ejecución de código móvil seguro que pueda ser usado industrialmente.Eje: I - Workshop de Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI
    corecore