코드엔진 Basic RCE L09 Write UP

War Game

2019. 6. 30. 17:41

반응형

StolenByte = 도난 바이트

패커가 이동시킨 코드의 윗부분이다.

UPX에서는 마지막 JMP 전 POPAD이후 일정 바이트 코드를 의미한다.

 

OEP를 찾아주기 위해 하나는 언패킹해야하므로 복사본을 만들어줬다.

 

OEP는 00401000이다.

OEP를 건너뛰고 0040100C부터 시작하는걸 알 수 있다.

StolenByte를 복구안해줬으므로 이상태로 실행하면 당연히 오류가 난다.

패킹이 안된 복사본을 이제 분석해주도록 하자.

찾았다.

정답은 "6A0068002040006812204000"이다.

 

패킹된 프로그램에 복구를 해주면 정상적으로 실행가능한 모습을 확인할 수 있다.

찾는 방법은 굉장히 간단했다.

처음 패킹된 프로그램을 보면 MessageBoxA의 함수의 인자는 4개여야하는데 push는 하나만 되었다.

즉 Stolenbyte에서 push 3개가 빠졌다고 생각하면 굉장히 수월해진다.

반응형

'War Game' 카테고리의 다른 글

코드엔진 Basic RCE L11 Write Up  (0) 2019.07.13
코드엔진 Basic RCE L10 Write Up  (2) 2019.07.13
코드엔진 Basic RCE L08 Write UP  (0) 2019.06.30
코드엔진 Basic RCE L07 Write UP  (0) 2019.06.30
코드엔진 Basic RCE L06 Write UP  (0) 2019.06.30