드림핵 워게임 simple_sqli

손주은·2024년 4월 5일
0

워게임

목록 보기
3/13
post-thumbnail

https://dreamhack.io/wargame/challenges/24/

문제: 로그인 서비스입니다.
SQL INJECTION 취약점을 통해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다.

우선 로그인을 먼저 시도해보면

username: guest/ password: guest 로 입력하면 로그인 가능하지만,
username: admin/ password: admin은 로그인이 불가능하다.



계정 입력 값을 통해 패스워드 검증 부분을 무력화 시켜야함을 알 수 있다

select * from users where userid="admin"--"and userpassword="{userpassword}"')
이렇게 바뀐다면 id로 입력한 admin 뒷부분은 주석처리가 되어 password 검증을 하지 않게 된다.

admin 뒤에 "--를 이용하여 주석처리문을 붙여주면 패스워드 검증 부분이 qurey에서 주석처리가 되어 삭제를 시킨다

select * from users where userid="admin"-- and userpassword=""

따라서 패스워드는 아무거나 입력해도 로그인이 가능하다.

로그인 후 flag를 얻을 수 있다.
flag:
DH{1f136225e316add7bff3349ab1dd5400}

profile
이제 공부 막 시작했어요 ^_^ 파이팅

0개의 댓글

관련 채용 정보