viernes, 3 de junio de 2016

Congreso Clic 2016





Universidad Gerardo Barrios 

Cátedra: Compiladores e interprete

Catedrático: Ing. Marvin Osmaro Parada

Nombre: Rene Mauricio Ramirez Arevalo

Código: USIS044910







Primer ponencia "Hackeo Etico" a cargo de Rodolfo Ceceña
BackTrack Academy de Mexico.


Constantemente estamos hablando de vulnerabilidades y exploits en las noticias sobre seguridad informática, pero para muchos usuarios tal vez aún sean conceptos difíciles de entender. Es por eso que hemos decidido escribir este artículo y aclarar cualquier atisbo de duda que pudiera haber en este aspecto.

Las definiciones habituales hablan de un programa o código que se aprovecha de un agujero de seguridad (vulnerabilidad) en una aplicación o sistema, de forma que un atacante podría usarla en su beneficio.Trasladado a la vida real, sería como si un modelo de cerradura (sistema o aplicación) tuviera un fallo de diseño que nos permitiera crear llaves que la abrieran (exploit) y poder así acceder al sitio que trata de proteger y realizar actos delictivos (malware).

Seguridad informática que proporciona información acerca de vulnerabilidades de seguridad y ayuda en tests de penetración "Pentesting" y el desarrollo de firmas para sistemas de detección de intrusos.
Su subproyecto más conocido es el Metasploit Framework, una herramienta para desarrollar y ejecutar exploits contra una máquina remota. Otros subproyectos importantes son la base de datos de opcodes códigos de operación, un archivo de shellcodes, e investigación sobre seguridad. Inicialmente fue creado utilizando el lenguaje de programación de scripting Perl, aunque actualmente el Metasploit Framework ha sido escrito de nuevo completamente en el lenguaje.

Forma principal de inyección de código SQL consiste en la inserción directa de código en variables especificadas por el usuario que se concatenan con comandos SQL y se ejecutan. Existe un ataque menos directo que inyecta código dañino en cadenas que están destinadas a almacenarse en una tabla o como metadatos. Cuando las cadenas almacenadas se concatenan posteriormente en un comando SQL dinámico, se ejecuta el código dañino.



La inyección de SQL parece haber desaparecido de la prominencia últimamente y se ha convertido en sólo una palabra de moda. Para hacer las cosas un poco más real que armar una rápida demostración de que, para demostrar que no necesariamente tiene que salir de su manera de hacer que su aplicación web explotable.








Segunda ponencia "firma electrónica y la ley contra delitos informáticos" Lic. Salvador Manzanares Ing. Rafael Ibarra y Licda, Flor de Maria Barraza.


La propuesta de ley fue presentada al órgano legislativo en octubre de 2012 por el Ministerio de Economía, como parte de un conjunto de reformas y de nuevas leyes orientadas a mejorar el clima de inversión en el país Reformas a la Ley de Servicios Internacionales, Reformas a la ley de Zonas Francas, Ley MYPE, Ley de Asocios Público Privados, Ley de Estabilidad Jurídica, entre otras.

La Ley de Delitos Informáticos reza en el artículo 24. El que haciendo uso de las tecnologías de la Información y la Comunicación difunda información, imágenes, audios, videos o cualquier medio cuyo contenido cause perjuicio o dañe la dignidad, el honor, ponga en peligro la integridad física y moral de una persona, será sancionado con prisión de tres a cinco años.




Tercera ponencia "Animación 3D Comercial ¿Como trabaja un animador FreeLancer en Centroamérica? Casos de éxito, Guillaume Lebourg, Frances.



La animación digital y videojuegos en 2D y 3D de calidad mundial han puesto a Guatemala en camino hacia el liderazgo en Centroamérica en la elaboración de estos programas, informaron ayer fuentes empresariales.
Un estudio que involucra el Comité de Industria Creativa (Icrea), entre otros organismo, diseñó las líneas de trabajo para que en cinco años el sector de animación digital y videojuegos de Guatemala se convierta en un grupo organizado y líder regional en la generación de contenidos 2D y 3D de calidad mundial.


