티스토리 뷰
이 샘플 드라이버는 WFP (Windows Filtering Platform)의 트래픽 검사 기능을 보여줍니다.
샘플 드라이버는 커널 모드 WFP (Windows Filtering Platform) 콜 아웃 드라이버 (Inspect.sys)로 구성되어 모든 전송 계층 트래픽 (예 : TCP (Transmission Control Protocol), UDP (User Datagram Protocol) 및 오류없는 인터넷 제어)을 차단합니다. ICMP (Message Protocol)는 구성 가능한 원격 피어와주고 받거나 대역 외 처리를 위해 작업자 스레드로 대기열에 넣습니다.
Inspect.sys는 인바운드 및 아웃 바운드 연결과 해당 연결에 속하는 모든 패킷을 검사합니다. 또한 Inspect.sys는 인터넷 프로토콜 보안 (IPsec)과 호환되어야하는 특별한 고려 사항을 보여줍니다.
Inspect.sys ClassifyFn는 ALE Connect, Recv-Accept 및 Transport 콜 아웃에 대한 콜 아웃 기능을 구현합니다 . 또한 실제 패킷 검사를 수행하는 시스템 작업자 스레드는 분류 기능과 작업자 스레드간에 공유되는 이벤트 메커니즘과 함께 구현됩니다.
연결 / 패킷 검사는 ALE 보류 / 완료 메커니즘뿐만 아니라 참조 드롭 클론 복제 메커니즘을 사용하여 시스템 작업자 스레드에 의해 대역 외에서 수행됩니다. 따라서, 샘플은 classifyFn()콜 아웃 내에서 필터링 결정을 내릴 수없고 대신에 예를 들어, 사용자 모드 애플리케이션에 의해 결정되어야하는 시나리오의 기초로서 기능 할 수있다 .
void
TLInspectALERecvAcceptClassify(
_In_ const FWPS_INCOMING_VALUES* inFixedValues,
_In_ const FWPS_INCOMING_METADATA_VALUES* inMetaValues,
_Inout_opt_ void* layerData,
_In_opt_ const void* classifyContext,
_In_ const FWPS_FILTER* filter,
_In_ UINT64 flowContext,
_Inout_ FWPS_CLASSIFY_OUT* classifyOut
)
#else
void
TLInspectALERecvAcceptClassify(
_In_ const FWPS_INCOMING_VALUES* inFixedValues,
_In_ const FWPS_INCOMING_METADATA_VALUES* inMetaValues,
_Inout_opt_ void* layerData,
_In_ const FWPS_FILTER* filter,
_In_ UINT64 flowContext,
_Inout_ FWPS_CLASSIFY_OUT* classifyOut
)
'프로그래밍' 카테고리의 다른 글
C# BeginRead (0) | 2020.03.02 |
---|---|
VUEX, $ store.state가 null 일 때 수행 할 작업 (0) | 2020.03.02 |
Windows 메모리 공간 개요 (0) | 2020.01.10 |
MDL 사용 Memory Descriptor List (0) | 2020.01.10 |
Windows 필터링 플랫폼(WFP) 로드맵 (0) | 2019.12.18 |
- Total
- Today
- Yesterday
- 주식
- 트렌드
- JSX
- Windows
- Frontend
- Python
- 스핀락
- reactjs
- Linux
- 투자
- Java
- react
- go
- frida
- Backend
- WinAPI
- HTML
- 유튜브
- JavaScript
- SWiFT
- 부동산
- golang
- ios
- CSS
- 예제
- 파이썬
- Spring
- 커널드라이버
- ChatGPT
- 생각
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |