CodeEngn Advance RCE의 04번 문제입니다. 3번 문제와 똑같이 Name이 CodeEngn 일 때의 Serial을 구하라고 하네요. 프로그램을 실행시켜서 시리얼 칸에 아무 값이나 넣어보았더니 실패 문자열이 출력됩니다. 올리디버거로 열어서 분석하겠습니다. 올리디버거 내에서 문자열과 함수 목록이 제대로 보이지 않는 것을 보니 패킹이 되어있는 것으로 보입니다. 한 줄씩 실행시키다 보니 401006이 OEP라는것을 알 수 있었습니다. OEP를 제대로 맞춰주고 덤프를 해주었습니다. strcmp 함수를 이용해서 사용자가 입력한 시리얼값과 어떤 ㅁ값을 비교하고 있습니다. 저 값을 프로그램에 인증해보면.. 정답입니다! 코드엔진 사이트에도 인증해보면.. !!
CodeEngn Basic RCE의 4번 문제입니다. 디버거를 탐지하는 함수의 이름을 묻는 문제입니다. 파일을 다운로드 받아보겠습니다. '04.exe'라는 이름의 실행파일입니다. 실행시켜보겠습니다. 계속해서 '정상'이라는 문자열을 출력하고 있습니다. 그럼 이제 올리디버거로 열어 보겠습니다. 디버거로 열었더니 계속해서 '디버깅 당함'이라는 문자열을 출력합니다. 문제에 나와 있는 대로 해당 프로그램에 디버거를 감지하는 함수가 있어서 디버거로 열었을 때만 다른 문자열이 나오는 것 같습니다. 함수 목록을 확인해보겠습니다. 'IsDebuggerPresent'라는 함수가 보입니다. 검색해보니 IsDebuggerPresent란 PEB 구조체의 디버깅 상태 값을 확인하여 디버깅을 당하고 있다면 1을, 아닐 경우 0을 ..
- Total
- Today
- Yesterday
- unity2d
- Advance RCE
- CodeEngn
- Reversing
- Programming
- 안드로이드
- 풀이
- wargame
- Level 02
- Android
- Level 04
- 17th HackingCamp CTF
- xcz.kr
- pwnable
- C#
- c++
- 멘토링
- Unity
- Basic RCE
- ftz
- 유니티
- Write-up
- Level 03
- Level 06
- Level 05
- HackingCamp
- hackerschool
- Level 01
- 안드로이드 멘토링
- reversing.kr
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |