반응형
문제분석 & 풀이
문제에 접속하면 다음과 같이 Nonogram 게임 판이 나온다.
nonogram은 일본의 퍼즐게임으로 규칙은 인터넷에 치면 나온다.
nonogram 문제를 해결하면 위와 같은 페이지로 넘어간다. 유저의 이름을 입력하면 유저이름,정답,IP의 형태로 기록이 남는 것 같다.
페이지의 취약점을 찾기 위해 개발자도구(F12)를 이용하여 소스를 보았다.
유저의 이름을 입력한 후 기록을 남기는 과정에서 index.php로 값을 전송하는데
이때, "answer"이라는 이름을 가진 값을 hidden으로 같이 보내는 것을 확인 할 수 있는데
이 부분이 유일하게 sqli가 가능해보이는 부분이다.
만약 sqli가 가능하다면? 서버의 DB에 정답이 저장되어있다면? 서버쪽 코드에서는 select [answer] from [table] where answer='${answer}' 과 같은 쿼리로 정답을 찾아 맞는지 안맞는지 판별을 할 수도 있겠다고 생각해보았다.
(위 생각은 추측이며 실제로는 틀릴 수도 있다.)
위 생각을 전제로 "answer" 의 값을 변경하여 sqli가 통하는지 간단한 쿼리를 통해 시도해보았다.
sqli 가 되는지 테스트만 해보았는데 문제가 해결되었다.....??????
클리어!!
반응형