본문 바로가기

 이번에도 음악과 함께 시작이에요.

눈치가 빠른 사람이라면 FLAG 가 뭔지 알수 있겠죠?

 

 

57번 문제에요.

배점은 600점, 분야는 DB에요.

 

입력창과 라디오버튼이 있네요.

소스보기를 눌러볼게요.

 

 

입력받은걸 DB에다가 집어넣는데 성공인지 실패인지도 안알려주고 1% 확률로 집어넣은게 다 날아가네요.

 

그러니 이런식으로 입력을 해도 들어갔는지 모른다는거죠.

암튼

저대로 보내보면

 

 

이런식으로 GET 로 보내주는데

1

자리에 저렇게 출력값이 없는곳에다가 집어넣는 단골손님

 

 

sleep(5)

를 넣어주면

5초뒤에 응답이 와요.

 

 

그러니 이런식으로 해서 조건이 맞으면 sleep가 작동하게끔 구문을 짜고 인젝션을 하면 되겠네요.

 

스크립트에 어차피 출력값이 없으니 __TRUE __FALSE 는 비워두고

조건이 맞으면 sleep(5) 가 되므로

__SLEEP 는 5로 해놓고 돌리면?

 

 

FLAG{Y2U.BE/KMPGJR0EL64}

 

그러니 저걸 Auth 에다가 넣으면?

 

빠밤!

 

문제가 풀렸네요.

 

그리고 유튜브 주소는 대소문자 구분하는데 저걸 어떻게 찾았냐고요?

다풀고 구글링해봤어요.

딱봐도 수상해보이잖아요.

댓글