20199308 2019-2020-2 "Asignación de red y práctica de defensa" Asignación de la semana 8

(: 」∠) _

1. Practica el contenido

1. El marco básico del sistema operativo Linux

1.1 Ventajas de Linux

  • Código fuente abierto
  • Soporte de hardware multiplataforma
  • Rico soporte de software
  • Multi-usuario multiservicio
  • Seguridad confiable
  • Buena estabilidad
  • Función de red perfecta

1.2 estructura del sistema Linux

  • Kernel del sistema operativo Linux: estructura del kernel macro
  • Mecanismo de gestión de procesos y subprocesos: modo preventivo multiusuario multiusuario
  • Mecanismo de gestión de memoria: permite que múltiples procesos compartan de forma segura el área de memoria física.
  • Mecanismo de administración del sistema de archivos: el mecanismo VFS de administración de archivos virtual admite docenas de diferentes tipos de sistemas de archivos lógicos.
  • Mecanismo de control del dispositivo: el software que el controlador del dispositivo procesa o administra el controlador de hardware es esencialmente una biblioteca compartida de rutinas de control de hardware privilegiadas de bajo nivel que residen en la memoria.
  • Mecanismo de red: el módulo de red en el núcleo proporciona acceso a varios estándares de red y soporte para varios hardware de red. La interfaz de red se puede dividir en una pila de protocolos de red y un controlador de red.
  • Mecanismo de llamada del sistema: la interfaz de llamada del sistema permite a las aplicaciones acceder a dispositivos de hardware y otros recursos del sistema a través de esta capa de interfaz. La llamada al sistema se realiza por interrupción suave.

2. Mecanismo de seguridad del sistema operativo Linux

2.1 Mecanismo de autenticación de identidad de Linux

Implemente la gestión de identidad de usuario creando usuarios y grupos de usuarios con múltiples tipos de roles para garantizar que varios usuarios utilicen el sistema operativo Linux de forma segura.

  • Usuario: Tome al usuario como el cuerpo principal del proceso para completar una tarea de operación específica, el usuario tiene diferentes tipos de roles. Incluyendo:
    • Usuario root
    • Usuario ordinario
    • Usuario del sistema
  • Grupo de usuarios: una colección de cuentas de usuario con las mismas características, que se utiliza para simplificar la administración de derechos de usuario de todo el sistema.
    • La información del grupo de usuarios se guarda en el archivo / etc / group del sistema, incluido el nombre del grupo de usuarios, el gid y la lista de nombres de usuario contenidos en el grupo de usuarios. La contraseña cifrada del grupo de usuarios se almacena en el archivo / etc / gshadow.
    • id -aComando puede consultar y visualizar el usuario actual pertenece, y por groupaddla adición de un grupo comando de usuario se utiliza usermod -G group_name user_namepara agregar un usuario a un grupo específico.
  • Mecanismo de autenticación de usuario de inicio de sesión local: el mecanismo de autenticación de usuario más básico.
  • Mecanismo de autenticación de usuario de inicio de sesión remoto: el servicio SSH se utiliza para el inicio de sesión de usuario remoto y el acceso a la red. SSH proporciona dos mecanismos de autenticación de usuario:
    • 1. Basado en contraseña
    • 2. Basado en claves asimétricas
  • Middleware-PAM de autenticación de identidad unificada: proporciona un mecanismo de autenticación de identidad unificado para diferentes aplicaciones de software y servicios de red.
    • Gestión de autenticación: acepta el nombre de usuario y la contraseña, y luego autentica la contraseña del usuario, y es responsable de configurar cierta información secreta del usuario.
    • Gestión de la cuenta: compruebe si la cuenta puede iniciar sesión en el sistema, si la cuenta ha caducado y si el inicio de sesión tiene un límite de tiempo, etc.
    • Gestión de contraseña: se utiliza para modificar la contraseña del usuario.
    • Gestión de sesión: proporciona gestión de sesión y auditoría.

2.2 Autorización de Linux y mecanismo de control de acceso

