문제. 바로 실행파일을 다운로드 해보았다.
디버거에 올리기 전 실행
기본 세팅값으로 'Register now!'를 눌렀고 역시나 틀림.
디버거에 올려서 한줄실행도 해보고 구조 좀 파악해보려고 했는데 딱히 힌트가 없어서
우클릭 > Search for > All intermodullar calls 을 했는데 어허. 아무것도 보이지 않는군.
검색해보니 실행파일이 패킹되어 있어서임을 알 수 있었다. 그럼 당장 언팩 하러 upx를 다운 받는다.
🔽upx 다운로드
https://github.com/upx/upx/releases/tag/v3.96
여기서 upx-3.96-win32.zip 을 다운받아 줬다.
upx -d 05.exe 명령어를 통해 언패킹 해줬다.
참고로 upx.exe 파일과 언패킹 해주려는 파일이 한 파일에 있어야 한다. 그 파일에서 명령어를 실행해야 하고.
언패킹을 해준 뒤는 모듈들이 잘 보인다. 그런데 유의미해보이는 명령어들에 들어가도 힌트를 찾지 못했다.
우클릭 > Search for > Text strings referenced 에서 코드에 참조되는 문자열들을 찾았다.
여기서 성공 문자열과 실패 문자열을 발견할 수 있었다.
성공 문자열을 타고 들어오니 바로 위에 시리얼키 GFX-754-IER-954가 보인다.
정답키와 사용자가 입력한 키를 비교해서 틀리면 아래 실패 문자열 주소로 jump 하도록 되어있고 성공이면 그대로 코드가 진행돼 성공 문자열을 띄우게 되어있다.
[CodeEngn] Basic RCE L07 Write-Up (0) | 2022.03.24 |
---|---|
[CodeEngn] Basic RCE L06 Write-Up (0) | 2022.03.24 |
[CodeEngn] Basic RCE L04 Write-Up (0) | 2022.03.22 |
[CodeEngn] Basic RCE L03 Write-Up (0) | 2022.03.20 |
[CodeEngn] Basic RCE L02 Write-Up (0) | 2022.03.20 |