https://hackerone.com/reports/429679
오늘도 역시 XSS 건 입니다. XSS가 웹에서 가장 많이 발생하는 취약점 인데요. XSS 만 클립핑하는 이유가 가장 난이도가 낮고, 찾기도 쉽기 때문입니다? 라는데 어제 네이버랑 해커원에서 진행하는 한 사이트에서 버그바운팅을 진행하였는데 전혀 모르겠더라구요.. 당연히 잘 알려진 공격기법들은 다 막혀있고, 필터링 되어집니다. 공격구문은 그렇다치고 그 취약한 포인트를 찾는게 정말 힘든 것 같습니다.
쨌든 이 보고서를 살펴보면, 포인트를 딱 잡아서 간단한 공격구문을 주입해서 공격을 성공시켰습니다.
먼저 취약점이 발생한 부분인데요. 동그라미 쳐진 부분을 보시면, name 파라미터에 값을 넣는 곳이 있는데, 버그를 발견하신 분의 설명에 따르면 무언가 app을 등록할 때, app name을 받는데 app name에 대한 검증이 없어서 문제가 발생합니다. 받은 데이터를 화면에 뿌려주는 과정에서 <script type="application/id+json">{ 이렇게 구문이 시작되는데, app name에 대한 검증이 없기떄문에 name에 </script>를 넣어서 앞의 구문을 끝내준 후, <iframe onload=alert()> 를 통하여 XSS를 발생시켰습니다.
이렇게 말이죠. 참 공격구문은 뭐 방화벽우회라던지, 복잡하지 않고 그냥 단순한 공격구문인데도 불구하고 성공시켰습니다. 중요한건 앞에도 말했지만 공격포인트를 잡는것 같습니다.
일단 여러가지 욕심내지말고 XSS부터 파보기로 결심했습니다.
'Security > BugBounty Study' 카테고리의 다른 글
버그바운티(Bug Bounty) Write-up / Stored XSS (0) | 2019.04.06 |
---|---|
버그바운티(Bug Bounty) Write-up / Path Disclosure ($50) (0) | 2019.04.05 |
버그바운티(Bug Bounty) Write-up / DOM Based XSS ($500) (0) | 2019.04.03 |
버그바운티(Bug Bounty) Write-up / DOM Based XSS ($500) (0) | 2019.04.02 |
버그바운티(Bug Bounty) Write-up / Stored XSS ($750) (0) | 2019.04.01 |