코드엔진 8번 문제 : OEP구하기
우선 주어진 프로그램을 다운받고 열어봅시다.
조그만 계산기네요. OEP를 구하랬으니 PEiD를 열어 패킹되었는지 확인해봅시다.
UPX로 패킹되어있네요! 언패킹해줍시다.
CFF에 파일을 불러온 후 언팩을 누르고 저장을하면
요롷게 언패킹한 파일이 생깁니다.
이제 올리디버거로 언패킹한 파일을 열어봅시다.
짠
OEP는 프로그램의 시작점이므로 답은
에서 앞의 초록부분에 있는 숫자겠네요!
이 문제는 언패킹을 하지 않고 패킹된 파일에서 OEP를 구해서 풀 수도 있습니다.
우선 언패킹된 실행파일을 올리디버거로 불러온 후 아래로 내리다보면 모든 레지스터에 값을 넣고 마지막에 실행위치로 점프시켜주는 명령문을 볼 수 있습나다.
바로 여기서 점프 뒤의 위치가 프로그램이 시작하는 위치입니다.
그럼 답을 확인해볼까요?
잘넘어가네요! 오늘도 모두 화이팅 XD!
'Security > CodeEngn' 카테고리의 다른 글
CodeEngn_basic_10 (0) | 2019.01.29 |
---|---|
CodeEngn_basic_09 (0) | 2018.12.10 |
CodeEngn_Basic_07 (0) | 2018.08.19 |
CodeEngn_Basic_06 (0) | 2018.08.12 |
CodeEngn_Basic_05 (0) | 2018.08.09 |