3
respostas

nao consigo passar da parte de admin no portswigger com o burbsuite

cheguei na parte de usar o burbsuite no portswigger porem quando preciso alterar os cookies, não tem nada escrito para eu conseguir acessar a parte de adminstrador do laboratorio

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
3 respostas

E ai Raphael. Tudo bem?
Antes de começarmos...

Lembrete: faça isso apenas em labs, ambientes de teste ou com autorização.
Testes em sistemas alheios sem permissão são ilegais.

Passos práticos (modo direto — interceptando e editando o cookie)

  1. Abra o Burp Suite e confirme que o Proxy → Intercept está ligado.
  2. No navegador (configurado para usar o proxy do Burp), acesse a página do laboratório até gerar a requisição que contém o cookie (normalmente ao carregar/entrar numa página).
  3. Quando o Burp interceptar a requisição, você verá o pedido HTTP bruto no painel. Localize o cabeçalho Cookie: (ou Authorization: se o lab usar header).
  4. Edite diretamente a linha do cookie no painel (você pode clicar e alterar o texto). Exemplos de mudanças comuns:
    • Cookie: session=abcdef; role=guest → editar para Cookie: session=abcdef; role=administrator
    • Cookie: auth=1Cookie: auth=admin
    • Cookie: is_admin=falseCookie: is_admin=true
  5. Clique em Forward (ou envie a requisição) e veja a resposta — verifique se você recebeu a página/admin.

Usando Repeater (mais seguro para testar várias variações)

  1. No Proxy (ou HTTP history) clique com o botão direito na requisição e escolha Send to Repeater.
  2. Vá para a aba Repeater, edite o cabeçalho Cookie: diretamente no request bruto.
  3. Envie (click “Go”) e observe a resposta. Repita variações até achar a que funciona.

Se o cookie estiver codificado (Base64, JSON, JWT etc.)

  • Base64 / JSON simples:
    1. Copie o valor do cookie (por exemplo eyJ1c2VyIjoidXN1cmlvIiwicm9sZSI6Imd1ZXN0In0=).
    2. No Burp use Decoder (aba Decoder → Paste as Raw → Decode as Base64).
    3. Modifique o JSON (por exemplo "role":"administrator"), re-encode em Base64 e cole no Cookie.
  • JWT (token com três partes header.payload.signature):
    • Você pode decodificar header e payload localmente (ex.: jwt.io) para ver o conteúdo.
    • Atenção: se o token for assinado e o servidor valida a assinatura, simplesmente alterar o payload quebrará a assinatura e o servidor pode rejeitar.
    • Em labs o tipo de desafio às vezes permite manipular alg para none ou usar chaves previsíveis — mas essas técnicas dependem do laboratório específico.

Extras

  • Se não ver o Cookie: header, verifique se a requisição é do mesmo domínio do lab (cookies são enviados só para o domínio correto).
  • Veja também cabeçalhos Authorization: e Set-Cookie nas respostas — às vezes a sessão é controlada por outro header.
  • Use o HTTP History (Proxy → HTTP history) para encontrar requisições que contenham cookies e trabalhar nelas.
  • Se o cookie parecer criptografado (bytes aleatórios), pode ser que o laboratório exija outra técnica (ex.: SQLi para recuperar segredo, ou exploiting de outra rota).
  • Tenha em mente diferenças entre Cookie (enviado para servidor) e Set-Cookie (o servidor envia para o cliente).

Exemplo :

Requisição interceptada (antes):

GET / HTTP/1.1
Host: target.lab
Cookie: session=abc123; role=guest

Editar para:

GET / HTTP/1.1
Host: target.lab
Cookie: session=abc123; role=administrator

Enviar e ver se aparece a área admin.

Lembrete: faça isso apenas em labs, ambientes de teste ou com autorização.
Testes em sistemas alheios sem permissão são ilegais.

Então testa ai e me de um feedback.
Bons estudos e muita calma nesta hora.
"Com grandes poderes vem grandes responsabilidades."
Até...
:)

fiz estes passos, porém ele apenas aparece para mim o cookie e a sessão, por acaso fiz algo de errado ?

