Knoppia

Wiki de Informática y otras historias

Herramientas de usuario

Herramientas del sitio


mwr:tema2

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
mwr:tema2 [2024/10/21 15:35] thejuanvisumwr:tema2 [2024/10/28 17:14] (actual) thejuanvisu
Línea 186: Línea 186:
   * Se usa ofuscación de código para dificultar la detección   * Se usa ofuscación de código para dificultar la detección
   * Usa empaquetadores para cambiar su firma hash.   * Usa empaquetadores para cambiar su firma hash.
 +Los 
 ===== Detección y Eliminación ===== ===== Detección y Eliminación =====
 +
 +En esta parte se ve como detectar y eliminar malware mediante el uso de Antivirus, Yara, Firewalls y proxies.
 +
 +==== base de datos indicadora de compromiso ====
 +Esta base de datos exite para revisar por malware no detectado o nuevo, aislar infecciones y borrar malware presente en una intranet. Estas bases de datos deben ser compartidas entre compañías para prevenir la difusión de nuevo malware. 
 +
 +Indicadores que caracterizan el malware:
 +  * Dirección IP, nombre de dominio, claves de registro, hashes, nombres de archivo, etc...
 +  * Tan complejo como una regla IDS para detectar una familia de malware.
 +
 +El diseño de este tipo de base de datos es todavía un arte y debe evitar tanto falsos positivos como falsos negativos. Para evitar eso se usan numerosas herramientras como antivirus, firewalls, proxies, etc...
 +
 +==== Defensa de Malware ====
 +Para proteger una red, se deben establecer múltiples capas de defensa:
 +  * Antivirus
 +  * Firewall
 +  * Proxy
 +  * Sistema de detección/prevencion de intrusiones (UDS/IPS)
 +
 +==== Antivirus ====
 +Programas diseñados para detectar y eliminar viruses, pueden enfrentarse a tipos de malware como spyware, adware, gusanos, troyanos, rootkits...
 +Generalmente para la defensa se recomiendan los siguientes mecanismos:
 +  * Firma digital: Busca por hashes, firmas de hosts o redes y los compara con una base de datos de firmas de malware.
 +  * Heurística: revisa los archivos por patrones de códigos similares a los presentes en una familia de viruses.
 +  * Detección de Rootkits: En ocasiones los rootkits pueden hacer los antivirus inefectivos, además de ser difíciles de eliminar, muchas veces siendo necesario una reinstalación completa del sismtema
 +  * Protección en Tiempo Real: Monitoriza los sistemas del equipo para detectar actividad sospechosa mientras los datos son cargados a la memoria activa del equipo.
 +
 +El problema de los antivirus es que muchas veces pueden dar falsos positivos, que hacen que un archivo o programa seguros sean identificados como virus, lo que puede producir problemas en el sistema operativo o hacer algunos programas inutilizables. Además, si se arranca un antivirus con protección en tiempo real pueden haber conflictos o problemas de rendimiento:
 +  * Conflictos: Muchas veces se recomienda apagar estos antivirus cuando se instala actualizaciones del sistema o drivers
 +  * Rendimiento: Juegos y programas de tiempo real pueden sufrir una gran pérdida de calidad.
 +
 +ClamAV es un antivirus de la empresa Sourcefire que es open source pensado para sistemas Unix, aunque en la actualidad tiene compatibilidad también con windows. Una vez instalado, usar ClamAV es muy simple, solo es necesario actualizar la base de datos de firmas de malware y escanear el sistema. Para actualizar la base de datos se usa el comando "freshclam" y para ejecutar un análisis del sistema se usa "clamscan". También podemos crear nuestras propias firmas con la siguiente sintaxis:
 +<code>
 +Name:Type:Offset:HexadecimalCode
 +</code>
 +  * Nombre corresponde al nombre del malware
 +  * Tipo corresponde con el tipo de archivo (0 para cualquiera, 1 para binarios windows, 2 para scripts, 3 para HTML, 4 para email, 5 para multimedia, 6 para binarios de linux y 7 para ASCII)
 +  * Offset corresponde a la dirección inicial para buscar por la firma presente en el último campo, se puede usar * para evitarlo
 +  * El código hexadecimal se refiere a la firma por la que se debe buscar
 +
 +==== Firmas ====
 +
 +Una firma ideal identifica un archivo de forma exacta y tiene la propiedad de que dos archivos diferentes no pueden compartir el hash y que no se puede obtener el archivo del hash. Pueden ser usadas para revisar si un archivo ha sido modificado o corrompido durante una transmisión de datos usando funciones como MD5, SHA4 o SHA256. De todas formas los codificadores de malware pueden usar bytes aleatorios son modificar el comportamiento del código para producir firmas diferentes con el mismo código.
 +
 +==== Firmas Yara y Reglas ====
 +YARA (Yet Another Ridiculous Acronym) es el nombre de una herramienta usada para la detección de malware e investigación. YARA proporciona un sistema de reglas para crear descripciones de familias de malware basado en texto o patrones binarios. Una descripción es una regla Yara y una regla que consiste en sets de cadenas de texto y una expresión booleana. Yara Puede ser combinado con otras herramientras, trayendo de serie módulos para procesar PE, ELF analisis, además de tener soporte para el sandbox Cuckoo.
 +
 +Un ejemplo de yara podría ser el siguiente:
 +<code>
 +rule silent_banker : banker
 +  {
 +  meta:
 +    description = "This is just an example"
 +    threat_level = 3
 +
 +    in_the_wild = true
 +  
 +  strings:
 +    $a = {6A 40 68 00 30 00 00 6A 14 8D 91}
 +    $b = {8D 4D B0 2B C1 C0 27 99 4E 59 F7 F9}
 +    $c = "UVODFRYSIHLNWPEJXQZAKCBGMT"
 +  
 +  condition:
 +    $a or $b or $c
 +  }
 +</code>
 +
 +==== Firewall ====
 +Sistema de seguridad de red que monitoriza un controla el tráfico de red que entra y sale del sistema. Se basa en reglas de seguridad predeterminadas. Normalmente establecen una barrera entre una red interna confiable y una red externa no confiable como internet. Existen varios tipos de firewall:
 +  * Firewall de red: Filtra el tráfico entre 2 o mas redes y funciona en hardware.
 +  * Firewall a nivel de host: Funciona dentro de un ordenador y controla el tráfico de red que entra y sale de dicha máquina. Pude funcionar como un servicio del sistema operativo o como una aplicación endpoint security.
 +
 +En un firewall existen varias capas que siguen las políticas basadas en reglas:
 +  * Capa de Red: Funciona a nivel TCP/IP y filtra los paquetes de entrada y salida por IP, Puetos TCP/UDP, dominio, MAC...
 +  * Capa de Aplicación: Funciona con protocolos de aplicación como HTTP, HTTPS, FTP...
 +
 +==== Servidor Proxy ====
 +Un servidor proxy es un programa o dispositivo que actua como intermediario en las peticiones realizadas de un cliente a otro server. El servidor proxy más popular es aquel que soporta búsqueda web con diferentes propósitos. Hay 2 tipos de proxys dependiendo de como sean implementados:
 +  * Local Proxy: Está en la misma máquina que el cliente que hace la petición. Se usan para que el cliente pueda controlar el trafico y establecer reglas de filtrado.
 +  * Network Proxy o Proxy externo: Implementado por una entidad externa. Implementa bloqueo de contenido, control de tráfico, compartición de IP, etc...
 +  * Forward Proxy: Suele estar cerca de los clientes y puede ser configurado manualmente en el buscador para reducir el tiempo de acceso, actuando como memoria cache compartida y capturar tráfico web.
 +  * Reverse Proxy: Localizado en el servidor, el tráfico a los servidores web es distribuido.
 +
 +Squid:
 +  * Es un software gratuito usado para capturar tráfico HTTP. Puede ser usado para mejorar la velocidad de servidores web, DNS y otras redes.
 +
 +
 +
 +===== Sistemas de detección de intrusión =====
 +Es un programa usado para detectar acceso no autorizado a un ordenador o una red. Normalmente tienen sensores virtuales para descibrir anomalías que puedan indicar la presencia de malware. La operación de estas herramientras está basada en un análisis detallado del tráfico de red para compararlo con firmas de ataques conocidos o para detectar comportamiento extraño. Normalmente funciona integrado con un firewall, siendo una herramienta defensiva batante potente.
 +==== Mecanismos IDS ====
 +  * basado en patrón: analiza paquetes en la red para compararlos con ataques conocidos y preconfigurados. 
 +  * Basados en heurística: Determina la actividad de red normal como el ancho de banda usado, protocolos, puertos y dispositivos que suelen estar interconectados.
 +
 +==== Tipos de IDS ====
 +  * HostIDS (HIDS): Trata de detectar modificaciones que afectan a un nodo en particular.
 +  * NetworkIDS (NIDS): Trata de analizar ataques a un segmento entero de red, capturando todo el tráfico de red.
 +
 +==== Limitaciones del IDPS ====
 +  * Muchos ataques reales pueden ser ignorados si no mandan mucha carga al sistema.
 +  * Para IDS basados en firmas hay mucho tiempo entre el descubrimiento de una amenaza y esta siendo notificada al IDS.
 +  * Los paquetes cifrados no son procesados por la mayoría de IDPS.
 +  * Los NIDS no pueden compensar la autenticación débil para debilidades en los protocolos de red, por lo que pueden ser susceptibles a ataques  basados en protocolo.
 +  * Un IDS puede ser de hardware, software o ambos. Los elementos de hardware son muy útiles debido a los requerimientos del procesador en redes de altro tráfico.
 +
 +==== Técnicas de evasión de IDPS ====
 +  * Fragmentación: envía paquetes fragmentados para que el IDPS no pueda detectar la firma del ataque.
 +  * Evitar predeterminados: Cambiar los puertos usados habitualmente para ataques
 +  * Ataques coordinados de baja banda ancha: Ataque de escaneo simultáneo por parte de múltiples atacantes que dificulta al IDS correlacionar paquetes capturados y deducir que hay un escaneo de red en proceso
 +  * Spoofing de dirección
 +  * Evasión de cambio de patron
 +
 +==== Snort ====
 +Es un detector de intrusiones open source. Fue desarrollado para analizar el tráfico de red tanto en tiempo real como de forma forense. Puede ser usado para detectar ataques, incluyendo fingerprinting de sistemas operativos. Snort tiene 3 modos de operación:
 +  * Sniffer Mode: Captura los paquetes de red y los muestra en la consola.
 +<code>./snort -dev</code>
 +  * Packet Logger Mode: Guarda los apquetes en el disco duro
 +
 +<code bash>
 +./snort -dev
 +./snort -dev -l 
 +</code>
 +
 +  * Intrusion detection mode: realiza detección
 +
 +<code bash>
 +./snort -d -l ./log -h 192.168.1.0/24 -c snort.conf
 +</code>
 +
 +Snort tiene reglas sencillas y fáciles de modificar, al contrario que otras soluciones comerciales.
 +
 +===== Introducción a respuestas a incidentes (SANS/GIAC) =====
 +  - Preparación
 +  - Identificación
 +  - Contención
 +  - Erradicación
 +  - Recuperación
 +  - Lecciones aprendidas
 +
 +
  
mwr/tema2.1729524903.txt.gz · Última modificación: 2024/10/21 15:35 por thejuanvisu