Outra vulnerabilidade en Apache httpd que permite o acceso fóra do directorio raíz do sitio

Atopouse un novo vector de ataque para o servidor http Apache, que non se corrixiu na actualización 2.4.50 e permite o acceso a ficheiros desde áreas fóra do directorio raíz do sitio. Ademais, os investigadores atoparon un método que permite, en presenza de determinadas configuracións non estándar, non só ler os ficheiros do sistema, senón tamén executar de xeito remoto o seu código no servidor. O problema só aparece nas versións 2.4.49 e 2.4.50; as versións anteriores non se ven afectadas. Para eliminar a nova vulnerabilidade, lanzouse rapidamente Apache httpd 2.4.51.

No seu núcleo, o novo problema (CVE-2021-42013) é completamente similar á vulnerabilidade orixinal (CVE-2021-41773) na 2.4.49, a única diferenza é unha codificación diferente dos caracteres "...". En particular, na versión 2.4.50 bloqueouse a posibilidade de usar a secuencia "%2e" para codificar un punto, pero non se perdeu a posibilidade de dobre codificación - ao especificar a secuencia "%%32%65", o servidor decodificouno. en "% 2e" e despois en " .", é dicir. os caracteres "../" para ir ao directorio anterior poderían codificarse como ".%%32%65/".

En canto á explotación da vulnerabilidade mediante a execución de código, isto é posible cando se activa mod_cgi e se utiliza a ruta base na que se permite a execución de scripts CGI (por exemplo, se se habilita a directiva ScriptAlias ​​ou se especifica a marca ExecCGI no Directiva de opcións). Un requisito obrigatorio para un ataque exitoso tamén é proporcionar acceso explícito a directorios con ficheiros executables, como /bin, ou acceso á raíz do sistema de ficheiros "/" na configuración de Apache. Dado que tal acceso normalmente non se concede, os ataques de execución de código teñen pouca aplicación aos sistemas reais.

Ao mesmo tempo, segue sendo relevante o ataque para obter o contido de ficheiros de sistema arbitrarios e textos fonte de scripts web, lexibles polo usuario baixo o que se está a executar o servidor http. Para levar a cabo tal ataque, abonda con ter un directorio no sitio configurado mediante as directivas "Alias" ou "ScriptAlias" (DocumentRoot non é suficiente), como "cgi-bin".

Un exemplo de exploit que che permite executar a utilidade “id” no servidor: curl 'http://192.168.0.1/cgi-bin/.%%32%65/.%%32%65/.%% 32%65/.%% 32%65/.%%32%65/bin/sh' —datos 'echo Content-Type: text/plain; eco; id' uid=1(daemon) gid=1(daemon) grupos=1(daemon)

Un exemplo de exploits que permite mostrar o contido de /etc/passwd e un dos scripts web (para emitir o código do script, débese especificar o directorio definido a través da directiva "Alias", para o que a execución de scripts non está activada). como directorio base): curl 'http://192.168.0.1 .32/cgi-bin/.%%65%32/.%%65%32/.%%65%32/.%%65%32/.% %65%192.168.0.1/etc/passwd' curl 'http: //32/aliaseddir/.%%65%32/.%%65%32/.%%65%32/.%%65%32/. %%65%2/usr/local/apacheXNUMX/cgi -bin/test.cgi'

O problema afecta principalmente a distribucións actualizadas continuamente como Fedora, Arch Linux e Gentoo, así como aos portos de FreeBSD. Os paquetes das ramas estables das distribucións de servidores conservadoras Debian, RHEL, Ubuntu e SUSE non se ven afectados pola vulnerabilidade. O problema non ocorre se o acceso aos directorios é denegado explícitamente mediante a configuración "requirir todo denegado".

Fonte: opennet.ru

Engadir un comentario