EYEN

dreamhack racewithme write-up 본문

Wargame/pwn

dreamhack racewithme write-up

EYEN 2025. 1. 4. 10:51

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

Race with me?

빠르게 달려볼까요~?

dreamhack.io

파일은 chall과 flag가 주어진다.
 
#1 코드

flag파일을 읽어서 v5에 저장하는 듯 하다.
이후에 input을 받고 input이 4면 v5를 할당해제하고 4보다 크면 invalid menu라고 출력한다.

input이 3,1,2면
3일 경우 전역변수 qword_4030이 3735928559(16진수로 deadbeef)면 flag를 출력하고 아니면 don't have permission을 출력.
1일 경우 input을 받아 qword_4038에 저장
2일 경우 pthread_create를 실행하는데 여기서 sub_14E3이 

이렇게 된다. qword_4038이 3735928559가 아닐 때만 qword_4030=qword_4038로 바꿔주는 것을 알 수 있는데, 이때 중간에 sleep(10)이라는 부분이 있다.
 
 
난 2번함수의 존재가 워게임이니까.. 이거 실행하라고 한거겠지... 했는데 친구가 레이스 컨디션 같다고 알려줬다.
그래서 input에 2를 넣어준 후 10초동안 input으로 1넣고 3735928559 넣기를 수행한 후 조금 기다렸다가 input으로 3을 넣어주면 flag가 나온다.

문제에 있는 코드중에 이상한 게 있다면 왜 이 함수가 있어야만 했는지 생각해보자

'Wargame > pwn' 카테고리의 다른 글

시스템 보안 11주차  (0) 2024.11.12
겨울방학 ctf 프로젝트 basic_rop_x64 발표자료  (0) 2023.02.26
canary가 할당되는 경로 확실히 알기  (0) 2023.02.25
Dreamhack-basic_rop_x64  (0) 2023.02.17
Dreamhack-stack canary/ r2s  (0) 2023.01.29