Win 7 또는 Vista x86 커널단에서 ObRegisterCallbacks 함수 써 본 사람 있음?
아오 이거 빡치게 만드네...
ObRegisterCallbacks 이 함수가... 옵젝트 콜백을 등록하는건데, 프로세스나 쓰레드에 대한 접근을 제한할 수 있어서,
보안 프로그램에서 많이 쓰이게 될 텐데...
이게 원래 x64 에서 커널 후킹이 안되니깐 MS 추가로 제공해준 기능이야.
근데 이게... x64 에선 나도 잘 쓰고 있는데, 이게 아놔.. x86 에선 안되네 -_-
이 함수를 쓰기 위해선 해당 드라이버가 /INTEGRITYCHECK 라는 링커 옵션을 포함해서 빌드되어야 하고,
빌드되어 나온 드라이버 바이너리도 디지털 사이닝이 되어야만 ObRegisterCallbacks 함수 호출이 성공적으로 이루어져.
문제는... 이게 테스트 부트 모드가 아니면 드라이버 로딩 자체가 안되네 -_-
로딩할 때, /INTEGRITYCHECK 옵션으로 빌드된 드라이버는... 왜인지 로딩이 안돼.
CRC ERROR 를 내 뱉는걸 봐선 사이닝이 안되거나 /INTEGRITYCHECK 옵션이 없어서 그렇다는데..
이게 사이닝도 다하고, /INTEGRITYCHECK 옵션도 넣어서 빌드를 했거든.
게다가 같은 sources 파일로 빌드한건데도 x64 에서는 잘돼 -ㅅ-
아오 ms 이 쇼키들 구라친거 아녀? x86 에서도 잘 동작한다고 말야. 사실은 x64 에서만 되고 -ㅅ-
혹시 x86 에서 ObRegisterCallbacks 함수 성공적으로 사용해 본 적 있는 횽아 있음?
테스트 부트 모드 말고, 일반 부팅 시스템에서도 로딩되는 드라이버 빌드 해본 사람 말야.
아오 젠장 이런 질문글은 이제 어디다 올려야 되냐? 스택오버플로 라도 가야 하나.. 어휴 영작 빡센데 -ㅅ-