Linux utiliza el sistema de archivos virtual VFS para admitir diferentes tipos de formatos de sistemas de archivos y, simultáneamente, integra la administración de otros tipos de sistemas a través de tipos de archivos de dispositivos.

  • Propietario del archivo
  • Acceso a archivos
    • R: leer
    • W: escribir
    • X: ejecutar
  • Permisos especiales de ejecución para archivos: hay una clase de "privilegios" en el bit de ejecución de permisos de acceso a archivos del sistema.
    • SUID: permite que los archivos ejecutables se eleven de la identidad del operador al propietario del archivo en tiempo de ejecución
    • SGID: cuando se ejecuta, se ejecuta con los permisos del grupo de propietarios, y el programa puede acceder arbitrariamente a los recursos del sistema que puede utilizar todo el grupo de usuarios.

2.3 Mecanismo de auditoría de seguridad de Linux

Principalmente logrado a través de tres subsistemas de registro principales, que incluyen:

  • Registro de práctica de conexión: ejecutado por múltiples programas
  • Registro de estadísticas de proceso: ejecutado por el núcleo del sistema
  • Registro de errores: ejecutado por el servicio de registro general syslogd (8)

Además de estos registros de eventos, el kernel de Linux también integra un demonio de auditoría para ayudar a los administradores a detectar violaciones de ciertas medidas de seguridad por parte de los usuarios del sistema. En el nivel más básico, el demonio de auditoría también puede cooperar con SELinux para contrarrestar la estrategia Weifang SELinux Registros de auditoría del incidente.

3. Tecnología de ataque y defensa remota del sistema Linux

3.1 El método principal de intrusión de red remota en el sistema Linux:

  • Realice ataques de adivinanzas a las contraseñas de usuario involucradas en el proceso de autenticación de identidad de varios servicios de red en el sistema Linux, con la esperanza de descifrar las cuentas de usuario y contraseñas reales y efectivas de un determinado servicio, para suplantar la identidad del usuario e ingresar al sistema.
    -Excavando y explotando un vacío de seguridad en un sistema de Linux que supervisa el servicio de red, inyectando el código del módulo de carga de ataque en el proceso de servicio de destino para su ejecución, proporcionando así al atacante acceso al shell local.
    -A través de la página web Troyanos, enviando correos electrónicos fraudulentos, proporcionando programas de troyanos y otros métodos de ingeniería técnica y social para atacar a los programas y usuarios del cliente, el software del cliente o los usuarios instalan y ejecutan programas maliciosos, abriendo así activamente Linux a los atacantes La puerta del sistema.
    -Cuando el sistema Linux se usa como un enrutador para conectar múltiples redes, o cuando se activa un modo promiscuo como escucha para el rastreo de la red, puede estar sujeto a un ataque de paquetes especialmente construido por el atacante, y el atacante puede obtener acceso.

3.2 Ataque de adivinación de contraseña remota de Linux

El sistema Linux admite principalmente el control remoto de red de los protocolos telnet, rlogin, rsh y SSH, que utilizan el nombre de usuario y la contraseña incorporados en el sistema Linux para autenticar al usuario remoto. Si un atacante puede adivinar de forma remota un conjunto de nombres de usuario y contraseñas a través de estos protocolos de red, puede usar esta información para iniciar sesión en el sistema Linux de forma remota para obtener acceso local.

  • Admite a los atacantes para que realicen herramientas de adivinación de contraseña remotas automatizadas, que incluyen:
    • Brutus
    • THC Hydra
    • Caín y Abel

3.3 ataque de penetración remota del servicio de red Linux

Penetrando el uso de monitoreo de vulnerabilidades de seguridad del servicio de red.

3.4 Atacando programas y usuarios de clientes Linux

  • Atacar programas cliente en la plataforma Linux
  • Atacar a los usuarios de sistemas Linux: escenarios comunes de suplantación de identidad que implican el diseño de algunas técnicas de ingeniería social en el correo electrónico y la mensajería instantánea, para engañar a los usuarios para que hagan clic para ejecutar archivos adjuntos de correo electrónico o programas ejecutables o documentos maliciosos transmitidos a través de software de mensajería instantánea Estas direcciones maliciosas, además de filtrar inadvertidamente información confidencial sobre la configuración del servidor, permiten al atacante obtener la oportunidad de ejecutar programas maliciosos en el servidor y guían al software del cliente para acceder al código de ataque, a fin de poner el sistema bajo la supervisión del administrador. Derechos de acceso,

4. Ataque de seguridad local y tecnología de defensa del sistema Linux

