sfilter 中如何判断当前的IRP是否来自网络?
来源:互联网 发布:三星2g3g4g网络切换 编辑:程序博客网 时间:2024/05/07 15:02
再仍一块砖头,sfilter 中如何判断当前的IRP是否来自网络?:
如何从IrpStackLocation中判断来自网络的文件访问?
//---------------------------------------------------
NTSTATUS status;
PACCESS_TOKEN pToken = NULL;
PTOKEN_SOURCE pTokenSrc = NULL ;
PSECURITY_SUBJECT_CONTEXT secSubCtx;
secSubCtx = &(IrpSp->Parameters.Create.SecurityContext->AccessState->SubjectSecurityContext);
if (secSubCtx->ClientToken != NULL || secSubCtx->PrimaryToken != NULL)
{
pToken = SeQuerySubjectContextToken(secSubCtx);
}
if (pToken == NULL)
{
//KdPrint(("SeQuerySubjectContextToken Errorn"));
return 0
}
//
// Get TokenSource Name If SourceName is "NtLmSsp" it was logged-in via Lanmanager,
// "User32" represents localy logged-in users.
//
__try
{
status = SeQueryInformationToken(pToken,TokenSource,&pTokenSrc);
if (NT_SUCCESS(status))
{
pTokenSrc->SourceName[TOKEN_SOURCE_LENGTH-1] = 0x00;
KdPrint(("Token Name :%s Len:%dn",pTokenSrc->SourceName,strlen(pTokenSrc->SourceName)));
if (_stricmp(pTokenSrc->SourceName,"NtLmSsp") == 0 )
{
KdPrint(("NetWork Access Token Findn"));
return 123
}
}
else
{
KdPrint(("SeQueryInformationToken Error:0x%xn",status));
}
}
__finally
{
ExFreePool(pTokenSrc);
}
return 0
如何从IrpStackLocation中判断来自网络的文件访问?
//---------------------------------------------------
NTSTATUS status;
PACCESS_TOKEN pToken = NULL;
PTOKEN_SOURCE pTokenSrc = NULL ;
PSECURITY_SUBJECT_CONTEXT secSubCtx;
secSubCtx = &(IrpSp->Parameters.Create.SecurityContext->AccessState->SubjectSecurityContext);
if (secSubCtx->ClientToken != NULL || secSubCtx->PrimaryToken != NULL)
{
pToken = SeQuerySubjectContextToken(secSubCtx);
}
if (pToken == NULL)
{
//KdPrint(("SeQuerySubjectContextToken Errorn"));
return 0
}
//
// Get TokenSource Name If SourceName is "NtLmSsp" it was logged-in via Lanmanager,
// "User32" represents localy logged-in users.
//
__try
{
status = SeQueryInformationToken(pToken,TokenSource,&pTokenSrc);
if (NT_SUCCESS(status))
{
pTokenSrc->SourceName[TOKEN_SOURCE_LENGTH-1] = 0x00;
KdPrint(("Token Name :%s Len:%dn",pTokenSrc->SourceName,strlen(pTokenSrc->SourceName)));
if (_stricmp(pTokenSrc->SourceName,"NtLmSsp") == 0 )
{
KdPrint(("NetWork Access Token Findn"));
return 123
}
}
else
{
KdPrint(("SeQueryInformationToken Error:0x%xn",status));
}
}
__finally
{
ExFreePool(pTokenSrc);
}
return 0
- sfilter 中如何判断当前的IRP是否来自网络?
- sfilter 中如何判断当前的IRP是否来自网络?
- IOS中如何判断当前网络状态是否可用
- Android中判断当前网络是否可用
- Android中判断当前网络是否可用
- Android中判断当前网络是否可用
- Android中判断当前网络是否可用
- Android中判断当前网络是否可用
- 如何判断当前网络连接状态(网络是否正常)
- IOS中如何判断当前网络状态
- IOS中如何判断当前网络状态
- IOS中如何判断当前网络状态
- PHP如何实现判断请求是否来自手机和请求是否来自浏览器的问题
- 判断当前网络是否连通?
- 判断当前网络是否可用
- 判断当前网络是否存在
- 判断当前网络是否可用
- 判断当前网络是否可用
- 事件和委托[zt] 著者 风前絮~~
- windows下配置Apache支持PHP5
- 几篇制作.net安装包的文章
- [转载]北大,你已经无耻到了极点
- 经典面试幽默!
- sfilter 中如何判断当前的IRP是否来自网络?
- [小说]狼图腾
- 甲骨文收购仁科十天悬念 Oracle的自救战略
- 我国走向现代化必须应对的挑战:脱美国化
- 关于在Windows中安装Oracle碰到ORA-12638错误的解决方法
- Lotus Domino中视图的排序问题
- 从今天开始学习书籍C#,Asp.net
- 监视程序运行得钩子程序
- 传神自动登陆研究