Los participantes recibirán capacitaciones en seis módulos en áreas como producción, diseño, pintura digital, animación 3D, animación de personajes, composición y edición. Estos conocimientos, se espera, sirvan para su inserción laboral en el ámbito de animación digital a nivel nacional e internacional. El proyecto también contempla la lineación de los mejores estudiantes para que sean formadores, con lo que se pretende la continuidad del proyecto.




El estudio reveló que Guatemala cuenta con unas 140 empresas audiovisuales que generan 1,000 empleos directos e indirectos, y que el sector exporta un promedio de 800,000 dólares anuales a mercados como Estados Unidos, Canadá, Latinoamérica y Europa.






Ponencia 4 "loT: La nueva era de la inteligencia de negocios", Ing. Miguel Osegueda, Microsoft El Salvador.



Microsoft ofrece inteligencia de negocios BI y apoyo en decisiones clínicas a través de su suite empresarial de sus soluciones de inteligencia de negocios y de gestión de información, incluyendo Microsoft SQL Server, Microsoft Office SharePoint Server y Microsoft Amalga con la flexibilidad para implementarse en sus instalaciones o en la nube. Para ayudar a su organización a mantenerse al corriente de la creciente demanda de BI las soluciones de Microsoft proporcionan al personal clínico acceso a recursos de datos y la capacidad de analizar los datos en un ámbito familiar, al mismo tiempo que se asegura de que su departamento de ICT tenga la capacidad de monitorear acciones y mantener el control, lo cual habilita el auto servicio de BI sin ningún riesgo.




Microsoft SQL Server

SQL Server proporciona una plataforma de Inteligencia de negocios escalable y optimizada para integración de datos, generación de informes y análisis, con lo que le dan a las organizaciones la posibilidad de proporcionar inteligencia donde los usuarios la quieran. La funcionalidad de BI de autoservicio ofrece capacidades potentes a los usuarios y alivia la carga de trabajo del personal de TI. Las herramientas de BI son fáciles de aprender y utilizar debido a su estilo familiar.

Microsoft SharePoint
Microsoft SharePoint 2010proporciona una solución integral de análisis y creación de reportes : un conjunto completo de características, una experiencia de usuario familiar y una sola consola de administración y gestión. Con un control centralizado del sistema, usted puede ahorrar tiempo y esfuerzo. Podrá ser más eficiente usando capacidades de programación enriquecidas y herramientas de desarrollo para implementar soluciones que satisfagan las necesidades específicas de su organización de salud.






Ponencia 5 "Automatización de salas" Por Jairo Roman Gomez Chicas, AdvanxSys. 



Con equipamiento de la marca Crestron e Ingenieros Certificados en el diseño y configuración de la programación de sus componentes, brindamos la solución a los problemas de integración de las tecnologías de videoconferencia, audio, video, iluminación, aire acondicionado y más, con la finalidad de mejorar la calidad de vida en:
  • Salas ejecutivas o de juntas.
  • Salas multimedia.
  • Salas de videoconferencia.
  • Auditorios en corporativos, escuelas y universidades.
  • Aulas inteligentes.


Con la automatización simplificamos el manejo de la tecnología, creando interfaces y escenarios de acuerdo a las necesidades de cada cliente, convirtiendo complejos manejos de operación de muchos equipos con muchos controles remotos o fijos, en sencillas y rápidas secuencias de operación desde una interfaz de usuario local como es una pantalla sensible al tacto o de manera remota a través de una página web en Internet o interfaces para móviles como Iphones o Ipads, en ambos casos ya sea local o remota se diseña con gráficos intuitivos y sencillos para el usuario, ofreciendo así al mercado corporativo y educativo, soluciones de control y administración centralizada y sencilla del equipamiento de cada espacio requerido.





