docker build -t shpath .
docker run -d --restart always -p 5000:5000 shpath
- Iniciar Ação: Clique no botão de login na página principal.
- Tentativa de Acesso: Utilize o e-mail contato@wicked.com (encontrado na página principal) e a lista de palavras "rockyou.txt" para tentar acessar o painel de autenticação.
- Senha: A senha "azerty" está na linha 2674 da lista de palavras.
- Observação da Bandeira: Após a autenticação, localize e observe a bandeira correspondente.
- Acesso ao Painel:
- Google Chrome: Abra as ferramentas de desenvolvedor usando "Inspecionar" e encontre "Cookies" na guia "Application".
- Mozilla Firefox: Use "Inspecionar Elemento" para acessar as ferramentas de desenvolvedor e localize "Cookies" na guia "Storage".
- Microsoft Edge: Acesse as ferramentas de desenvolvedor com "Inspecionar" e encontre "Cookies" na guia "Application".
- Identificação do Token: Encontre o "SessionToken" obtido após o login.
- Decodificação do Token: Use o site jwt.io para decodificar o token JWT.
- Localização da Bandeira: Procure a bandeira no campo "flag" do token decodificado.
- Acesso ao Painel:
- Google Chrome: Abra as ferramentas de desenvolvedor usando "Inspecionar" e encontre "Cookies" na guia "Application".
- Mozilla Firefox: Use "Inspecionar Elemento" para acessar as ferramentas de desenvolvedor e localize "Cookies" na guia "Storage".
- Microsoft Edge: Acesse as ferramentas de desenvolvedor com "Inspecionar" e encontre "Cookies" na guia "Application".
- Observação do Token: Identifique o "SessionToken".
- Decodificação do JWT: Use jwt.io para decodificar o token JWT.
- Alteração de Perfil: Mude o valor de "role" de "employee" para "admin".
- Substituição do Token: Troque o token antigo pelo novo com o parâmetro modificado.
- Acesso à Administração: Vá para "/dashboard".
- Atenção à Bandeira: Observe a bandeira na rota de administração.
- Início do Processo: Clique no botão de "download" para obter o modelo XML.
- Verificação da Bandeira: Confira o valor da bandeira no campo "flag" do XML baixado.
- Edição do XML: Atente-se ao campo
<city>New York</city>
no modelo XML:
<city>New York</city>
Altere para:
<city>&xxe;</city>
Acrescente também o cabeçalho de entidades externas no XML
<!DOCTYPE replace [<!ENTITY xxe "file:///etc/passwd"> ]>
- Upload do XML Modificado: Realize o upload do XML alterado através do botão "upload":
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE replace [<!ENTITY xxe "file:///etc/passwd"> ]>
<root>
<person>
<name>John Doe</name>
<company>Wicked</company>
<city>&xxe;</city>
<flag>TAC_2023{b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7q8r9s0t1u2v</flag>
</person>
</root>
- Observação da Bandeira: Fique atento ao valor da bandeira na senha do último usuário após o upload.