- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[服务化实现方案
服务化实现方案
前提:
基于系统资源占用及产品交互上的考虑,解决多用户问题不仅实现代价较高,且效果无法做到可以接受的程度,本方案并不涉及多用户问题的解决,只专注于解决users非管理员用户权限下无法使用卫士和杀毒的问题。对于多用户场景,本方案将会判断并给出如下提示引导用户:
方案:
说明:
需要提权进程初始化时调用INIT_ENT_SERVICE_CALL,通过PIPE向服务提权模块传递命令行、进程sessionid、进程当前目录。
服务提权模块对需提权进程文件签名进行校验,然后按传递过来的sessionid、进程当前目录使用服务进程token创建进程;
提权后的进程通过INIT_ENT_SERVICE_CALL自动获取到一个hook shell,hook shell主要作用:
模拟当前用户,协助本进程获取当前用户信息;
协助本进程使用当前用户token创建子进程,降低子进程的权限,创建目标进程前还需校验下当前用户token的Mandatory Level,确保其不高于default值;
协助本进程创建system权限的子进程,主要用于打补丁进程,或有360签名确认无创建非360子进程需求的进程,由可创建列表进行控制,原则上只有加了INIT_ENT_SERVICE_CALL才允许创建高权限进程实例;
Hook shell 接管的api包括:
与当前用户注册表相关的操作;
当前用户环境变量相关shell api;
创建COM实例;
创建进程;
BAPI中的注册表打开和创建;
WTSQuerySessionInformation由于在win7下System进程调用获取WTSUserName会返回空,hook shell将之修正为GetUserName,用于解决插件扫描问题;
Hook列表见附件。
主要流程:
1,需要高权限的进程创建初始时检查自身是否有管理员权限,没有则向服务申请提权,然后进程退出。
详细流程:
需提权进程INIT_ENT_SERVICE_CALL初始化流程:
已提权进程INIT_ENT_SERVICE_CALL初始化流程:
Hook代理api程序流程:
附件1: hook 列表
RegOpenKey
RegOpenKeyEx
RegCreateKey
RegCreateKeyEx
RegQueryValue
RegQueryValueEx
RegSetValue
RegSetValueEx
RegDeleteKeyEx
RegDeleteValue
RegDeleteKey
RegCloseKey
RegOpenKeyTransacted
RegCreateKeyTransacted
SHRegGetValue
SHGetDesktopFolder
SHGetFolderPath
SHGetValue
SHSetValue
SHRegSetValue
SHRegWriteUSValue
SHRegSetUSValue
SHRegGetUSValue
GetCurrentDirectory
SetCurrentDirectory
SHDeleteKey
SHDeleteEmptyKey
SHDeleteValue
ShellExecute
SHRegQueryUSValue
GetTempPath
ShellExecuteEx
CreateProcess
SHGetSpecialFolderPath
ExpandEnvironmentStrings
GetEnvironmentStrings
SearchPath
CoCreateInstance
CoCreateInstanceEx
GetUserName
SHGetSpecialFolderLocation
BRegOpenKey
BRegOpenKeyEx
BRegCreateKey
BRegCreateKeyEx
WTSQuerySessionInformation
WTSFreeMemory
文档评论(0)