Webhacking 3번 문제풀이
자 웹 해킹 3번 문제를 풀어보자
음 난해한 화면이다..... 빈칸을 클릭해보니 검은색으로 색칠이 된다.
어릴 때 심심하면 풀어본 스도쿠(?) 같은 느낌이 들어 한번 풀어봤다.
위와 좌측에 적힌 숫자를 참고하여 체크해보니 저런 식으로 표시가 된다. 버튼을 클릭하면 다음 화면으로 넘어간다.
아무생각 없이 이름을 넣어 보았다..
그럼 안풀릴꺼다 본인도 그랬다.
몇 번을 시도 해도 똑같았다.
name은 입력한 대로 잘 출력되고 value(앞에서 풀었던 스도쿠) 값과 ip주소 값이 변함 없이 같은 값으로 출력된다.
바로 F12를 눌러 코드를 살펴 보았다.
name에 어떤 값을 넣든 그대로 출력된다 그렇다면 value를 건드려 보자
value에 sql injection을 사용하여 값이 참이 되게끔 만들자
'or 1=1을 넣어 보았다
query error가 나온다.
음 거의 다온 거 같다!
1010100000011100101011111이 값을 참이 되게 만드는 문제인 거 같다.
혹시나 해서 주석 처리 문도 시도해봤다.
마찬가지로 query error가 나왔다.
다시 한번 싱글 쿼터를 이용해 1010100000011100101011111이 참이 되게 만들어보자
1.value='1010100000011100101011111'
2.value='1010100000011100101011111' or '1' ='1'
2번처럼 되려면? ' or '1' ='1 이 값을 넣어주면 된다 넣어보자!!
입력값은 내 이름으로 아! 주목해야 될 것은 Element의 value 값이다.
보내주면 submit 하면?
풀린다!
음 이 문제 덕에 sql injection이 text영역에 한정된 것이 아닌 다양한 iput태그에 쓰일 가능성이 있다는 사실을 알 수 있었다.