안녕하세요!
테라트입니다
전공글에 소홀했습니다 ㅠㅠ
(_ _) 반성,,,
앞으로도 소홀할지도,, 크흠
11번 문제 풀이 시작합니다
URL : https://codeengn.com/challenges/basic/11
OEP와 Stolenbyte를 찾으라고 하네요
Stolenbyte?? 라고 하시는 분들
지난 문제 풀이에서 설명적어놓았으니 참고하시기 바랍니다
동적실행 먼저 해보겠습니다!
OK를 클릭하면 keyfile을 체크한다고 하네요
흐으으음, 나는 파일을 찾을 수 없어! 라고 합니다
OEP를 찾으라는데 어떤 패킹인지 힌트를 얻을 수 있을지 모르니
Exeinfo를 통해 확인해보겠습니다
아~ UPX 패킹이네요!
매우 좋습니다
언패킹을 진행해보겠습니다~
[지난 문제 풀이 참고]
언패킹을 실행하고 올리디버거로 열어서 확인해보았습니다
전에 보았던 문제와 동일하게 함수 시작부분이 NOP으로 채워져있는 것을 확인할 수 있습니다
주소값 옆의 OP코드 부분의 NOP 개수를 세어보면 12Byte가 나옵니다
12Byte를 확인 후 패킹 전 프로그램으로 돌아가서 UPX 패킹이 풀리는 POPAD 부분으로 가보겠습니다
12Byte가 NOP으로 채워져있던 것을 확인했으니
POPAD 뒤에 오는 코드 중 12Byte를 세어보면 다음 3줄이 나옵니다
OEP와 Stolenbyte 정답을 구했네요
Stolenbyte의 값인 6A0068002040006812204000 와
OEP 값인 00401000 값을 붙여서 써주시면 정답이 되겠습니다
004010006A0068002040006812204000
수고하셨습니다 :)
CodeEngn Challenges : Basic 12 문제 풀이 (0) | 2019.03.16 |
---|---|
HexEditor 프로그램 HxD 사용법 (0) | 2019.03.08 |
CodeEngn Challenges : Basic 10 문제 풀이 (0) | 2018.10.25 |
CodeEngn Challenges : Basic 09 문제 풀이 (0) | 2018.10.08 |
CodeEngn Challenges : Basic 08 문제 풀이 (0) | 2018.09.28 |
댓글,
테라트
Since 2018.07.03 / IT 관련 정보, 일상의 공유를 위한 블로그