Reflexiones sobre el uso del kernel de Linux y el refuerzo de la seguridad [Linux]

1. El uso del pensamiento del núcleo de Linux

    En el campo de la seguridad de la red, para infiltrarse en el sistema es un problema digno de nuestro pensamiento, en la actualidad, muchas personas piensan que Linux es un sistema operativo muy seguro, en comparación con otros sistemas, de hecho, relativamente seguro, pero el concepto de seguridad es relativa Aunque Linux tiene una muy fuerte mecanismos de seguridad, pero todavía tiene algunos problemas de seguridad.

herramienta de detección de la vulnerabilidad 2. Linux

    Por ahora, el uso del núcleo de Linux en este aspecto digno de nuestra atención debido al gran daño esta patrones de uso, una vez que el atacante utiliza el núcleo Linux, el control total del sistema en general no será un problema. Para Linux Existe una vulnerabilidad de elevación de privilegios del sistema si podemos utilizar Linux corrector privilegio de detectar.

3. Linux mencionar las ayudas correctas

    Otra herramienta es el Linux Exploit Suggester , que está diseñado para ayudar a detectar dado algunas fallas de seguridad basado en el núcleo Linux o una máquina Linux, que proporciona principalmente las siguientes funciones:

  • Evaluación ha expuesto públicamente la vulnerabilidad del kernel, hay casos entre la salida del núcleo vulnerabilidad Linux kernel se ha descrito en, por ejemplo, la salida de los siguientes ejemplos:
$ ./linux-exploit-suggester.sh
...
[+] [CVE-2017-16995] eBPF_verifier

   Details: https://ricklarabee.blogspot.com/2018/07/ebpf-and-analysis-of-get-rekt-linux.html
   Exposure: highly probable
   Tags: debian=9.0{kernel:4.9.0-3-amd64},fedora=25|26|27,[ ubuntu=14.04 ]{kernel:4.4.0-89-generic},ubuntu=(16.04|17.04){kernel:4.(8|10).0-(19|28|45)-generic}
   Download URL: https://www.exploit-db.com/download/45010
   Comments: CONFIG_BPF_SYSCALL needs to be set && kernel.unprivileged_bpf_disabled != 1

[+] [CVE-2017-1000112] NETIF_F_UFO

   Details: http://www.openwall.com/lists/oss-security/2017/08/13/1
   Exposure: probable
   Tags: [ ubuntu=14.04{kernel:4.4.0-*} ],ubuntu=16.04{kernel:4.8.0-*}
   Download URL: https://raw.githubusercontent.com/xairy/kernel-exploits/master/CVE-2017-1000112/poc.c
   ext-url: https://raw.githubusercontent.com/bcoles/kernel-exploits/cve-2017-1000112/CVE-2017-1000112/poc.c
   Comments: CAP_NET_ADMIN cap or CONFIG_USER_NS=y needed. SMEP/KASLR bypass included. Modified version at 'ext-url' adds support for additional distros/kernels

[+] [CVE-2016-8655] chocobo_root

   Details: http://www.openwall.com/lists/oss-security/2016/12/06/1
   Exposure: probable
   Tags: [ ubuntu=(14.04|16.04){kernel:4.4.0-(21|22|24|28|31|34|36|38|42|43|45|47|51)-generic} ]
   Download URL: https://www.exploit-db.com/download/40871
   Comments: CAP_NET_RAW capability is needed OR CONFIG_USER_NS=y needs to be enabled
...
  • Verificar las medidas de seguridad del kernel que fortalecen el estado, se puede comprobar la mayoría de las opciones de seguridad proporcionadas por el núcleo, la configuración del núcleo al verificar compilador, y conjunto de validación en tiempo de ejecución, para ayudarnos a entender el estado de seguridad del kernel en tiempo de ejecución, checksec similar. sh herramientas de la versión moderna de la continuación de ejemplos de uso de la herramienta:
 $ ./linux-exploit-suggester.sh --checksec