Ponencia 6 "Experiencia en el desarrollo de software para el sector aeronautico". Caso AVIANCA. Max Frank Rodriguez H. Gerente de Desarrollo Tecnologias Microsoft.

“Experiencias en el desarrollo de software para el sector aeronáutico” fue el tema de la conferencia que impartió este 14 de julio la colombiana Juliana Ceballos, encargada del área de  arquitectura y desarrollo de software de Avianca Holdings S.A. en la Facultad de Ingeniería y Arquitectura de la Universidad de El Salvador.
La actividad fue organizada por estudiantes de Ing. Eléctrica, que forman parte del Instituto mundial de Ingenieros en Electricidad y Electrónica  y ramas afines .


Unidad 4 - 5

Análisis Semántico


Contenido

         Dar a conocer las fases del análisis semántico.
Enseñar la especificación semántica de un lenguaje de programación.

Definición

Semántica de un lenguaje de programación es el conjunto de reglas que especifican el significado de cualquier sentencia sintácticamente válida.


Análisis Semántico

Es la etapa que procesa la información adicional necesaria para el procesamiento de un lenguaje, una vez que la estructura sintáctica de un programa haya sido obtenida
Un analizador semántico comprueba que un
analizador sintáctico es semánticamente válido.
Además genera un árbol semántico o etiquetado.

Análisis semántico

Ø Se trata de determinar el tipo de los resultados intermedios, comprobar que los argumentos que tiene un operador pertenecen al conjunto de los operadores posibles, y si son compatibles entre sí, etc. En definitiva, comprobará que el significado de lo que se va leyendo es válido.


Análisis semántico

1.         El análisis semántico se realiza posteriormente al sintáctico y mucho difícil de formalizar éste.

UNIDAD #5


Lenguajes intermedios, definición y tipos
Optimización dependiente e independiente de la maquina
Generador de código



LA MÁQUINA
Según el modelo de arquitectura de un compilador en el que éste se divide en frontend y backend, la etapa inicial traduce el programa fuente a una representación intermedia a partir de la cual la etapa final genera el código objeto, ya sea en forma de código máquina o ensamblador.
INDEPENDENCIA DE LA MÁQUINA
La construcción del lenguaje objeto en la etapa final, facilita la reutilización del frontend para crear otros compiladores del mismo lenguaje pero que generan código para otras plataformas.
INDEPENDENCIA DE LA MÁQUINA
La división en etapas se realiza utilizando un código intermedio independiente de la máquina destino.
El programa en código intermedio resultante es la salida de la etapa frontend y la entrada al backend
A QUÉ LE LLAMAMOS CÓDIGO INTERMEDIO?
El código intermedio es una simplificación de los lenguajes de alto nivel en la que se
elimina las estructuras y las declaraciones y con sentencias cercanas al ensamblador.

PARA QUE LO UTILIZAMOS?
El código intermedio se utiliza en un compilador por las siguientes razones:
1.     Es mas fácil hacer la conversión en dos fases.
2.     Independiza el analizador sintáctico del resto del compilador.
Es mas sencillo aplicar la optimización sobre instrucciones independientes del hardware que sobre instrucciones dependientes.
A QUÉ LE LLAMAMOS LENGUAJE INTERMEDIO?
Los    lenguajes intermedios  son    representaciones abstractas de un leguaje fuente.
Algunas representaciones obsoletas o en desuso son los árboles sintácticos.
Actualmente se utilizan como código intermedio las cuádruplas.
A QUE SE REFIERE EL USO DE CUÁDRUPLAS?
Tipos de cuádruplas:
Cuartetos o código de tres direcciones
(OPERADOR, operando1, operando2, resultado)
Tercetos o código de dos direcciones.
(OPERADOR, operando1, operando2)

CÓDIGO INTERMEDIO
CÓDIGO INTERMEDIO
Se genera código ensamblador