리버싱) 하드웨어 브레이크 포인트 관련 질문...

(레나리버싱 20번 문제 기반)

리버싱 입문이라는 책에서

oep를 찾을때,

old EBP에 하드웨어 브레이크를 걸고 실행[f9]을 하면

460000번대의 주소에서 멈추던데…

저는

770000번대에서 멈추는데…

왜 이런건가요?..

그래서 oep도 못찾고 있습니다…

첨부 이미지

첨부 이미지

첨부 이미지

그건 프로세스 메모리 영역이 아니라 동적링크라이브러리의 메모리일겁니다.
하드웨어 브레이크 포인트를 잘못 잡은게 아닐까요?

책에 나온대로 브레이크 포인트를 잡은거 같은데…
흠…
다시 한번 잘 살펴보고 해보겠습니다…

근데 아무리 해도 똑같네요…


여기에 20번 문제
UnPackMe_EZIP1.0.exe
이 파일입니다…

entry point에서 bp를 찍도록 설정해보세요.

image

위와 같습니다
ep 가 main module 인데도,
이상하게 안되네요 ㅠ

디버거가 entry point에서 멈추기 전에 ntdll.dll에서 걸린거 아닌가요?
run을 한번 눌러서 빠져나와도 그런가요?

run을 눌러도 계속 이 곳에 잡힙니다…
물론 꾹 누른상태로 1~2분정도 있으면 프로그램이 끝나기는 합니다만…
(그 1~2분동안도 이 자리에 계속 걸리네요…)

자꾸 도움이 안돼서 떨떠름하게 미안하지만 하나만 더 묻겠습니다.
'run을 꾹 누른 상태에서 1~2분 있을 정도’가 이해가 안되는데, 혹시 F9를 누른게 맞나요?

시간날때 그런 문제가 나는지 확인해봤지만 재생산이 안되니 링크 하나로 갈음합니다. 참고가 되면 좋겠네요.