A saída sem cuidado
O widget de chat da CampoClaro está em reply.cjs, com o mesmo modelo de brinquedo (model.cjs). O app pega a resposta do modelo e a coloca numa página como HTML, sem escapar nada, e depois entrega essa página a um navegador de brinquedo. O navegador de brinquedo nao desenha de verdade: ele só avisa quando o HTML contém conteúdo ativo (um script ou um manipulador de evento), porque isso rodaria num navegador real.
O truque é que a resposta do modelo depende da sua entrada. Faça o modelo responder com um trecho de HTML ativo e veja o navegador de brinquedo dispará-lo.
A flag é o código que o navegador de brinquedo imprime quando o conteúdo ativo roda.
A flag tem a forma tocaia{...}, por exemplo tocaia{safe_render} (que nao é a resposta).
Arquivos do desafio
Tudo se resolve com ferramentas gratuitas.
Entre para ver o assunto deste desafio.
A solução comentada aparece depois que você resolve.