首页
社区
课程
招聘
[求助]PspNotifyEnabelMask的请教
发表于: 2017-9-5 17:26 4525

[求助]PspNotifyEnabelMask的请教

2017-9-5 17:26
4525
一、在用脚本绕过UAC获取了管理员权限后,参数启动 cmd /c 驱动加载.exe执行加载函数,startservice为何会返回error_file_not_found的错误提示,右键以管理员权限运行驱动加载.exe或在管理员权限的窗口中切换到驱动加载.exe目录运行驱动加载都不存在这个问题。
二、绕过UAC权限,关闭DSE之后,需要关闭杀毒软件的模块回调(360的驱动加载弹窗)。内核中有个全局的变量叫PspNotifyEnableMask,试问在管理员权限下如何获取这个全局变量,并且将这个全局变量相关的回调置0.类似于DSEFix操作!g_CiEnabled 这个全局变量一样。小弟不懂,请大神提供比较现实的思路或源代码。

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 12848
活跃值: (9147)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
2
1、ImagePath填对了吗,打印出来看过吗?.sys文件真的放到你想要放的地方了吗?
2、用符号表或者特征码定位,自己百度吧一搜一堆
2017-9-5 23:39
0
雪    币: 35
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
hzqst 1、ImagePath填对了吗,打印出来看过吗?.sys文件真的放到你想要放的地方了吗? 2、用符号表或者特征码定位,自己百度吧一搜一堆
同样的驱动加载.exe,同样的驱动文件,还是出现刚才的问题,是不是必须把驱动文件放在windows\system32文件夹下才行?
2017-9-6 10:05
0
雪    币: 12848
活跃值: (9147)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
4
laoxuhack 同样的驱动加载.exe,同样的驱动文件,还是出现刚才的问题,是不是必须把驱动文件放在windows\system32文件夹下才行?
估计你路径填的不对吧,xp和vista以上系统对CreateService的形如C:\XXXX\YYY.sys这样的ImagePath处理有点差别,vista以上会自动帮你在开头加上\\??\\,xp不会,然而不加\\??\\又识别不了(也可能我记反了,总之不同系统下的行为有区别),所以最稳妥的方法是直接用\SystemRoot\drivers\YYY.sys的路径
2017-9-6 10:08
0
雪    币: 35
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
hzqst 估计你路径填的不对吧,xp和vista以上系统对CreateService的形如C:\XXXX\YYY.sys这样的ImagePath处理有点差别,vista以上会自动帮你在开头加上\\??\\,xp ...
我在绕过UAC的提权启动中,带参数启动的命令是这么写的,你看看:AddUninstallItem(L"C:\\Windows\\System32\\cmd.exe  /c  C:\\Users\\xu\\Desktop\\SafeCheck.exe");
关键是,同样的路径,右键以管理员身份启动驱动加载(SafeCheck.exe),驱动可以加载成功,但是,用上边的这种带参数启动,就不可以:附驱动加载命令:
//得到完整的驱动路径   
       GetFullPathNameA(lpszDriverPath,  MAX_PATH,  szDriverImagePath,  NULL);
       SC_HANDLE  hServiceMgr  =  NULL;//  SCM管理器的句柄   
        SC_HANDLE  hService  =  NULL;//  NT驱动程序的服务句柄   
       
               //打开服务控制管理器   
       hServiceMgr  =  OpenSCManager(NULL,  NULL,  SC_MANAGER_ALL_ACCESS);
       if  (hServiceMgr  ==  NULL)
       {
               //  OpenSCManager失败   
               CloseServiceHandle(hServiceMgr);
               return  FALSE;
       }
       //  OpenSCManager成功       
       
       //创建驱动所对应的服务   
       hService  =  CreateServiceA(hServiceMgr,
               lpszDriverName,                          //  驱动程序的在注册表中的名字   
               lpszDriverName,                          //  注册表驱动程序的DisplayName  值   
               SERVICE_ALL_ACCESS,                  //  加载驱动程序的访问权限   
               SERVICE_FILE_SYSTEM_DRIVER,  //  表示加载的服务是文件系统驱动程序   
               SERVICE_DEMAND_START,              //  注册表驱动程序的Start  值   
               SERVICE_ERROR_IGNORE,              //  注册表驱动程序的ErrorControl  值   
               szDriverImagePath,                    //  注册表驱动程序的ImagePath  值   
               "FSFilter  Activity  Monitor",//  注册表驱动程序的Group  值   
               NULL,
               "FltMgr",                                      //  注册表驱动程序的DependOnService  值   
               NULL,
               NULL);
2017-9-6 10:21
0
雪    币: 12848
活跃值: (9147)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
6
laoxuhack 我在绕过UAC的提权启动中,带参数启动的命令是这么写的,你看看:AddUninstallItem(L"C:\\Windows\\System32\\cmd.exe /c C:\\Users\ ...
你先打日志输出看下CreateFile能不能访问到那个sys咯
2017-9-6 19:05
0
雪    币: 35
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
hzqst 你先打日志输出看下CreateFile能不能访问到那个sys咯
CreateService和OpenService都没有问题,就是StartService出现这个问题
2017-9-7 10:03
0
游客
登录 | 注册 方可回帖
返回
//