여느때와 다름없이 OllyDbg를 사용하고 있었습니다.
그런데 어느 날 이상한 점을 발견하였습니다.
어떤 프로세스건 Attach를 하고 실행을 하면 타겟 프로세스가 퍽~ 하고 죽어버리더군요 -_-;;
얼마 전까지만 해도 잘 되었던 동작이 말이죠...
최근 PC에 무슨짓을 했는지 곰곰히 생각해 보았지요.
음...처음 떠오른 것은 SATA HDD의 AHCI모드를 활성화 시켜놓은 것이 떠올랐습니다.
AHCI...이것 때문인가...;;;
같은 OllyDbg로 Virtual PC에서 실험해 본 결과 잘 되더군요..
확실히 제 PC에 뭔가 문제가 생긴것이 분명했습니다.
원인을 저도 모르게 AHCI로 몰아가고 있었습니다.
그런데 얘기를 나누다 보니 뒷자리에서 일하시는 Dylan님의 PC에서도 같은 현상이
발견되었습니다. AHCI모드도 아니었는데 말이죠..-_-;;;
순간...Windows XP SP3가 떠올랐습니다.
제길...웬지 이번에는 제대로 필이 꽂혔습니다.
문득 Ggil님께서 물어보셨던 말이 떠올랐습니다.
OllyDbg말고 다른 Debugger는??
하루님 덕에 알게된 Immunity Debugger로 Attach후 실행 보았습니다.
-_-;;; 문제 없이 실행 되더군요...
순간 저와 HS_Soul님 머릿속에 함께 떠오른 것이 있었으니...
Plugin이다!
역시나 Plugin을 모두 Disable했더니 확실히 잘 되더군요.
그럼 의심스러운 Plugin은 ??
HS_Soul님이 Olly Advanced만 Disable 해보았습니다.
결국 문제는 Windows SP3에서의 Olly Advanced였습니다.
그 중에서도 옵션 중 Anti-Debug에 있는 ZwQueryInformationProcess 옵션이었습니다.
ZwQueryInformationProcess를 담고있는 ntdll.dll이 SP2의 것과 SP3것이 다르더군요.
결국 일단은 저 옵션을 해제 후 사용하면 Attach후에도 실행은 잘 되는 것 같습니다.
이와 관련하여 HS_Soul님이 ntdll.dll을 살펴본 내용을 포스팅을 해 놓으셨더군요.
빠르기도 하셔라 ㅎㅎ 링크 걸어 놓습니다.
http://www.iam-hs.com/90