Auditoría de Puestos de Usuario

Lo primero es lo primero, me presento, soy Tamara Hueso y aunque no es mi primera entrada en el blog, sí que es mi primera entrada como parte de él. El primer conejo femenino 🙂 que lo de coneja suena demasiado mal.

El día de mi cumpleaños, estos locos (porque lo están) me regalaron mi entrada al blog como miembro, haciendo un vídeo de bienvenida (el cual me guardo para mi haha) y lo sellaron con la ansiada sudadera. Muchísimas gracias chicos por ser como sois y aceptarme como parte de este gran proyecto.

Una vez dejamos los sentimentalismos aparte, quiero aportar mis conocimientos sobre una auditoria de puestos de usuario, o como realizo yo una auditoria de este tipo.

Espero que os sea útil y vosotros también podáis decirme metodologías que usáis o herramientas que os son más útiles. Porque ni yo soy una experta ni mi forma tiene porque ser la mejor para realizar una tarea de la cual hay mil formas de llevarla a cabo. La idea es que entre todos nos ayudemos.

No queda de más decir que no me hago responsable del fin con el que se utilicen estos conocimientos y procedimientos que explico a continuación. Cada uno es responsable de sus actos y yo lo hago con la mejor de las intenciones.

 

Los empleados son los encargados de gestionar, procesar, almacenar, modificar, transmitir y eliminar la información en una empresa. Partiendo de la base que, el ser humano es el eslabón más débil en el sistema de seguridad de una empresa.

Por este motivo es de vital importancia reforzar la concienciación de los empleados, realizando acciones de formación en seguridad, que acerquen las políticas y procedimientos a los mismos.

Respecto a nuestro trabajo como auditores, tenemos que comprobar cuál es el nivel de seguridad que tienen estos puestos de usuario.

Entre nuestros objetivos estará el verificar la efectividad de las configuraciones de seguridad y nivel de actualizaciones en diferentes puestos de usuario estándar de la empresa. Buscar errores y vulnerabilidades que se puedan explotar para hacerse con el control del sistema entre otros.

Hoy en día, los atacantes utilizan nuevos vectores de entrada a la red interna de una empresa, se basan en el engaño a los usuarios de los sistemas, para conseguir que ejecuten malware o revelen sus credenciales de acceso. Los métodos más comunes son:

  • Phishing y spear phishing: Se trata de tipos de ingeniería social, la cual se caracteriza por el intento de adquirir información confidencial de forma fraudulenta. El atacante se hace pasar por una persona o empresa de confianza en una aparente comunicación oficial electrónica.
  • Amenazas de mensajería instantánea: Existen múltiples amenazas que provienen de las herramientas de mensajería instantánea, infecciones por malware, suplantación de identidad, fugas de información, ejecución de exploits, etc.
  • Dispositivos USB: Estos ataques consisten en la mayoría de casos, en el robo de información del ordenador donde se conecta el dispositivo USB, pero también es posible la instalación de puertas traseras conla finalidad de tomar un mayo control sobre el ordenador. Un dispositivo USB infectado puede ser conectado voluntaria o involuntariamente por un empleado de la organización en su equipo de trabajo, dando acceso a la red interna a un atacante.
  • Sitios Web con contenido malicioso: Fuera de la red corporativa es posible tener acceso a todo el contenido de internet, el contenido malicioso puede infectar los dispositivos corporativos y propagarse por toda la red corporativa.
  • Ataques fuera de la oficina: Los ordenadores portátiles de una organización, cuando abandonan el lugar de trabajo, están expuestos a posibles ataques en las redes Wifi públicas como hoteles, aeropuertos, etc. Cuando estos equipos infectados fuera de la oficina, regresan a ella y se conectan se nuevo sirven de “Caballo de Troya” a los atacantes, dándoles acceso a toda la red interna.

El objetivo principal en este tipo de auditorías es poder elevar privilegios de forma local para, posteriormente, realizar movimientos laterales en la red de una empresa y poder elevar privilegios en otros sistemas.

Control del puesto de usuario mediante usuario administrador

Para realizar la toma del control del puesto de usuario que estamos auditando en modo administrador utilizaremos una de las vulnerabilidades comentadas anteriormente.

Primero vamos a arrancar el ordenador mediante una llave USB que contiene un sistema operativo LINUX.

Una vez arrancado el sistema operativo LINUX, con el fin de ejecutar una consola del sistema sin necesidad de haber iniciado sesión, para ello se accede al directorio del sistema y así modificaremos el ejecutable de la herramienta Lupa por el de la consola del sistema o cmd.