Mainline kernel protection mechanisms:

 [ Disabled ] GCC stack protector support (CONFIG_HAVE_STACKPROTECTOR)
              https://github.com/mzet-/les-res/blob/master/features/stackprotector-regular.md

 [ Disabled ] GCC stack protector STRONG support (CONFIG_STACKPROTECTOR_STRONG)
              https://github.com/mzet-/les-res/blob/master/features/stackprotector-strong.md

 [ Enabled  ] Low address space to protect from user allocation (CONFIG_DEFAULT_MMAP_MIN_ADDR)
              https://github.com/mzet-/les-res/blob/master/features/mmap_min_addr.md

 [ Disabled ] Restrict unprivileged access to kernel syslog (CONFIG_SECURITY_DMESG_RESTRICT)
              https://github.com/mzet-/les-res/blob/master/features/dmesg_restrict.md

 [ Enabled  ] Randomize the address of the kernel image (KASLR) (CONFIG_RANDOMIZE_BASE)
              https://github.com/mzet-/les-res/blob/master/features/kaslr.md

 [ Disabled ] Hardened user copy support (CONFIG_HARDENED_USERCOPY)
              https://github.com/mzet-/les-res/blob/master/features/hardened_usercopy.md
...

Aquí Insertar imagen Descripción
Aquí Insertar imagen Descripción

4. El uso del núcleo de Linux

    La mayoría de los sistemas operativos actuales se basan modelo de protección de anillo , por lo general el modelo de cuatro capas, como se muestra a continuación:
Aquí Insertar imagen Descripción
    basado en el mismo mecanismo, la gestión de memoria es uno de los kernel de Linux proporciona las características más potentes. Para el uso del núcleo, generalmente se divide en los siguientes puntos:

4.1 kernel cualquier problema de alfabetización

    Este ataque al pasar los datos al núcleo de Linux, por lo tanto el logro de los ataques, Windows, MacOS rompieron todas las lagunas tales problemas, puede ir al interés macOS EXIST kernel frente a cualquier 15 años de edad, a leer y escribir análisis de vulnerabilidad (incluyendo PoC) mirar.

4.2 vulnerabilidades de corrupción de memoria

Aquí Insertar imagen Descripción

1- 4.2.1 vulnerabilidades pila del núcleo:

    La pila es un espacio de memoria especial. Que crecerá de forma automática en este espacio de memoria. Los atacantes aprovecharon el espacio de memoria crecerá un poco, una vez que la llamada a la función demasiado hará que la pila de llamadas no puede dar cabida a estas llamadas devuelven la dirección, lo que lleva a transfronterizo de datos, que cubre los datos de la pila de edad para generar una vulnerabilidad de desbordamiento de pila.

4.2.2 2- kernel montón vulnerabilidades:

    Por lo general, la pila de asignación de memoria dinámica. Kernel uso montón es muy peligroso, ya que en la mayoría de los casos, los atacantes a menudo no necesitan preparar cualquier módulo de depuración del entorno de Linux se puede realizar utilizando el montón.

4.2.3 condiciones competitivas

    Dado que en general los dos o más procesos compiten por los recursos no se puede acceder de forma simultánea, por lo que es posible debido a que estos procesos tienen el tiempo para promover la causa de un problema, que se llama una condición de carrera (Race Condición). Para evitar este problema, Linux logrado nuestro mutex llamados objetos (exclusión mutua).

4.2.4 espacio de direcciones aleatoria del diseño

    Está implicada en la protección de desbordamiento del búfer de la tecnología de la seguridad informática. Con el fin de evitar que un atacante puede saltar la memoria de forma fiable a un funciones de uso específico. datos críticos ASLR incluyen áreas de localización se programa dispuestos al azar, que comprende parte ejecutable, montón, pila, y la posición de la biblioteca compartida.

tecnología de prevención de desbordamiento de memoria intermedia 4.2.5

    Llamado de desbordamiento del búfer, se escribe en la memoria intermedia de longitud fija que excede la longitud de la distribución de contenido, lo que resulta en un desbordamiento de memoria intermedia de datos, cubriendo de este modo alrededor de la memoria tampón, un atacante hace a mano datos de relleno, lo que resulta en el cambio de potencial de flujo , por lo que el código especial de ejecución del programa, a continuación, obtener el control.

4.3 Una cuestión eliminar la referencia de puntero nulo

error de puntero NULL hará que un puntero nulo NullPointerException.
Aquí Insertar imagen Descripción

5. Linux para reforzar la seguridad

    De todos modos, que se actualiza regularmente kernel y aplicaciones Linux, se recomienda utilizar SFTP y OpenSSH, así como SELinux, configuración de contraseñas complejas, para fortalecer de manera efectiva la configuración /etc/sysctl.conf, una gran cantidad de registro de observación faillog, es probablemente el caso.

Publicado 31 artículos originales · ganado elogios 52 · Vistas a 10000 +

Supongo que te gusta

Origin blog.csdn.net/qq_36552566/article/details/105174583
Recomendado
Clasificación