2017-09-27 10 views
-1

예를 들어 프로세스 모니터와 같은 기능을 생성하거나 안티 바이러스 스캐너를 개발하는 것과 관련하여 Windows OS 호출을 모니터링하는 방법이 적어도 하나는 많은 경험을 가진 사람이 들었습니다. "후킹"하고이 대체 방법은 후킹보다 더 효율적입니다. 그러나, 나는이 작업을 수행하기 위해 필터 드라이버를 개발하는 맥락에서 어떤 방법을 사용하는지 확신 할 수 없다.Windows 시스템에서 기본/SSDT API 호출을 모니터링하는 데 사용할 수있는 "후킹"이외의 다른 방법이 있습니까?

+1

프로세서 모니터는 Windows OS 호출을 모니터링하지 않지만 Windows 커널에서는 특정 종류의 이벤트를 모니터링합니다. 그것은 다양한 기술을 통해 그렇게합니다. 파일 모니터링의 경우, 안티 바이러스 스캐너와 마찬가지로 장치 필터 드라이버를 사용합니다. https://stackoverflow.com/questions/1531800/how-does-a-windows-antivirus-hook-into-the-file-access-process이 기술은 SSDT (SQL Server 데이터 도구) API (필자가 가정)는 사용자 수준 API입니다. –

+0

@RossRidge 감사하지만 SSDT에 의해 나는 System Service Dispatch Table이 일명 syscalls라고 부르는 것을 의미했다. –

+0

당신은 MS [Detours] (https://www.microsoft.com/en-us/research/project/detours/)를 생각할 수있다 – JJF

답변

0

아니요 SSDT 후킹에 해당하는 항목은 없지만 이벤트를 모니터링 할 수는 없습니다. 우리는 데이터/액세스 권한 등을 모니터링하고 변경하는 데 사용할 수있는 KM의 CB를 여러 개 보유하고 있습니다. AV 스캐너에 대해 말하면 CB가 대부분 충분합니다. 나는 이것이 당신이 필요로하는 것을 설명하는 것이 더 낫다고 생각합니다. 그렇다면 무엇을 사용해야하는지 더 쉽게 말할 수 있습니다.

사이드 노트 이것은 주석으로 표시됩니다. 나는 당신이 코멘트를 올릴 수 있기 위해 50 명 이상의 담당자를 얻어야한다는 것이 미쳤다고 생각한다 !!! 주석은 질문을 더 잘 이해하고 사물을 명확하게하는 데 유용합니다. 왜 누군가가 그것을 위해 담당자가 필요합니까?!

+0

아아 네, 예를 들어 커널 모드에서 NtCreateFile 또는 NtCreateSection과 같은 특정 API를 호출하여 일부 기능을보고 첨부하기 위해 AV 스캔을 말합니다. –

+0

파일 시스템 수정/액세스를 가로 채기 위해 ** 파일 시스템 필터 드라이버 **를 작성하고 통지를 수신하도록 등록 할 수 있습니다. 미니 필터를 구현하거나 이전 아키텍처를 사용할 수 있습니다. ** NtCreateSection **에 대한 CB가 제공되어 미니 필터 ** IRP_MJ_ACQUIRE_FOR_SECTION_SYNCHRONIZATION **을 설정할 수 있습니다. ** FsRtlRegisterFileSystemFilterCallbacks를 통해 이것을 설정할 수도 있습니다 : PreAcquireForSectionSynchronization ** –

+0

아 완벽한 감사합니다! 내가 알기를 원하면 질문을 편집 할 수 있으며이 정보를 대답에 던질 수 있습니까? 아니면 그냥 코멘트에 계속 하시겠습니까? –