[发明专利]一种检测Windows操作系统中隐藏的恶意程序进程的方法在审
| 申请号: | 202110115351.7 | 申请日: | 2021-01-28 |
| 公开(公告)号: | CN112861129A | 公开(公告)日: | 2021-05-28 |
| 发明(设计)人: | 梁效宁;杨先岷;李安平 | 申请(专利权)人: | 四川效率源信息安全技术股份有限公司 |
| 主分类号: | G06F21/56 | 分类号: | G06F21/56 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 641000 四*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 检测 windows 操作系统 隐藏 恶意程序 进程 方法 | ||
1.一种检测Windows操作系统中隐藏的恶意程序进程的方法,其特征在于包括以下步骤:
S100:从Windows操作系统应用层检测隐藏进程,包括以下步骤:
S101:获取%SystemRoot%\System32\ntdll.dll,并根据解析ntdll.dll的结果获取ntdll.dll的导出函数NtQuerySystemInformation;
S102:采用导出函数NtQuerySystemInformation筛选出Nt开头的功能,并进行解析,获取NtQuerySystemInformation的系统服务描述符的编号,包括以下步骤:
S1021:采用二进制方式读取ntdll.dll文件,获取PE文件导出表,解析NTQuerySystemInformation的相对虚拟地址RVA;
S1022:解析PE文件区段表并按页对齐,映射到内存后,读取PE文件头地址ImageBase;
S1023:计算功能地址fn:功能地址fn=ImageBase+RVA;
S1024:根据功能地址fn及操作系统的位数,获取NtQuerySystemInformation的系统服务描述符的编号,其中,
对于Windows 32位操作系统:NtQuerySystemInformation的系统服务描述符的编号=fn+1;
对于Windows 64位操作系统:NtQuerySystemInformation的系统服务描述符的编号=fn+4;
S103:根据所获取的NtQuerySystemInformation的系统服务描述符的编号,构建调用功能,并使用SYSENTER\SYSTEMCALL指令访问内核层;
S104:对比进程列表,查找隐藏的恶意程序进程:
通过步骤S103所构建的调用功能,查询Windows操作系统当前运行的实际的进程列表;
直接运行NtQuerySystemInformation,查询Windows操作系统当前运行的进程列表;
比较两次查询进程列表的结果,查找并获取隐藏的恶意程序进程;
S200:判断是否查找到隐藏的恶意程序进程,如果是,结束流程,否则,执行步骤S300;
S300:从Windows操作系统内核层检测隐藏进程。
2.根据权利要求1所述的一种检测Windows操作系统中隐藏的恶意程序进程的方法,其特征在于,所述步骤S101包括以下步骤:
S1011:判断Windows操作系统是否为32位操作系统,如果是,执行步骤S2012,否则,执行步骤S1013:
S1012:读取%SystemRoot%\System32\ntdll.dll,执行步骤S1014;
S1013:执行Wow64DisableWow64FsRedirection,用以禁用重定位,并获取%SystemRoot%\System32\ntdll.dll;
S1014:以二进制数据读取方式读取ntdll.dll文件,以win32 PE文件方式解析,得到模块的导出函数NtQuerySystemInformation。
3.根据权利要求1所述的一种检测Windows操作系统中隐藏的恶意程序进程的方法,其特征在于,所述步骤S102的方法为:
4.根据权利要求1所述的一种检测Windows操作系统中隐藏的恶意程序进程的方法,其特征在于,所述步骤S103包括以下步骤:
对于Windows 32位操作系统,所构建调用功能为:
mov eax,NtQueryInformationProcess
call$+8
ret 14
mov edx,esp
sysenter
ret
对于Windows 32位操作系统,所构建调用功能为;
mov eax,NtQueryInformationProcess
mov r10,rcx
syscall
retn。
5.根据权利要求1所述的一种检测Windows操作系统中隐藏的恶意程序进程的方法,其特征在于,所述步骤S300包括以下步骤:
S301:采用运行NtQuerySystemInformation方式,使用SystemProcessInformation功能,枚举出所有csrss.exe进程;
S302:采用运行NtQuerySystemInformation方式,使用SystemHandleInformation功能,枚举出当前Windows操作系统所有句柄表,根据返回的SYSTEM_HANDLE_INFORMATION::SYSTEM_HANDLE_TABLE_ENTRY_INFO中的UniqueProcessId,对比PID所属进程为csrss.exe的进程;
S303:采用NtDuplicateObject功能,将句柄复制到自身,对句柄调用NtQueryObject功能,采用ObjectTypeInformation进行句柄类型查询;
S304:当句柄类型名称为Process时,获取对象Object,作为进程csrss.exe所属会话session中活动进程的EProcess;
S305:将步骤S304中所获取的对象Object与直接运行NtQuerySystemInformation并查询的Windows操作系统当前运行的进程列表进行对比,查找并获取隐藏的恶意程序进程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川效率源信息安全技术股份有限公司,未经四川效率源信息安全技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110115351.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:汽化燃油燃烧炉炉头
- 下一篇:一种机械式起重机的履带板结构





