CTF Fetch the Flag 2023 da Snyk: solução de Silent Cartographer
30 de novembro de 2023
0 minutos de leituraObrigado por participar do Fetch conosco! Parabéns aos milhares de jogadores que participaram do CTF Fetch the Flag. Se você esteve no Fetch the Flag 2023 da Snyk e está procurando a resposta para o desafio Silent Cartographer, veio ao lugar certo. Vamos resolver juntos!
Silent Cartographer é um desafio de exploração de aplicativo web no estilo point-and-pwn. O aplicativo web em questão é o framework Covenant C2. De acordo com esta página do exploitDB e esta publicação no blog, todas as versões do Covenant anteriores à 0.5 usavam a mesma chave secreta JWT nas compilações padrão. No Covenant, o JWT é usado para autenticar usuários na interface web do Covenant, que permite criar e controlar agentes C2. Se alguém conseguir forjar um JWT usando a chave secreta vazada, poderá atribuir a si mesmo credenciais de administrador, fazer login e causar estragos no servidor.
Silent Cartographer é basicamente um exercício de identificar o aplicativo em questão (Covenant), pesquisar exploits conhecidos para ele, adaptar o POC publicado, executá-lo e lidar com o shell reverso recebido. Um detalhe importante é que as APIs do desafio só expõem as portas 7443 (o console de administração do Covenant), 80 e 443. O exploit cria um novo listener no servidor, que será associado aleatoriamente a uma porta na faixa dos 8000. Isso não vai funcionar, pois precisamos criar um grunt e fazer com que ele se comunique com o novo listener explorado, mas só temos a porta 80 disponível. Para isso, podemos alterar o código do exploit para forçar o novo listener a usar a porta 80.
Como acontece em muitos outros desafios CTF, o endpoint vulnerável está exposto na internet. Por isso, para receber o shell, é preciso usar um túnel como o Ngrok para criar um listener com encaminhamento de porta.

Obrigado por fazer o Fetch acontecer!
Um enorme agradecimento a todas as equipes do Fetch the Flag 2023! Foi ótimo ver todo mundo por lá. Você sempre pode me encontrar no YouTube.
Confira as soluções dos outros desafios de 2023!
