-
[Bugbounty Study] #Google _ XSSStudy/Bugbounty Study 2020. 3. 30. 23:55
# Google Translator XSS _ \$3133.70
https://medium.com/monetary/how-did-i-earn-3133-70-from-google-translator-9becf942dbdc
베트남어를 영어로 번영하는 과정에서 우연히 태그가 들어갔고,
아래와 같이 <h1> 태그가 적용되어 출력되는 것을 확인할 수 있었다.
개발자 도구(F12)를 이용하여 HTML 태그가 실행되고 있는 것을 확인하였다.
Google은 encode HTML 태그를 필터링하고 있지 않았고, 이를 이용한 XSS가 가능하였다.
베트남어가 아닌 다른 언어에서는 HTML 태그가 필터링되어 불가능하다.
HTML snippets*을 사용하여 domain name과 사용자의 session을 볼 수 있도록 하는 board를 생성하였다.
(*snippets : 재사용 가능한 소스코드, 기계어, 텍스트의 작은 부분을 일컫는 프로그래밍 용어 _ 위키백과)
아래와 같은 단어 제안을 표시하도록 XSS를 트리거하는 구문을 입력하여야 하는 점이 어려웠다.
[PoC]
<iframe onload=”javascript:prompt(document.domain, document.cookie)” id=”xss” role=”xss”>hello xss
[취약점 발생 사진]
해당 코드를 피해자에게 전송하여 코드가 실행되는지 알아보았고, 아래 URL을 통해 XSS가 실행되었다.
[PoC _ URL]
https://translate.google.com/?hl=en#view=home&op=translate&sl=vi&tl=en&text=%3Ciframe%20onload=%22javascript:alert(document.domain)%22%20id=%22xss%22%20role=%22xss%22%3Ehello%20xss
[파라미터 값]
s1 = en : Primary language
t1 = en : Language after translation
text : Paragraphs[PoC Video]
해당 취약점은 처음에 Google에서 sandbox domains으로 생각하여 버그로 인정받지 못하였으나,
translate.google.com은 sandbox domains가 적용되어 있지 않다는 것을 인정받았으며, 보너스를 받았다.
[XSS sandbox domains]
Sandbox domains :
Viruses, Malware, trojans 등 모든 콘텐츠를 포함하는 데 자주 사용되고, 다른 서버에는 영향을 미치지 않는다.
사용자 정보가 있는 메인 서버와 분리되어 있어 안전하다.
[취약점에서 배울 점]
같은 서비스라고 모두 똑같이 구현되어 있다고 생각하지 말고, 다양한 부분에서 공격을 시도해보자.
'Study > Bugbounty Study' 카테고리의 다른 글
[Bugbounty Study] #Bugcrowd _ CSRF (0) 2020.04.13 [Bugbounty Study] #Facebook _ CSRF (0) 2020.04.13 [Bugbounty Study] #Shopify _ Open Redirect to XSS (0) 2020.03.30 [Bugbounty Study] #Mail.Ru _ Account Takeover (2) 2020.03.23 [Bugbounty Study] #Starbucks _ XSS & LFI (0) 2020.03.22 댓글