문제를 읽어보면 stolenbyte를 구해야하는 문제이다.
Stolenbyte가 뭔지 몰라 찾아보았다.
Stolenbyte: 훔쳐진 바이트
프로그램의 한 부분의 코드를 훔쳐내어 다른 부분으로 옮겨진 코드를 의미한다.
POPAD-jmp OEP 사이의 연속된 push 부분을 뜻함
exe파일을 실행시켜보았다.
키 파일을 찾아야겠다
위 설명에서 보았듯이 코드에서 PUSHAD와 POPAD를 찾아야한다.
PUSHAD를 찾았다.
POPAD도 찾았다.
아까 stolen byte정의에서 POPAD와 JMP사이의 PUSH부분이 stolen byte라고 했으니
Stolenbyte는 POPAD와 JMP사이의 PUSH부분
POPAD바로 아래에 있는 연속된 PUSH 3개가 정답이된다.
PUSH부분을 보면 6A 00 68 00 20 40 00 68 12 20 40 00으로 총 12바이트이다.
이 값이 stolen byte이다.