CTF : SQL Injection 5

DATE : 2023/12/09

이번에도 사이트에 들어가 로그인 한 후, SQLi의 실행 가능 여부를 확인한다!

SQL Injection 3, SQL Injection 4에 이어 이번 문제도 Error Based SQL Injection 문제이기 때문에

우선, 에러를 출력 시킬 수 있는 지 확인해보자.

normaltic' and (extractvalue('1',concat(0x3a,(select 'hanhxx')))) and '1'='1

의도한 대로 에러가 나는 걸 보니 SQLI를 수행할 수 있음을 확인 👏

바로, DB name을 확인하기 위해 Query를 짜보면 아래와 같다.

결과를 보면 DB name, sqli_2_2 값을 얻을 수 있다.

DB name을 알아냈으니, Table name 값도 얻어내 보자!!

첫 번째 table name은 flagTable_this

두 번째 table name은 member!

우리가 관심 있는 건 flag임으로

flagTable_this 안에 어떤 column이 있는 지 확인해보면

flagTable_this의 첫 번째 column은 idx

두 번째 column은 flag이다.

FLAG를 알아내기 위해서는 아마도 flagTable_this의 flag column을 확인해봐야 할 듯하다.

이번에는 여러 column이 들어있는 데 첫 번째 column 값부터 확인해보면

중간에 들어있는

FLAG를 얻을 수 있다. 👍

Last updated