Para ello, accedemos al sistema de archivos de kali Linux y luego a Other Locations, seleccionamos el disco donde se encuentra instalado el S.O. Windows y entramos a la carpeta Windows/System32, buscamos el archivo Magnify.exe y le cambiamos el nombre por Magnify2.exe, ahora buscamos cmd.exe y le cambiamos el nombre por Magnify.exe.

Aprovechándonos de que el disco duro del puesto de usuario no se encuentra cifrado y no está bloqueado el arranque desde discos o USB, hemos cambiado el nombre de la herramienta de Lupa por la de consola (cmd). Esto nos va a permitir ejecutar comandos sin necesidad de estar logeados en el sistema.

Una vez hecho esto, volvemos al sistema operativo principal Windows apagando el ordenador y encendiéndolo de nuevo.

Una vez en la pantalla de inicio de sesión, usamos la herramienta Lupa  y se nos abrirá un Terminal (cmd), puesto que le hemos cambiado el nombre.

 

El terminal abierto tendrá privilegios de administrador y procedemos a crear un usuario administrador escribiendo lo siguiente:

net user <Usuario> <Contraseña> /add

net localgroup <Nombre del grupo de administradores> <Usuario> /add

Después de esto tendremos un usuario con privilegios locales de administrador, tenemos que volver a renombrar los archivos que habíamos cambiado de nombre dejar en el estado de origen los ejecutables.

Segundo Método:

Realizamos el mismo procedimiento hasta llegar a la parte de renombrar los archivos. En este caso cambiamos el nombre a Magnify.exe por Magnify2.exe y copiamos el archivo Explorer.exe (C:/Windows) a System32 (C:/Windows/System32) y ahora le cambiamos el nombre a Magnify.exe.

Volvemos a activar la lupa como en el método anterior y nos encontramos directamente en el menú de inicio pero en este caso con el usuario oculto SYSTEM que tiene todos los permisos incluyendo los del Kernel de Windows.

Tercer Método:

Otro método que se puede utilizar para la obtención de un usuario administrador, es usar la herramienta CHNTPW (Change NT Password), es una utilidad de Linux, diseñado para sobrescribir, resetear, cambiar o modificar passwords de las cuentas de usuarios Windows.

Para empezar accedemos al directorio donde se encuentra el archivo SAM SYSTEM de Windows que es donde se almacenan las contraseñas de los usuarios, ubicado en /Windows/System32/config.

Procedemos a ejecutar el programa y nos ubicamos en el usuario del sistema que queramos quitar la contraseña de la siguiente manera:

En un principio el usuario creado con permisos de administración “Conejo” tenía una contraseña con mayúsculas, minúsculas, números y símbolos. Una vez se borra la contraseña podemos comprobar como el hash cambia.

La herramienta ophcrack permite obtener los hashes de las contraseñas de todos los usuarios que se han logado en este sistema.

Control del puesto de usuario mediante servicios inseguros

Una de las características más populares que los sistemas operativos modernos ofrecen a sus usuarios finales y administradores es la capacidad de registrar aplicaciones que se pueden iniciar automáticamente. Estas aplicaciones normalmente se ejecutan en segundo plano con una mínima (o ninguna) interacción con el usuario final. Esta funcionalidad mejora la experiencia del usuario final y, además, permite a los administradores del sistema ejercer un control completo sobre los equipos de su entorno. Lo que los desarrolladores de aplicaciones deben tener en cuenta es que los atacantes pueden apuntar a estos mismos sistemas explotando las «aplicaciones registradas de forma insegura» en los sistemas.

Las aplicaciones o servicios registrados de forma insegura se identifican examinando la ruta registrada de la aplicación. Si la ruta de acceso registrada contiene uno o más espacios, y la ruta no está entre comillas dobles, es posible que la aplicación esté registrada de forma insegura. Esto finalmente permite a un atacante potencialmente invocar programas maliciosos con privilegios más altos de lo normal, creando así una vulnerabilidad de escalado de privilegios. Un ejemplo de esto podría ser un atacante instalando un registrador de teclado (keylogger) en un sistema bloqueado en el que los usuarios ordinarios no tienen los privilegios para instalar programas y menos programas maliciosos.

Exfiltración de Información

Una vez que se ha conseguido elevar privilegios de forma local se pueden realizar ciertas acciones las cuales no estarían permitidas en principio, muchas de estas acciones van a estar relacionadas con posibles vectores de fuga de información:

  • Instalación de herramientas
  • Análisis de tráfico
  • Cierre de procesos
  • Etc.

