old-18 풀이
2023. 12. 22. 23:40ㆍwebhacking.kr
728x90

페이지에 들어가자마자 SQL INJECTION이라고 대놓고 알려주고 있습니다

소스를 보니 id가 admin이어야 문제가 풀리는 것으로 보입니다
(노란색 주석으로 admin의 no는 2라고 추가 힌트를 줬네요)
preg_match() 안에 필터링되는 문자들이 적혀있습니다
저 문자들을 피해서 쿼리를 작성하고, URL에 GET 방식으로 보내주면 문제가 해결될 듯합니다
select id from chall18 where id='guest' and no=$_GET[no]
SQL문을 보니 id는 guest로 설정되어있는 상황입니다
그렇다면 no=$_GET[no] 부분을 거짓으로 만들고, 뒤에 추가적으로 or no=2를 붙여주는 식으로 접근해야 할 듯합니다

위와 같이 쿼리를 작성해 주고 엔터를 누르면

문제가 풀리는 것을 확인할 수 있습니다
728x90