La vulnerabilidad de SambaCry tiene el potencial de impactar las versiones 5-7 de Red Hat Enterprise Linux. Aprenda cómo mitigar esta amenaza en un entorno Red Hat.

    Una vulnerabilidad que involucra un paquete de Linux llamado Samba está haciendo las rondas, y en el espíritu del exploit basado en Windows conocido como WannaCry, éste se llama SambaCry. Los sistemas Red Hat Enterprise Linux de la versión 5 a la 7 pueden ser explotados por esta amenaza. Red Hat cubre el tema a través de estas advertencias de seguridad (que básicamente instan a la actualización):

    Todas las versiones de Samba desde la 3.5.0 hasta la 4.6.5 excepto la 4.4.14, 4.5.10 y 4.6.4 son vulnerables a SambaCry, a menos que los controles de seguridad SELinux – que son básicamente como cortafuegos de aplicaciones – se utilicen para asegurar el sistema objetivo. Afortunadamente, la política predeterminada de SELinux impide la carga de módulos externos que no están en los directorios de módulos de Samba, por lo que no se puede activar la vulnerabilidad.

    Más información sobre ciberseguridad

    A diferencia de WannaCry, SambaCry es una vulnerabilidad de ejecución de código remoto, no un ransomware. Si se explota, otro sistema podría subir código a una parte de Samba grabable y luego ejecutarlo con privilegios de root para ejecutar el código a través del proceso smdbd, posiblemente comprometiendo o infectando el servidor de destino. Requiere ser capaz de utilizar credenciales de autenticación contra el sistema de destino, pero si las contraseñas son débiles o inexistentes, esto se puede lograr fácilmente.

    Las actualizaciones de Samba están disponibles en Red Hat a través de sus soluciones Satellite y Subscription Management, que proporcionan opciones centralizadas de gestión de parches. Asumiendo que sus sistemas Red Hat están suscritos a estos servicios (o que tiene un método propio para usar los repositorios yum para liberar parches en los sistemas), la actualización de Samba debería estar disponible si no está ya implementada (le recomiendo encarecidamente que compruebe el estado de esta actualización a través de su consola de gestión. Si estás creando tus propios parches y actualizaciones puedes obtener la última versión segura de Samba (4.6.5) aquí.

    Es probable que tenga una programación regular para las instalaciones y que pueda programar la instalación de esta actualización desde un punto de administración centralizado si no está presente en sus sistemas. Sin embargo, si está trabajando en la actualización manual, no todos los sistemas se comprueban en una solución de gestión de parches o si necesita una metodología de actualización práctica, puede seguir los siguientes procesos una vez que se haya asegurado de que la actualización de Samba está presente en su repositorio de yum.

    Si su servidor está basado en GUI, acceda a Sistema / Administración / Actualización de software (o ejecute el comando gpupdate-viewer) e instale la actualización a través de la ventana resultante.

    Esto es tedioso, sin embargo, así que aconsejo actualizar Samba a través de la línea de comandos:

    1. Escriba yum makecache (esto descarga todos los metadatos recientes de sus repositorios yum.

    2. Escribe yum update (o yum update samba para actualizar sólo samba.

    3. Confirme que las actualizaciones se han completado correctamente.

    3. Escriba service smbd restart para reiniciar el servicio smbd.

    4. Escribe yum info samba para verificar la versión actualmente instalada de Samba.

    Obviamente no tendría sentido ejecutar este comando manualmente en múltiples sistemas, por lo que podría armar un simple script bash que utilice un»for loop». Coloque todos los nombres de host de su servidor en un archivo (por ejemplo, servers.txt) y luego cree un archivo de script que contenga lo siguiente:

    para l en `cat servers.txt`; do ssh -q $ql yum makecache; hecho

    para l en `cat servers.txt`; do ssh -q $ql yum update samba; hecho

    para l en `cat servers.txt`; do ssh -q $ql yum service smdb restart; hecho

    para l en `cat servers.txt`; do ssh -q $ql yum info samba; hecho

    (tenga en cuenta que «para l» representa «para l como en la letra minúscula l».

    Haga que el archivo de script sea ejecutable (chmod +x) y luego apáguelo y sus sistemas deberían estar en buena forma.

    También es posible mitigar la amenaza a través de una base manual si no puede parchear sus sistemas por alguna razón. Esto implica montar el sistema de archivos compartidos Samba en uso con la opción «noexec» para bloquear el exploit.

    Para hacerlo:

    1. Edite el archivo smb.conf y busque la sección[global].

    2. Añada el parámetro: ~~~ nt pipe support = no ~~~~3. Guarde el archivo.

    4. Reinicie el servicio Samba (service smbd restart.

    Tenga en cuenta que esto puede afectar o desactivar el acceso u otras funciones utilizadas por los clientes de Windows, así que asegúrese de realizar una prueba antes de realizar la implementación en un entorno de producción.

    Por supuesto, también puede usar un bucle for para enviar el archivo a sus sistemas de destino (normalmente bajo /etc/samba/smb.conf) y reiniciar el servicio Samba en todos sus servidores si es necesario. Como se ha descrito anteriormente, coloque todos los nombres de host de su servidor en un archivo (por ejemplo, servers.txt), asegúrese de que el archivo smb.conf ha sido actualizado (asumamos que está en /etc/samba/smb.conf) y, a continuación, cree un archivo de script que contenga lo siguiente:

    para l en `cat servers.txt`; do scp /etc/samba/smb.conf $l:/etc/samba; hecho

    para l en `cat servers.txt`; do ssh -q $ql service smdb restart; hecho

    Haz que el archivo de script sea ejecutable (chmod +x) antes de ejecutarlo, por supuesto.

    Otro método de mitigación es la implementación de redes segregadas, algo de lo que soy un gran fan desde el punto de vista organizativo y de seguridad. Si sus servidores Samba están en una red separada de amenazas potenciales y el tráfico entre las dos redes está siendo bloqueado, SambaCry no puede ser aprovechado. Por supuesto, puede que no sea una solución de la noche a la mañana, pero hay que tenerla en cuenta para el futuro, ya que sin duda puede ayudar a proteger contra las vulnerabilidades que en torno a ella se descubrirán en el futuro.

    Para más consejos sobre cómo tratar con SambaCry, consulte este otro artículo de ConsejoTecnologico.com: Cómo proteger el Samba de la hazaña del SambaCry

    Boletín Semanal de Código Abierto

    No se pierda nuestros consejos, tutoriales y comentarios sobre el sistema operativo Linux y las aplicaciones de código abierto. Entregado los martes

    mismo

    Véase también