본 포스팅은 학습 목적으로 작성되었으며, hackerone report를 기반으로 작성되었습니다.
-분석 레포트-
https://hackerone.com/reports/500686
Summary
트위터 모바일 사이트가 로드할 수 없는 URL은 해당 URL을 포함하는 모든 페이지를 깨트린다.
Description
잘못된 16진수 문자로 인해 트위터 모바일 사이트가 손상된다. 예를 들어, mobile.twitter.com/%xx 로 이동하면, 로드되지 않는다.
1) 해당 URL을 다이렉트 메시지로 보내면, 트위터는 더 이상 대화를 로드할 수 없다.
2) 해당 URL을 트윗 하면, 당신을 follow하는 누구든지 트윗을 로드할 수 없다.
추측하건대, 클라이언트 측 Twitter에서 %xx 값을 찾으려고 시도하는 것이 불가능해서 오류가 발생하는 것 같다.
Steps To Reproduce
1. mobile.twitter.com/ 으로 이동한다.
2. mobile.twitter.com/%xx 를 전송하거나, 트윗 한다.
3. 당신과 당신의 follower들은 mobile site에서 모든 트윗을 볼 수 없게 된다.
Impact
해당 이슈는 오로지, mobile.twitter.com에서 행해진다. ( IOS, Android 및 twitter.com/ 에서는 작동하지 않는다. )
그러나 트위터 앱이 없는 모든 트위터 모바일 사용자는 영향을 받을 수 있다.
추가적으로, 제보자는 위의 레포트에 더하여, 추가적인 영향을 아래와 같이 제시하였다.
새로운 twitter GUI로 전환하면서, twitter.com에서 버그를 성공적으로 exploit할 수 있었다.
Stepts to Reproduce
1. twitter.com 을 이동한다.
2. 오른쪽 상단 모서리에 있는 프로필 이미지를 클릭후, 새 트위터 사용해 보기(최신 옵션)을 클릭한다.
3. 트위터가 mobile.twitter.com과 똑같이 보이는 새 GUI로 전환되므로 이제 twitter.com과 mobile.twitter.com 모두에 영향을 줄 수 있다.
또한 제보자는 트위터 사용자가 새 GUI로 전환하도록 강제할 수 있는 URL을 twitter.com에서 찾아냈다.
1)로그인 2) twitter.com/i/onboarding/verify 이동 3) Got it 버튼 클릭
위와 같은 과정을 거치면, 취약한 트위터 GUI로 전환되며, 영향을 더욱 증가시킬 것이다.
Uncontrolled Resource Consumption 라는 취약점 명으로 바운티를 받은 것으로 보여 좀 신기했다.