[angstromctf2023]Celeste Speedrunning Association write up

zzsla·2023년 4월 27일
0

문제 정보

I love Celeste Speedrunning so much!!! It's so funny to watch!!!

Here's my favorite site!

문제

문제에 들어가면
Welcome to Celeste speedrun records!!!
Current record holders (beat them at /play for a flag!):
1. Old Lady: 0 seconds
2. Madeline: 10 seconds
3. Badeline: 10.1 seconds
라는 글만 있다.

분석

먼저 이 runner들의 기록을 이겨서 flag를 얻기 위해 /play로 가야한다. 그래서 주소 뒤에 /play를 넣어서 들어간다.
들어가게 되면 Press when done! 이라는 버튼만 하나 있다.

그리고 그 버튼은 누르면 you did not beat all the record holders :( 라는 문구가 뜬다.

취약점

아까 /play에 가서 소스코드를 보면 이렇게 되어 있다.

3번째 줄을 보면 value값을 보면 입력되는 값이 unix time으로 되어 있는 것을 볼 수 있다. 그리고 그 시간은 /play페이지에 들어온 시간이다. 그래서 아무리 빨리 Press when done!을 눌러도 기록이 0seconds인 Old Lady를 이길 수 없는 것이였다.

익스플로잇

Old Lady를 이기기 위해서는 저 value값을 현재시간이 아닌 미래시간으로 바꿔야 한다.

미래시간으로 바꾼 뒤에 Press when done! 버튼을 누르면 flag를 얻을 수 있다.

actf{wait_until_farewell_speedrun}

profile
[README]newbi security hacker :p

0개의 댓글