Skip to main content

CTF Fetch the Flag 2023 da Snyk: solução de Silent Cartographer

Escrito por
snyk ctf silent cartographer

30 de novembro de 2023

0 minutos de leitura

Obrigado 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.

Demonstração de cibersegurança em tela dividida, mostrando a saída de um exploit do Covenant, um shell root e o console de um túnel ngrok

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!

Publicado em: