- lumenFC 축구 동호회
- 마샤블
- 웍스프레소
- 소셜@나눔<소셜미디어나눔연구소>
- 리버스코어
- LAIN
- LAIN 이사한 블로그
- TeamCR@K
- Sunnyday
- 보안 걱정이
- 리버싱 학습
- securityfirst_jo
- Practical Security Blog
- 세상, 그 유쾌한 전장
- 악성코드관련블로그
- Back to the Mac
- 패킷분석입문
- PacketInside / 네트워크 패킷 분석 블로그
- 침해사고분석 :: 네이버 블로그
- 소프트웨어 기술자경력관리시스템
- JK.Moon
- 자바 온라인학습
- Ezbeat의 도서관
- Dreams of a Final Journey
- IT eBooks - Free Download - Bi…
- Index of /madchat/coding/rever…
- Security Insight
- Reversing war game
- 고길고기
- clamav
- zerowine
- FORENSIC-PROOOF
- jquery 예제
- 조대협의블로그
- 국가과학기술인력개발원 교육포털 사이트
- 빅데이터, splunk
- 지식을 연주하는 사람
- malware analysis system
- 건국대토익스피킹
- 소프트웨어개발 및 협업도구
kisoo
window7 에서 드라이버와 어플간의 이벤트 공유시 주의사항 본문
The name can have a "Global\" or "Local\" prefix to explicitly create the object in the global or session name space. The remainder of the name can contain any character except the backslash character (\). For more information, see Kernel Object Namespaces. Fast user switching is implemented using Terminal Services sessions. Kernel object names must follow the guidelines outlined for Terminal Services so that applications can support multiple users.
드라이버와 어플리케이션 간의 이벤트 객체 공유 시 이름을 지정 하라고 되어 있다.
대부분의 잘못되는 경우 다음과 같아 코딩 했을 것이다.
app.SharedEvent = CreateEvent(NULL, FALSE, FALSE, "myEvent");
if (SharedEvent == NULL) { }
wStatus= WaitForSingleObject(SharedEvent, INFINITE);
RtlInitUnicodeString( &uszProcessEventString, L\\BaseNamedObjects\\myEvent );
SharedEvent = IoCreateNotificationEvent( &uszProcEventString, &hProcessHandle );
ObReferenceObject( SharedEvent );
KeSetEvent( SharedEvent, 0, FALSE );
Windows7에서는 Global Naming 을 명시적으로 해줘야 한다.
SharedEvent = CreateEvent(NULL, FALSE, FALSE, "Global\\SharedEvent");