Compiladores y Análisis de Código
¿Qué es un compilador y cómo funciona?
Un compilador es un pequeño programa informático (software) que, a partir del código fuente de cualquier aplicación en desarrollo, analiza la sintaxis y la gramática para transformarlo en un lenguaje máquina. Este lenguaje puede ser comprendido, procesado o ejecutado por el equipo.
Básicamente, traduce el código fuente de un programa escrito en un lenguaje de alto nivel a un lenguaje de bajo nivel (lenguaje de máquina).
Funcionamiento:
- División: El código fuente se divide en unidades mínimas de información según la sintaxis del lenguaje (tokenización).
- Interpretación: Las unidades de información se interpretan según la gramática del lenguaje (parsing).
- Código objeto: Si todo es correcto, se genera un código objeto que el sistema operativo puede lanzar y ejecutar sobre la arquitectura objetivo.
Características de un buen compilador:
- Detectar errores y ayudar a resolverlos.
- Generar código eficiente para diferentes arquitecturas objeto.
- Ser capaz de ayudar a la paralelización de diferentes formas.
¿Qué tipos de análisis de código conoces y en qué se diferencian?
Existen diferentes guías que recopilan mejores prácticas para el desarrollo de aplicaciones seguras en diferentes lenguajes de programación:
- ISO: Programming languages – Guide for the Use of the Ada Programming Language in High Integrity Systems.
- MISRA: Guidelines for the use of the C language in critical systems.
- CERT: C Secure Coding Standard, Secure Coding in C and C++ y Oracle Secure Coding Standard for Java.
- OWASP: Secure Coding Practices Quick Reference Guide.
Amenazas Internas y Ciberseguridad
¿Qué es un Insider Threat? ¿Cómo pretende lidiar con esta amenaza un ITP?
Un Insider Threat o programa de amenazas internas surgió como respuesta del gobierno de EE. UU. a las masivas filtraciones de datos. No se trata solo de un programa escrito por ingenieros, sino que involucra a más personas para definir privilegios orientados a los datos.
Medidas para lidiar con las amenazas internas:
- Técnicas: Herramientas para clasificar documentos por niveles de seguridad, control de accesos y autenticación con grano fino, sistemas de logs y auditoría detallados, etc.
- Organizativas: Definición clara de roles y responsabilidades, ubicación de equipos y monitores, políticas de uso de medios de almacenamiento extraíble o BYOD (Bring Your Own Device), etc.
- Recursos humanos: Control de horarios, planes de concienciación, formación, incentivos, etc.
¿Qué es el phishing y qué pretende? ¿Qué tipos específicos de phishing conoces?
El phishing es una técnica de ingeniería social utilizada por ciberdelincuentes para engañar a las personas y conseguir que revelen información personal. Esto se logra mediante el envío de correos electrónicos fraudulentos o dirigiendo a la víctima a un sitio web falso, muy similares a los de instituciones de prestigio. El objetivo es obtener contraseñas, datos de tarjetas de crédito, seguridad social y números de cuentas bancarias.
Tipos de phishing:
- Spear phishing: Se envía un correo electrónico, aparentemente de una fuente confiable, que dirige al destinatario a un sitio web falso con gran cantidad de malware.
- Whaling phishing: Se utilizan métodos como la suplantación de sitios web y correos electrónicos para engañar a la víctima y hacer que revele información confidencial o realice transferencias de dinero. Se utiliza para engañar a altos ejecutivos de empresas.
¿Qué es un CIO o CISO y cuáles son sus principales responsabilidades?
Un CSO (Chief Security Officer) o CISO (Chief Information Security Officer) es el responsable de la ciberseguridad en una empresa. Su principal responsabilidad es definir políticas y procedimientos para gestionar el factor humano en la seguridad.
¿Qué es un Plan Director de Seguridad y cómo se define?
Un Plan Director de Seguridad define y prioriza proyectos de seguridad de la información para reducir los riesgos de una organización a niveles aceptables. Para definirlo, se debe evaluar la situación actual, la situación deseada (política de seguridad) y comparar ambas. Luego, se listan políticas, controles y contramedidas, se planifican proyectos de seguridad y se presentan a la administración para su aprobación. Finalmente, se ejecutan los proyectos y se evalúa la situación de forma continua.
¿Qué es una política de seguridad y para qué sirve? Explica qué partes la componen y menciona alguna típica que suelan tener definida casi todas las organizaciones.
Las políticas de seguridad son un conjunto de reglas, normas y protocolos que velan por la seguridad informática de una empresa. Deben ser fáciles de comprender y se utilizan para combatir los riesgos digitales.
Partes de una política de seguridad:
- Bloque 1: Estándares. Lectura obligatoria para todos, lenguaje asequible, evitar prohibiciones, frases cortas e instrucciones claras.
- Bloque 2: Procedimientos. Dirigido a los técnicos, con gran detalle.
- Bloque 3: Guías y mejores prácticas. Información dinámica, cómics, pegatinas, etc.
Las políticas de seguridad deben ser modificables y actualizadas. Una política típica es la Acceptable Use Policy (AUP), que define lo que la organización permite o no hacer a sus empleados.
¿Qué tipo de cibercriminales conoces según la tarea que realizan? ¿Qué tipos de modelos de negocio?
Tipos de cibercriminales:
- Coders: Desarrollan herramientas y exploits.
- Administradores de red: Proporcionan infraestructura para actividades ilegales.
- Kids: Jóvenes con conocimientos técnicos que buscan reconocimiento.
- Expertos en descubrimiento de vulnerabilidades, penetración e intrusiones: Buscan acceder a sistemas y robar información.
- Mob: Grupos organizados que se dedican al cibercrimen.
- Drop: Intermediarios que reciben y transfieren dinero robado.
- Especialistas en criptomonedas: Blanquean dinero utilizando criptomonedas.
Modelos de negocio del cibercrimen:
- Robo de números de tarjetas de crédito.
- Instalación de adware.
- Ransomware.
- Espionaje industrial.
- Venta de vulnerabilidades/exploits.
- Spam/phishing.
- Alquiler de botnets.
¿En qué consiste el cibercrimen como servicio y por qué está de actualidad? ¿Qué es un delito informático?
El cibercrimen como servicio se refiere a grupos de cibercriminales que ofrecen sus servicios a otros. Esto se debe a que es más barato comprar servicios que contratar a expertos para desarrollarlos.
Un delito informático es cualquier acción ilegal que se realiza a través de medios informáticos o que tiene como objetivo dañar ordenadores, dispositivos electrónicos o redes. Pueden dirigirse a equipos o redes (spam, malware o robo de información) o a través de Internet (fraude, espionaje, acoso o pornografía infantil).