Olá amigo.
Vamos seguir os passos abaixo e conferir os resultados:

  • Ative o Proxy → Intercept (ou abra Proxy → HTTP history).

  • Localize o pedido que vai ao servidor quando você tenta acessar /admin (ou qualquer rota que deveria mostrar a área admin).

  • Clique com o direito → Send to Repeater (é mais fácil para testar modificações).

  • No Repeater, no painel da esquerda, edite o cabeçalho Cookie: manualmente.
    Exemplo de cabeçalho original:

    Cookie: session=abc123; other=val
    

    Altere para algo que o laboratório pede (ou teste hipóteses):

    Cookie: session=abc123; admin=true
    

    ou:

    Cookie: session=administrator
    
  • Clique em Send e veja a resposta do servidor. É desse request que vem a autorização.

    Observação: você sempre edita o Cookie: dentro do request (cabeçalhos). Mesmo cookies marcados HttpOnly não impedem que você os edite no Burp — HttpOnly só bloqueia acesso via JavaScript no navegador, não bloqueia edição no proxy.

  • Abra DevTools (F12) → Application → Cookies e veja os nomes dos cookies que o site usa (ex.: session, auth, role, admin, sessionid).

  • O nome que você precisa alterar tem que ser exatamente o mesmo que o servidor espera — Admin, admin, isAdmin são diferentes entre si.

  • Se existir um cookie role ou isAdmin, mude para admin / true / 1 e faça o request.

  • Se existir um cookie username, altere para administrator.

  • Se existir um cookie JWT (3 partes separadas por .): decodifique a payload base64, mude "role":"user" para "role":"admin" e reenvie — mas se o JWT for assinado, o servidor vai detectar a assinatura inválida. (Se for laboratório vulnerável, às vezes o JWT não é verificado ou usa alg: none.)

  • Se for apenas um session (token aleatório) e o servidor valida no backend, alterar o valor para um outro token aleatório não gera admin. Nesses casos precisa encontrar outro cookie/parametro vulnerável ou um token de admin fornecido pelo lab.

  • Alguns endpoints exigem CSRF token em formulário. Se você altera o cookie mas não envia o token apropriado, o servidor pode negar.

  • Intercepte a resposta que contém Set-Cookie (login) e veja se há outros parâmetros escondidos (ex.: Set-Cookie: session=...; HttpOnly; Path=/; e no corpo um token CSRF).

  • Se o request não contém Cookie: ..., o servidor não está recebendo cookie algum — talvez você esteja usando o browser sem cookies, ou acessando URL errada ou o cookie tem Path/Domain que não cobre essa rota.

  • Confirme no DevTools se o cookie existe e se o domínio/path batem com o site que está testando.

  • Ative Intercept, faça a ação no browser para gerar o request, Burp o captura; clique em Action → Edit request e modifique o header Cookie: antes de Forward.

Mensagens de erro comuns:

  • Continua mostrando área normal / não admin → provavelmente o servidor ignora o cookie alterado (p. ex. cookie é um ID de sessão verificado no servidor).
  • Erro 403 / 401 → talvez falte token CSRF ou troca de sessão inválida.
  • Não há diferença → você pode não ter alterado o cookie certo (nome/valor incorreto) ou o request alterado não foi realmente enviado.

**Checklist **

  1. Está usando o browser configurado com Burp como proxy?
  2. Intercepte o request exato que carrega a página admin (ou o request protegido).
  3. Envie para Repeater e edite o cabeçalho Cookie: manualmente.
  4. Teste variações: admin=true, role=admin, username=administrator.
  5. Veja respostas (200 / 302 / 403) e compare o HTML retornado (procure por texto “administrator”/painel).
  6. Se for JWT: decodifique a payload (base64), veja se tem role ou isAdmin, teste alterar.
  7. Se nenhuma alteração funciona, provavelmente o backend valida a sessão em servidor — então tente buscar outro vetor (parametros, cookies adicionais, upload, enumeração).

Testa ai e veja o que acontece.
Segue os passos um a um e vai observando os resultados.
Se precisar de ajuda ou quiser dar um feedback comente ai.
Bons estudos.
Até...
:)