4.1 Elevación de privilegios locales de Linux

  • Descifre la contraseña del usuario raíz y luego ejecute el comando su o sudo para actualizar
  • Descubrir y explotar vulnerabilidades de seguridad en programas su o sudo
  • Ataque a la vulnerabilidad de escalada de privilegios de sudo en modo de usuario y ataque a la vulnerabilidad de escalada de privilegios del código del kernel de Linux
  • Busque y utilice archivos confidenciales de escritura global y ubicaciones de directorio desde el sistema

4.2 Desaparecer en el sistema Linux

Borrar el registro de comportamiento del sistema Linux:

  • Cambie el registro de actividad actual para evitar que el administrador del sistema note la actividad de inicio de sesión actual del atacante
  • Limpia el historial de los comandos que ingresaste en el programa shell
  • Eliminar el historial de comandos que ha ejecutado

4.3 Puerta trasera de control remoto del sistema Linux

Los tipos de programas de puerta trasera de control remoto implantados en sistemas Linux son:

  • Programa de sistema troyanizado
  • Herramienta de puerta trasera de línea de comando
  • Herramientas gráficas de puerta trasera

Segundo, el proceso práctico.

Práctica práctica: uso de Metasploit para ataques de penetración remota de Linux

Uso de Metasploit software de pruebas de penetración, Samba servicio usermap_script vulnerabilidades de seguridad ataque de aviones no tripulados en Linux, Linux llegar anfitrionas aviones blanco acceso. Los pasos prácticos son los siguientes:
1. Inicie el software de prueba de penetración Metasploit y use uno de msfconsole, msfgui, msfweb según sus preferencias personales.
2. Use exploit: exploit // multi / samba / usermap_script módulo de ataque de penetración;
3, seleccione el ataque PAYLOAD como un shell remoto,
4, establezca los parámetros de ataque de penetración;
5, ejecute el ataque de penetración;
6, verifique si se obtuvo correctamente Remote Shell, y ver los permisos obtenidos.


El proceso es el siguiente:

  • Prepara la máquina virtual
Máquina virtual Dirección IP
tiempos 192.168.200.2
metasploit 192.168.200.125
  • Abra msfconsole y consulte la vulnerabilidad del mapa de usuario:
  • Seleccione el módulo y vea las cargas útiles:
  • Para controlar el shell, seleccione 18 y configure la IP del atacante objetivo:
  • Ataque:
  • Después del ataque con éxito, los comandos de entrada directa whoamise pueden ver los privilegios de root. (No hay caracteres delante de la línea de comando, lo que parece inconveniente)

Asignación de práctica: práctica de confrontación ofensiva y defensiva

El atacante utiliza el software de penetración Metasploit para realizar un ataque cibernético contra una máquina objetivo Metasploitable de Linux, mientras que el defensor utiliza herramientas tcpdump o wireshark o snort para capturar el flujo de ataque en Metasploitable, y analiza qué vulnerabilidad de seguridad utilizó el atacante para atacar, descargar desde el sitio web oficial El parche de vulnerabilidad de seguridad se utiliza para reparar el sistema, y ​​las dos partes cooperan para informar sobre el proceso ofensivo y defensivo.

  • Atacante: utilice Metasploit, seleccione las vulnerabilidades encontradas en la máquina objetivo de Metasploitable para realizar ataques de penetración, obtener control remoto e intentar obtener más permisos de root.
  • Defensor: use tcpdump / wireshark / snort para monitorear y obtener el archivo de paquete de ataque de red, y combine wireshark / snort para analizar el proceso de ataque, obtenga la dirección IP del atacante, la dirección IP y el puerto de destino, el tiempo de inicio del ataque, la vulnerabilidad de explotación del ataque, use Shellcode y Después de la ejecución exitosa de la entrada de comandos y otra información local.

El proceso es el siguiente:

  • El ataque es como en el experimento anterior. La monitorización de Wireshark está habilitada antes del ataque, y los paquetes pueden ser capturados durante el ataque:
  • Puede ver la respuesta recibida, el shellcode es texto cifrado:

3. Resumen experimental

1. Información relacionada con la vulnerabilidad del script del mapa del nombre de usuario del servicio Samba
https://blog.csdn.net/aleenlee/article/details/78868675
2. Prueba de práctica de vulnerabilidad de la máquina objetivo de Metasploit
https://blog.csdn.net/Birldlee/article / detalles / 78914506

Supongo que te gusta

Origin www.cnblogs.com/hsj910/p/12735324.html
Recomendado
Clasificación