Amenazas al Software
1. Origen de la Vulnerabilidad del Software
Errores de Instalación o Configuración: Pueden deberse a una mala documentación del software, falta de información o negligencias de quien lo instala.
Errores de Programación: Se les llama bugs. Un programa puede estar bien diseñado y aún así resultar vulnerable.
Retraso en la Publicación de Parches: Cuando los creadores del software detectan fallos de seguridad, crean parches para modificar la parte del código que es sensible a fallos de seguridad.
Descarga de Programas desde Fuentes Poco Fiables: Algunos programas pueden traer un código añadido de tipo promocional de sitios web y dan lugar a la instalación de pequeñas aplicaciones adicionales casi sin darnos cuenta, o incluso contener fragmentos de código malicioso que pueden poner en peligro la información.
1.2. Efectos de Ataques a Códigos Vulnerables
Un ataque puede afectar a la integridad, a la confidencialidad y a la disponibilidad. Los atacantes pueden:
- Obtener información sobre el sistema, equipos que lo componen, datos de usuarios, etc.
- Obtener, copiar o divulgar información restringida.
- Modificar o borrar datos.
- Impedir el acceso a la información por parte de usuarios con permiso de acceso.
2. Amenazas sobre el Software y la Información
2.1. Código Malicioso (Malware)
Según el modo en que se instalan y propagan, pueden ser:
- Virus: Código malicioso incrustado en el código normal de un programa anfitrión. Se propaga de un PC a otro, pero necesita la intervención humana. Puede afectar al funcionamiento del hardware, software y a las propiedades de la información.
- Gusano: No necesita la intervención humana, ya que se propaga de forma automática y no se alojan en ningún código. Se adueñan de los servicios encargados de transmitir datos para tomar su control.
- Troyano: Programa dañino con apariencia de software normal que puede ser una seria amenaza para la seguridad informática. Hay un subtipo llamado backdoor, un programa cliente-servidor que abre una puerta en el equipo cliente a través de la cual el servidor toma posesión del equipo como si fuese suyo.
- Bot Malicioso: Programa realizado con cualquier lenguaje de programación que pretende emular el comportamiento humano. Se instalan en los equipos vulnerables mediante el sistema de rastreo en internet. Una vez infectado, el bot envía una señal al creador y el equipo empieza a formar parte de una botnet. Las tareas que hace de forma automática y transparente pueden ser: enviar spam y virus, robar información privada, enviar órdenes de denegación de servicio a webs, hacer clic en anuncios publicitarios que pagan por cada clic.
- Spyware: Código malicioso que para instalarse necesita la participación de un virus o troyano. Busca obtener información acerca de los usuarios de un PC y aportar esos datos a empresas que, a partir de ese momento, enviarán publicidad al usuario sobre temas que supuestamente le interesan. Dado que pueden indagar en toda la información existente en el equipo, pueden ocasionar daños importantes. Sus efectos pueden ser la inutilización de algún software, la aparición de ventanas emergentes o la derivación desde una web legal a un clon ilegal de la misma.
- Virus de Macro: Subtipo de virus creado en modo macro que está inscrito en un documento. Si la víctima abre un documento infectado, la macro pasa a la biblioteca de macros de la aplicación que lo ejecute. Los resultados son de lo más variados: abrir un archivo nuevo, auto-enviar el documento por email, realizar cálculos matemáticos, etc.
2.2. Ingeniería Social
Consiste en obtener información a través de las personas que la manejan. Se basan en la tendencia humana a confiar y refuerzan la idea de que el ser humano es el eslabón más débil de la cadena. Suele llevarse a cabo por correo electrónico, con argumentos como:
- Cadenas: Correos que recomiendan el reenvío a un número determinado o no de contactos. El origen es de una persona interesada en obtener direcciones de correo para enviar spam o colapsar los servidores.
- Correos Millonarios: Apelan a la ambición humana por obtener dinero fácil, y el lucro se obtiene de las aportaciones de las víctimas que pretenden conseguir un falso premio.
- Phishing: Método de «pesca» de contraseñas con el fin de suplantar identidades. Se envía a la víctima un correo, por ejemplo, del director de la empresa pidiéndole que se conecte a la web bancaria para unas comprobaciones. La víctima pincha el enlace que en realidad es una web fraudulenta, un clon de la auténtica, y al escribir la contraseña ya han «pescado» esos datos.
2.3. Proceso de Hacking
- Decidir cuál va a ser la máquina objetivo de la infiltración.
- Obtener información acerca del sistema objetivo.
- Detectar las medidas de seguridad y las vulnerabilidades.
- Aprovechar esas vulnerabilidades.
- Hacerse con una cuenta de administrador.
- Conseguir mantener el acceso al sistema invadido.
- Trabajo prudente, metódico y minucioso.
2.4. Herramientas de Hacking
- Comandos del sistema operativo.
- Herramientas para escanear redes y sistemas.
- Herramientas para manipular redes cableadas o inalámbricas.
- Herramientas de auditoría de sistemas para detectar vulnerabilidades.
- Herramientas de rastreo de páginas web.
- Herramientas de ataque.
Comandos:
- Ping: Comprueba el estado de la conexión del host local con uno o varios equipos remotos por medio del envío de paquetes ICMP de solicitud y respuesta.
- Ipconfig: Muestra los valores de configuración de red TCP/IP actuales.
- Tracert: Permite seguir la pista de los paquetes que van de un host a otro.
- Nslookup: Se usa para saber si el DNS está resolviendo correctamente los nombres y las IP.
- Netstat: Muestra un listado de las conexiones activas de un PC, tanto entrantes como salientes.
- Net: Permite manejar recursos de la red, crear, borrar y configurar cuentas, mapear discos, ver los ordenadores de la red, etc.
- Nbtstat: Muestra las estadísticas del protocolo y las conexiones de TCP/IP usando NBT.
- Regedit: Permite acceder al registro de Windows.
- Arp: Muestra y convierte las tablas de conversión de direcciones IP en direcciones físicas.
- PowerShell: Permite interactuar con el SO y con algunos programas de Microsoft.
- Dsadd: Permite crear cuentas de equipo.
- Dsrm: Sirve para eliminar cuentas de un equipo.
- Dsget: Busca los usuarios y equipos en AD que cumplan los requisitos de búsqueda especificados.
- Dsmove: Permite mover o cambiar el nombre a un objeto de AD.