exe 파일이고 실행하면 xor을 해주는 계산기가 뜬다 ida로 까보면 여기서 선택지는 4갠데 5개의 경우로 나눠져 있다.
4를 입력하면 히든 메뉴로 이동한다.
히든 메뉴에서 게임을 실행하면 stage5개와 디버깅을 탐지하는 부분으로 이루어져있다.
367423109와 입력값을 연산한 값이 [S[X]DWYJ^가 되는 값을 찾으면 되는 거였다.
이 방식으로 stage5도 풀 수 있음.
stage1 : yamyambugs
stage5 : hellowfish
문자열을 비교하는 stage 1, 5
디버깅 탐지
mac address비교
레지스트리 키 값 확인
문자열은 stage 1, 5에서 한 번씩 입력받고 stage 2, 3, 4와 디버깅 탐지를 통과해야 하는데 mac address와 레지스트리 키 값 확인은 맞을 때와 맞지 않을 때를 각각 해볼까 하다가 있는게 좋은거라 생각하고 if문이 무조건 참일 때로 실행되게 비교값을 수정해줬다.
모든 스테이지를 통과하면 c라는 파일이 생성되는데 hxd로 열어보면 png 파일인 걸 알 수 있기 때문에 확장자명을 png로 해주면 키 값이 적힌 사진을 얻을 수 있다.
str1="[S[X]DWYJ^"
str2="3674231096"
comp_str="MVYLXYUARJ"
v45="47459"
key1=""
for i in range(len(comp_str)):
key1+=chr(ord(comp_str[i])^ord(v45[i-5*(i/5)]))
print key1
comp_str2=""
for i in range(10):
comp_str2+=chr(ord(str1[i])^ord(str2[i]))
print comp_str2
'Write Up > CTF' 카테고리의 다른 글
[CTF]encrypt (0) | 2018.01.14 |
---|---|
[CODEGATE2017]HelloProtector (0) | 2018.01.07 |
Defcon CTF 2017 Witchcraft (0) | 2017.07.08 |
Defcon CTF 2017 Alchemy (0) | 2017.07.08 |
Defcon CTF 2017 Sorcery (0) | 2017.07.05 |