BIOS y disco duro sin cifrar

El sistema operativo protege el contenido del disco duro mientras está funcionando, pero no cuando el ordenador está apagado o durante el proceso de arranque.

En la prueba realizada se usó un sistema Linux desde el cual se pudo acceder a la partición correspondiente al sistema operativo del puesto de usuario y, al no estar protegida por controles criptográficos, se pudo ver el contenido del disco duro sin necesidad de haber iniciado sesión en el equipo.

De este caso se pueden realizar las acciones comentadas en puntos anteriores para elevar privilegios o, directamente, robar información mediante el acceso por el sistema externo instalado en una unidad de memoria USB.

Uso de herramientas de tipo mensajería

Es importante prevenir el uso de herramientas de mensajería no corporativas que puedan ocasionar grandes problemas para una compañía, como por ejemplo:

  • Grandes multas para la compañía.
  • Divulgación de información confidencial.
  • Grandes riesgos reputacionales.
  • Infecciones por malware

Programas de control remoto

Una forma sencilla de exfiltración de información es el uso de programas para el control remoto de los equipos, un ejemplo muy conocido dentro de este tipo de software es TeamViewer.

TeamViewer requiere de un cliente instalado en el PC, para ello podemos haberlo instalado mediante una elevación de privilegios o usando programas portables que puedan ejecutarse sin necesidad de instalación. Una vez se inicia el cliente se requieren un identificador y una contraseña para que, desde otro cliente en otro PC, se establezca la comunicación remota.

+

Basta con dar esta información al cliente del PC “atacante” para que se establezca la comunicación sin ningún tipo de restricción ni alerta.

Activación de puntos de acceso WiFi

Los nombres SSID de las redes WiFi admiten un máximo de 32 bytes los cuales pueden ser utilizados para exfiltrar información sensible, aunque sea un proceso lento. Para poder crear puntos de acceso en un equipo de usuario es necesario disponer de permisos de administrador para crear, lo que se denomina en Windows, una “hosted network”.

Basta con comprobar si la configuración del PC permite la creación de “hosted networks” mediante un simple comando, tal y como se muestra en la Ilustración anterior .

El proceso para exfiltrar información sería el de, mediante un script, crear un bucle por el cual se cambia de nombre a la red WiFi creada cada cierto tiempo, el nombre puede ir cifrado para que, el atacante pueda coger esa información y descifrarla posteriormente sin necesidad de acceder al edificio, bastaría con permanecer en el radio de cobertura de un PC. 

Parches y S.O

Para hacer una revisión de los parches que tiene el puesto de usuario, utilizaremos una herramienta bastante útil. Esta herramienta se llama

Microsoft Baseline Security Analyzer (MBSA) es una herramienta fácil de usar que ayuda a determinar el estado de seguridad de un sistema de acuerdo con las recomendaciones de seguridad de Microsoft y ofrece orientación precisa sobre soluciones.

 

Principio de Mínimo Privilegio

Este punto es parte del bastionado del propio equipo pero  hay que tener en cuenta, y controlar el nivel de profundidad de bloqueo en los permisos locales del Usuario, ya que se tiene que respetar el principio de mínimos privilegios.

Esta configuración permite evitar que vulnerabilidades como la de los servicios registrados de forma insegura no puedan ser explotadas por atacantes. Se recomienda revisar periódicamente la asignación de permisos para mantener el nivel de seguridad ofrecido en el momento de realizar la auditoria.

 

Estos son algunas de las comprobaciones que yo hago a la hora de realizar una auditoria de puestos de usuario en una empresa. Obviamente hay muchas cosas que se pueden hacer y que hay que comprobar. Aquí os he enseñado alguna de las cosas básicas que se pueden hacer.

Si tenéis dudas o  necesitáis ayuda, no dudéis en preguntarme.

Happy hacking 😉

 

9 comentarios en «Auditoría de Puestos de Usuario»

  1. Muy buen aporte. Bien estructurado y muy bien explicado.
    Ya que veo que te dedicas profesionalmente a esto. Sabrías de algún libro y/o documentación para ampliar y complementar este tipo de auditorias y llegar a realizar una al completo?
    Gracias Tami.

  2. Muy buen post !! muchos de los ataques pueden ser ejecutados pensando fuera de la caja , este es un ejemplo de ello, lo cual demuestra que muchas veces el error humano es el que propicia los vectores de ataque.

  3. ¿conoce de alguna herramienta que audite la seguridad del usuario de windows en AD, algo parecido al baseline pero en vez de computadora que sea de los usuarios de active directory?

Los comentarios están cerrados.