CN116992479A - 进程处理方法、装置、设备、存储介质及程序产品 - Google Patents
进程处理方法、装置、设备、存储介质及程序产品 Download PDFInfo
- Publication number
- CN116992479A CN116992479A CN202310788783.3A CN202310788783A CN116992479A CN 116992479 A CN116992479 A CN 116992479A CN 202310788783 A CN202310788783 A CN 202310788783A CN 116992479 A CN116992479 A CN 116992479A
- Authority
- CN
- China
- Prior art keywords
- page
- dirty page
- setting event
- dirty
- cache
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 413
- 230000008569 process Effects 0.000 title claims abstract description 379
- 238000003860 storage Methods 0.000 title claims abstract description 36
- 238000003672 processing method Methods 0.000 title claims abstract description 13
- 230000006399 behavior Effects 0.000 claims abstract description 116
- 238000012545 processing Methods 0.000 claims abstract description 106
- 230000004048 modification Effects 0.000 claims abstract description 50
- 238000012986 modification Methods 0.000 claims abstract description 50
- 230000004044 response Effects 0.000 claims abstract description 10
- 238000001514 detection method Methods 0.000 claims description 95
- 230000006870 function Effects 0.000 claims description 27
- 230000000903 blocking effect Effects 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 22
- 230000007246 mechanism Effects 0.000 claims description 9
- 238000011084 recovery Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 238000012795 verification Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 8
- 230000002159 abnormal effect Effects 0.000 description 5
- 238000013475 authorization Methods 0.000 description 5
- 238000002955 isolation Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 241000700605 Viruses Species 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000007123 defense Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 238000012098 association analyses Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
本申请提供了一种进程处理方法、装置、设备、存储介质及程序产品,涉及网络安全技术领域。该方法包括:获取操作系统中的第一脏页设置事件;第一脏页设置事件是将第一页面缓存设置为脏页的事件;获取触发第一脏页设置事件的目标进程的权限信息;响应于权限信息指示目标进程不具有对第一页面缓存对应的目标文件的修改权限,执行指定处理。本方案能够准确的检测出未授权的文件修改行为,从而提高操作系统中的文件修改的准确性。
Description
技术领域
本申请实施例涉及网络安全技术领域,特别涉及一种进程处理方法、装置、设备、存储介质及程序产品。
背景技术
目前的操作系统中,很多进程在执行过程中,会涉及到对操作系统中的文件进行修改的行为。
在相关技术中,为了保证文件的安全性,在某个进程发起对某个文件的修改时,操作系统会验证该进程是否具有对该文件的修改权限;若该进程不具有对该文件的修改权限,则禁止该进程修改文件。
然而,某些非正常的进程可能会利用系统漏洞,绕过操作系统对进程的权限验证,从而在未授权的情况下直接修改文件,从而影响文件修改的安全性。
发明内容
本申请实施例提供了一种进程处理方法、装置、设备、存储介质及程序产品,能够提高操作系统中的文件修改的安全性。所述技术方案如下:
根据本申请实施例的一个方面,提供了一种进程处理方法,所述方法包括:
获取操作系统中的第一脏页设置事件;所述第一脏页设置事件是将第一页面缓存设置为脏页的事件;
获取触发所述第一脏页设置事件的目标进程的权限信息;
响应于所述权限信息指示所述目标进程不具有对所述第一页面缓存对应的目标文件的修改权限,执行指定处理。
根据本申请实施例的一个方面,提供了进程处理方法,所述方法包括:
接收终端设备发送的,与第一脏页设置事件对应的行为信息;所述第一脏页设置事件对应的行为信息是所述终端设备获取到操作系统中的第一脏页设置事件,获取到触发所述第一脏页设置事件的目标进程的权限信息,并在所述权限信息指示所述目标进程不具有对第一页面缓存对应的目标文件的修改权限的情况下,确定所述目标进程在未授权的情况下执行了写页面缓存的行为后发送的;所述第一脏页设置事件是将第一页面缓存设置为脏页的事件;所述行为信息用于指示写页面缓存的行为;
基于与所述第一脏页设置事件对应的行为信息,对所述目标进程进行处理。
根据本申请实施例的一个方面,提供了一种进程处理装置,所述装置包括:
事件获取模块,用于获取操作系统中的第一脏页设置事件;所述第一脏页设置事件是将第一页面缓存设置为脏页的事件;
权限信息获取模块,用于获取触发所述第一脏页设置事件的目标进程的权限信息;
处理模块,用于响应于所述权限信息指示所述目标进程不具有对所述第一页面缓存对应的目标文件的修改权限,执行指定处理。
在一种可能的实现方式中,所述处理模块,用于向云端服务器发送所述第一脏页设置事件对应的行为信息,所述行为信息用于指示写页面缓存的行为。
在一种可能的实现方式中,所述处理模块,还用于,
接收所述云端服务器返回的处理指令;
基于所述处理指令,对所述目标进程进行处理。
在一种可能的实现方式中,所述处理指令包括阻断指令;
所述处理模块,用于基于所述阻断指令,对所述目标进程进行阻断隔离,或者,对所述目标进程所在的进程集合中的各个进程进行阻断隔离。
在一种可能的实现方式中,所述处理模块,还用于对所述目标文件进行恢复处理。
在一种可能的实现方式中,所述处理指令包括检测指令;
所述处理模块,用于响应于所述目标进程触发了第二脏页设置事件,向所述云端服务器发送所述第二脏页设置事件对应的行为信息;所述第二脏页设置事件是将第二页面缓存设置为脏页的事件。
在一种可能的实现方式中,所述处理模块,还用于,
获取所述目标进程的父进程;
响应于所述父进程触发了第三脏页设置事件,向所述云端服务器发送所述第三脏页设置事件对应的行为信息;所述第三脏页设置事件是将第三页面缓存设置为脏页的事件。
在一种可能的实现方式中,所述行为信息中包含以下信息中的至少一种:
页面缓存的内容、当前访问的网页的信息、当前运行的应用程序的信息;
其中,所述当前访问的网页的信息包括以下至少一种:所述网页的地址、所述网页的类型、所述网页的安全等级;
所述当前运行的应用程序的信息包括以下至少一种:所述应用程序的地址、所述应用程序的类型、所述应用程序的安全等级。
在一种可能的实现方式中,所述事件获取模块,用于,
基于钩子机制向操作系统注册对指定函数的检测;所述指定函数是设置页面缓存的属性为脏页的函数;
接收所述操作系统在检测到对所述指定函数的调用时发送的所述第一脏页设置事件。
根据本申请实施例的一个方面,提供了一种进程处理装置,所述装置包括:
行为信息接收模块,用于接收终端设备发送的,与第一脏页设置事件对应的行为信息;所述第一脏页设置事件对应的行为信息是所述终端设备获取到操作系统中的第一脏页设置事件,获取到触发所述第一脏页设置事件的目标进程的权限信息,并在所述权限信息指示所述目标进程不具有对第一页面缓存对应的目标文件的修改权限的情况下,确定所述目标进程在未授权的情况下执行了写页面缓存的行为后发送的;所述第一脏页设置事件是将第一页面缓存设置为脏页的事件;所述行为信息用于指示写页面缓存的行为;
处理模块,用于基于与所述第一脏页设置事件对应的行为信息,对所述目标进程进行处理。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储由至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行以实现上述进程处理方法。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机程序,所述计算机程序由处理器加载并执行以实现上述进程处理方法。
另一方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述各种可选实现方式中提供的进程处理方法。
本申请实施例提供的技术方案可以包括如下有益效果:
在操作系统中发生将第一页面缓存设置为脏页的事件时,获取触发该事件的进程的权限信息,并检测该进程是否具有对第一页面缓存对应的目标文件的修改权限,若否,则执行指定处理;上述方案以文件被修改之前的脏页设置事件作为权限检测的触发条件,从而对修改文件的进程的权限进行二次校验,能够准确的检测出未授权的文件修改行为,从而提高操作系统中的文件修改的准确性。
附图说明
图1是本申请一个示例性实施例提供的实施环境的示意图;
图2是本申请一个实施例提供的进程处理方法的流程图;
图3是本申请一个实施例提供的进程处理方法的流程图;
图4是本申请一个实施例提供的进程处理方法的流程图;
图5是本申请一个实施例提供的进程处理方法的流程图;
图6是本申请涉及的一种系统架构图;
图7是本申请涉及的系统主体工作流程图;
图8是本申请涉及的基础原理图;
图9是本申请涉及的一种检测流程图;
图10是本申请涉及的一种检测流程图;
图11是本申请涉及的一种检测流程图;
图12是本申请一个实施例提供的进程处理装置的框图;
图13是本申请一个实施例提供的进程处理装置的框图;
图14是本申请一个实施例提供的计算机设备的结构框图;
图15是本申请一示例性实施例示出的计算机设备的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
1)页面缓存(page cache):又称为pcache。page cache的大小为一页,通常为4K。在linux系统中读写文件时,page cache用于缓存文件的逻辑内容,从而加快对磁盘上映像和数据的访问。
Page Cache是通过将磁盘中的数据缓存到内存中,以减少磁盘I/O操作,从而提高性能。此外,操作系统还要确保Page Cache中的数据更改能够同步到磁盘上,这称之为page回写(page writeback)。一个inode对应一个page cache对象,一个page cache对象包含多个物理page。
2)读Cache:当操作系统的内核发起一个读请求时,会先检查请求的数据是否缓存到了page cache中,如果有则直接从内存中读取,不需要访问磁盘,如果cache没有请求的数据,就必须从磁盘中读取数据,然后内核将数据缓存到cache中,这样后续读请求就可以命中cache了。Page cache可以只缓存一个文件部分的内容,不需要把整个文件都缓存进来。
3)写Cache:当操作系统的内核发起一个写请求时,同样直接写入到cache中,然后,将被写入的页面(page)标记为dirty(脏页),并将其加入到脏页表(dirty list)中。内核会周期性的将dirty list中的page回写到磁盘上。从而使磁盘上的数据和内存中缓存的数据一致。
也就是说,操作系统中一个进程发起的正常的page-cache修改流程包括以下步骤:
S1,进程修改page-cache内容;
S2,page-cache脏页设置;
S3,脏页内容回写进入文件。
4)进程(Process):进程是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。进程可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。进程不只是程序的代码,还包括当前的活动,进程通常通过程序计数器的值和处理寄存器的内容来表示。
5)云技术(Cloud technology):指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
6)云安全(Cloud Security):指基于云计算商业模式应用的安全软件、硬件、用户、机构、安全云平台的总称。云安全融合了并行处理、网格计算、未知病毒行为判断等新兴技术和概念,通过网状的大量客户端对网络中软件行为的异常检测,获取互联网中木马、恶意程序的最新信息,并发送到服务端进行自动分析和处理,再把病毒和木马的解决方案分发到每一个客户端。
云安全主要研究方向包括:1.云计算安全,主要研究如何保障云自身及云上各种应用的安全,包括云计算机系统安全、用户数据的安全存储与隔离、用户接入认证、信息传输安全、网络攻击防护、合规审计等;2.安全基础设施的云化,主要研究如何采用云计算新建与整合安全基础设施资源,优化安全防护机制,包括通过云计算技术构建超大规模安全事件、信息采集与处理平台,实现对海量信息的采集与关联分析,提升全网安全事件把控能力及风险控制能力;3.云安全服务,主要研究各种基于云计算平台为用户提供的安全服务,如防病毒服务等。
图1示出了本申请一个示例性实施例提供的实施环境的示意图。该实施环境可以包括:第一终端110、云端服务器120,可选的,还可以包括告警平台服务器130。
其中,上述涉及的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content DeliveryNetwork,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
具体来说,第一终端110安装和运行有应用程序111和安全检测组件112,该应用程序111在运行过程中,可以在第一终端110中创建进程,并通过创建的进程对第一终端110中的文件进行访问(比如读/写操作)。
图1中仅示出了一个终端,但在不同实施例中存在多个其它终端可以接入服务器120。可选地,还存在一个或多个终端是开发者对应的终端,在该终端上安装有开发上述应用程序111或者安全检测组件112的开发平台。
第一终端110以及其它终端通过无线网络或有线网络与云端服务器120相连。云端服务器120通过无线网络或有线网络与告警平台服务器130相连。
云端服务器120包括一台服务器、多台服务器组成的服务器集群、云计算平台和虚拟化中心中的至少一种。云端服务器120可以为终端中运行的安全检测组件提供后台功能。可选地,云端服务器120承担主要计算工作,终端承担次要计算工作;或者,云端服务器120承担次要计算工作,终端承担主要计算工作;或者,云端服务器120和终端之间采用分布式计算架构进行协同计算。比如,上述云端服务器120可以是对应安全检测组件112的服务器。
在一个示意性的例子中,云端服务器120包括存储器121、处理器122、用户账号数据库123、安全服务模块124、面向用户的输入/输出接口(Input/Output Interface,I/O接口)125。其中,处理器122用于加载服务器120中存储的指令,处理用户账号数据库123和安全服务模块124中的数据;用户账号数据库123用于存储第一终端110以及其它终端所使用的用户账号的数据,比如用户账号的头像、用户账号的名称、用户账号的等级;安全服务模块124用于提供安全检测功能的后台服务(比如行为分析、证据收集、处理决策、指令下发)等等;面向用户的I/O接口125用于通过无线网络或有线网络和第一终端110建立通信交换数据。
告警平台服务器130包括一台服务器、多台服务器组成的服务器集群、云计算平台和虚拟化中心中的至少一种。告警平台服务器130可以包括向用户提供网络安全告警服务,比如,云端服务器120可以向告警平台服务器130发送告警信息,由告警平台服务器130将告警信息转发给用户/管理人员的终端。
在一个示意性的例子中,告警平台服务器130包括存储器131、处理器132、用户账号数据库133、告警服务模块134、面向用户的输入/输出接口135。其中,处理器132用于加载服务器130中存储的指令,处理用户账号数据库133和告警服务模块134中的数据;用户账号数据库133用于存储第一终端110以及其它终端所使用的用户账号的数据,比如用户账号的头像、用户账号的名称、用户账号的等级;告警服务模块134用于提供后台告警服务(比如,向用户/管理人员的终端发送告警信息等等)等等;面向用户的I/O接口135用于通过无线网络或有线网络和云端服务器120或者第一终端110建立通信交换数据。
相关技术中,一个进程对某个文件执行写(write)操作时,通过write系统调用来修改文件内容,write系统调用的入口会存在一次权限校验,以校验该进程是否有权限修改对应的文件。某些非正常的进程(比如恶意进程)可能会利用系统漏洞等方式绕过此次权限校验,比如,在linux系统中,存在脏牛(dirtycow)漏洞的情况下,非正常的进程可以利用脏牛漏洞绕过此次权限校验。
其中,脏牛漏洞是linux中的一种内核安全漏洞,该漏洞具体表现为:linux内核的内存子系统在处理写入复制(Copy-On-Write,COW)时产生了竞争条件(race condition)。恶意进程可以利用该漏洞来获取高权限,对只读内存映射进行写访问。其中,竞争条件指的是任务执行顺序异常,可导致应用崩溃,或者令攻击者有机可乘,从而进一步执行其他代码。利用该漏洞,攻击者可以在系统中暂时提升权限,甚至可能获得root权限。
其中,一个进程在系统未授权的情况下通过写页面缓存的方式修改文件的行为,可以被称为未授权写page-cache(页面缓存)攻击行为。
而本申请后续实施例所示的方案,提供一种未授权写page-cache攻击检测的方案,能够准确的检测到进程绕过系统的权限检测,而执行的未授权写page-cache攻击行为。
请参考图2,其示出了本申请一个实施例提供的进程处理方法的流程图。为了便于说明,仅以各步骤执行主体为计算机设备进行介绍说明。上述计算机设备可以为终端;上述终端中可以运行有安全检测组件;上述终端可以是上述图1所示的第一终端110;该方法可以包括如下几个步骤:
步骤210:获取操作系统中的第一脏页设置事件;第一脏页设置事件是将第一页面缓存设置为脏页的事件。
在本申请实施例中,终端中的安全检测组件可以预先向操作系统(比如系统内核)注册对脏页设置事件的检测;当一个进程将页面缓存设置为脏页时,会触发一个脏页设置事件,操作系统可以将该脏页设置事件通知给终端中的安全检测组件。
在一种可能的实现方式中,获取操作系统中的第一脏页设置事件,包括:
基于钩子机制向操作系统注册对指定函数的检测;指定函数是设置页面缓存的属性为脏页的函数;
接收操作系统在检测到对指定函数的调用时发送的第一脏页设置事件。
其中,上述安全检测组件预先向操作系统注册对脏页设置事件的检测的过程,可以通过hook机制来实现;比如,安全检测组件可以向系统内核注册对设置页面缓存的属性为脏页的指定函数的调用事件的检测,后续操作系统中发生对上述指定函数的调用事件,既可以将该调用事件作为上述第一脏页设置事件,发送给安全检测组件。
以Linux中的Hook机制为例,在Linux中,hook是一种常用的进程间通信技术,它可以让一个进程来处理其他进程的信号。
Linux Hook进程的实现主要依赖于#include中定义的三个核心常量,它们分别为:HOOK_INVOKER、HOOK_LISTENER以及HOOK_WAIT。
HOOK_INVOKER用于指定一个进程调用Linux Hook进程,而HOOK_LISTENER用于指定一个进程来侦听另一个进程发送的信号,最后HOOK_WAIT则是指定进程等待两个进程之间传递数据的时间。
基于上面介绍的三个核心常量,Linux Hook进程的实现步骤如下:
S1,HOOK_INVOKER首先调用hook_send函数来发送信号,它接收要发送的信号以及接收者的进程id,接着内核会通过内部进程list来查找出接收者进程;
S2,HOOK_LISTENER通过hook_wait函数来检测从其他进程收到的信号,如果收到一个信号,就会调用hook_handle函数来处理;
S3,HOOK_WAIT可以根据特定的时间间隔或者异步模式来等待其他进程发来的数据信息,如果收到期望的信号,就会调用hook_handle函数来处理。
总的来说,Linux Hook进程实现机制让进程间的通讯更加便捷,让进程间的行为安全可控,能够有效地检测Linux系统内部的进程行为,从而使系统更加稳定可靠。
也就是说,在本申请实施例中,安全检测组件可以通过hook方式,对操作系统中的进程调用指定函数的事件进行拦截。
其中,本申请实施例所示的方案选择在设置脏页时触发二次校验,也就是说,检测时机位于page-cache被修改与page-cache内容回写之间。相应的,上述检测被调用的指定函数可以是set_page_dirty_lock,也可以是如下前缀开头的内核函数:
mark_page_dirty*;
set_page_dirty*;
mark_buffer_dirty*。
在本申请实施例中,由于通过hook机制来实现第一脏页设置事件的获取,能够在检测目标进程是否在未授权的情况下执行了写页面缓存的行为时,保证业务的正常运行。
步骤220:获取触发第一脏页设置事件的目标进程的权限信息。
其中,上述触发第一脏页设置事件的目标进程,可以是指发起将第一页面缓存设置为脏页的行为的进程。
在本申请实施例中,安全检测组件接收到第一脏页设置事件后,即可以获取该第一脏页设置事件对应的目标进程的进程号,然后基于上述进程号,获取目标进程的权限信息。
其中,上述权限信息可以指示目标进程当前所具有的权限/权限等级。
比如,在本申请实施例中,安全检测组件可以根据目标进程的进程标识,从操作系统内核获取目标进程的内核进程块;然后从内核进程块中确定目标进程的权限信息。
例如,安全检测组件可以根据内核进程块获取目标进程的授权令牌,然后根据授权令牌,获取该目标进程的令牌等级值,并将该令牌等级值获取为目标进程的权限等级(也就是上述权限信息)。
步骤230:响应于权限信息指示目标进程不具有对第一页面缓存对应的目标文件的修改权限,执行指定处理。
在一种可能的实现方式中,安全检测组件可以将目标进程的权限信息,与目标文件的修改权限进行比对,以确定目标进程是否具有对第一页面缓存对应的目标文件的修改权限。
例如,安全检测组件可以将目标进程的权限等级,与目标文件的修改权限对应的权限等级进行比较,如果目标进程的权限等级低于目标文件的修改权限对应的权限等级,则确定目标进程不具有对第一页面缓存对应的目标文件的修改权限;反之,如果目标进程的权限等级高于或者等于目标文件的修改权限对应的权限等级,则确定目标进程具有对第一页面缓存对应的目标文件的修改权限。
在本申请实施例中,如果权限信息指示目标进程不具有对第一页面缓存对应的目标文件的修改权限,则说明该目标进程可能在未授权的情况下执行了写页面缓存的攻击行为,此时,终端可以通过安全检测组件执行指定处理。
其中,上述指定处理包括且不限于以下至少一种处理方式:
向云端服务器上报目标进程的行为信息;比如,由云端服务器根据目标进程的行为信息,确定是否采取阻断措施,以及,是否继续检测以收集证据;
继续检测目标进程后续的写页面缓存的行为;比如,继续检测目标进程后续的写页面缓存的行为,以便更准确的确定该目标进程是否为恶意进程;
对目标进程进行处理;比如,确定目标进程为恶意进程的情况下,对目标进程进行阻断隔离处理;
对目标进程相关的其它进程进行处理;比如,确定目标进程相关的其它进程为恶意进程的情况下,对目标进程相关的其它进程进行阻断隔离处理;
检测目标进程相关的其它进程后续的写页面缓存的行为;比如,继续检测目标进程相关的其它进程后续的写页面缓存的行为,以便更准确的确定该目标进程相关的其它进程是否为恶意进程;
对目标进程修改过的文件进行处理;比如,对目标进程修改过的文件进行恢复或删除;
对目标进程相关的其它进程修改过的文件进行处理;比如,对目标进程相关的其它进程修改过的文件进行恢复或删除。
综上所述,本申请实施例所示的方案,在操作系统中发生将第一页面缓存设置为脏页的事件时,获取触发该事件的进程的权限信息,并检测该进程是否具有对第一页面缓存对应的目标文件的修改权限,若否,则执行指定处理;上述方案以文件被修改之前的脏页设置事件作为权限检测的触发条件,从而对修改文件的进程的权限进行二次校验,能够准确的检测出未授权的文件修改行为,从而提高操作系统中的文件修改的准确性。
请参考图3,其示出了本申请一个实施例提供的进程处理方法的流程图。为了便于说明,仅以各步骤执行主体为计算机设备进行介绍说明。上述计算机设备可以为终端;上述终端中可以运行有安全检测组件;上述终端可以是上述图1所示的第一终端110;上述步骤230可以实现为步骤230a:
步骤230a:响应于权限信息指示目标进程不具有对第一页面缓存对应的目标文件的修改权限,向云端服务器发送第一脏页设置事件对应的行为信息,行为信息用于指示写页面缓存的行为。
相应的,在一些实施例中,云端服务器可以接收终端设备发送的,与第一脏页设置事件对应的行为信息;并基于与第一脏页设置事件对应的行为信息,对目标进程进行处理。
其中,上述对目标进程进行处理可以包括:
指示终端继续检测目标进程后续的写页面缓存的行为;比如,指示终端继续检测目标进程后续的写页面缓存的行为,以便更准确的确定该目标进程是否为恶意进程;
指示终端对目标进程进行处理;比如,确定目标进程为恶意进程的情况下,指示终端对目标进程进行阻断隔离处理;
指示终端对目标进程相关的其它进程进行处理;比如,确定目标进程相关的其它进程为恶意进程的情况下,指示终端对目标进程相关的其它进程进行阻断隔离处理;
指示终端检测目标进程相关的其它进程后续的写页面缓存的行为;比如,指示终端继续检测目标进程相关的其它进程后续的写页面缓存的行为,以便更准确的确定该目标进程相关的其它进程是否为恶意进程;
指示终端对目标进程修改过的文件进行处理;比如,指示终端对目标进程修改过的文件进行恢复或删除;
指示终端对目标进程相关的其它进程修改过的文件进行处理;比如,指示终端对目标进程相关的其它进程修改过的文件进行恢复或删除;
发出告警;比如,向告警平台发送告警信息,以便告警平台向终端或者管理人员发出告警。
在本申请实施例中,为了保证终端的设备性能,降低未授权的写页面缓存的行为检测过程对设备处理资源的占用,终端中的安全检测组件在检测出目标进程不具有对第一页面缓存对应的目标文件的修改权限时,将第一脏页设置事件对应的行为信息发送给云端服务器,由云端服务器进行后续的分析和决策。
在一些可能的实现方式中,上述行为信息中包含以下信息中的至少一种:
页面缓存的内容、当前访问的网页的信息、当前运行的应用程序的信息;
其中,当前访问的网页的信息包括以下至少一种:网页的地址、网页的类型、网页的安全等级;
当前运行的应用程序的信息包括以下至少一种:应用程序的地址、应用程序的类型、应用程序的安全等级。
在本申请实施例中,为了能够保证云端服务器能够全面且准确的分析目标进程的行为,以及准确的做出处理决策,上述行为信息除了指示目标进程在未授权的情况下对目标文件的页面缓存进行写操作之外,还可以包含便于云端服务器做出判断或决策的其它信息,比如页面缓存的内容(比如包括目标进程修改的内容,判断目标进程的修改行为是否有危害)、当前访问的网页的信息(比如,便于云端服务器根据终端当前访问的网页判断目标进程的修改行为的危害程序)、当前运行的应用程序的信息(比如,便于云端服务器根据终端当前运行的应用程序判断目标进程的修改行为的危害程序)等等。
请参考图4,其示出了本申请一个实施例提供的进程处理方法的流程图。为了便于说明,仅以各步骤执行主体为计算机设备进行介绍说明。上述计算机设备可以为终端;上述终端中可以运行有安全检测组件;上述终端可以是上述图1所示的第一终端110;上述步骤230可以包括步骤230b和步骤230c:
步骤230b:接收云端服务器返回的处理指令。
在本申请实施例中,云端服务器可以基于第一脏页设置事件对应的行为信息做出决策或判断,并生成响应的处理指令;并将生成的处理指令发送给终端。
步骤230c:基于处理指令,对目标进程进行处理。
终端中的安全检测组件接收到上述处理指令后,可以按照处理指令对目标进程进行相应的处理。
比如,安全检测组件按照处理指令对目标进程继续进行检测,此时,可以放行此次第一脏页设置事件,以使得目标进程能够成功修改目标文件,也可以拒绝放行此次第一脏页设置事件,避免目标文件被修改。
再比如,安全检测组件按照处理指令阻断隔离目标进程,避免目标进程进一步做出攻击行为。
在一种可能的实现方式中,处理指令包括阻断指令;
基于处理指令,对目标进程进行处理,包括:
基于阻断指令,对目标进程进行阻断隔离,或者,对目标进程所在的进程集合中的各个进程进行阻断隔离。
在本申请实施例中,如果云端服务器通过第一脏页设置事件的行为信息确定目标进程是恶意进程,则可以向终端返回阻断指令,安全检测组件按照阻断指令,对目标进程进行阻断隔离,或者,对目标进程所在的进程集合中的各个进程进行阻断隔离。比如,安全检测组件阻断目标进程或目标进程所在的进程集合中的各个进程的通信;或者,安全检测组件关闭目标进程或目标进程所在的进程集合中的各个进程,从而避免目标进程或目标进程所在的进程集合中的各个进程继续执行恶意的行为,保证操作系统中的文件的安全性。
其中,上述目标进程所在的进程集合中的各个进程可以是目标进程对应的应用程序建立的各个进程。
或者,上述目标进程所在的进程集合中的各个进程,可以包括一个父进程,以及该父进程创建的一个或多个子进程。
或者,上述目标进程所在进程集合中的各个进程,可以是创建时间之间的间隔小于时间间隔阈值的多个进程。
在一种可能的实现方式中,上述执行指定处理,还包括:
对目标文件进行恢复处理。
在本申请实施例中,如果上述处理指令包括阻断指令,则说明云端服务器可能判断该目标进程为恶意进程,此时,上述目标文件可能已经被目标进程或其它恶意进程修改过,此时,安全检测组件可以对目标文件进行恢复处理,比如,通过操作系统备份的目标文件替换现有的目标文件,从而保证操作系统中的文件的安全性。
在一种可能的实现方式中,处理指令包括检测指令;
基于处理指令,对目标进程进行处理,包括:
响应于目标进程触发了第二脏页设置事件,向云端服务器发送第二脏页设置事件对应的行为信息;第二脏页设置事件是将第二页面缓存设置为脏页的事件。
在本申请实施例中,如果云端服务器通过第一脏页设置事件的行为信息无法准确的确定目标进程是否为恶意进程,则可以进一步对目标进程的行为进行检测,以进行证据链的收集,此时,云端服务器可以向终端发送检测指令。
终端中的安全检测组件接收到上述检测指令后,如果目标进程再次触发了脏页设置事件,则会将脏页设置事件的行为信息上报给云端服务器,以便云端服务器进一步收集证据链,以判断目标进程是否为恶意进程。
在一种可能的实现方式中,响应于目标进程触发了第二脏页设置事件,安全检测组件可以不再获取目标进程的权限信息,而是直接向云端服务器发送第二脏页设置事件对应的行为信息。
由于目标进程可能在触发了第一脏页设置事件后,通过提权漏洞等方式临时提升自己的权限,从而绕过后续安全检测组件对目标进程的二次校验,对此,终端中的安全检测组件在接收到检测指令后,当目标进程后续再触发脏页设置事件时,不会再检测目标进程的权限信息,而是直接将后续触发的脏页设置事件的行为信息上报给云端服务器,从而一方面节省了检测目标进程的权限信息的步骤,保证终端的运行性能,另一方面避免目标进程通过提漏洞绕过权限检测,提高恶意进程检测的准确性和文件修改的安全性。
请参考图5,其示出了本申请一个实施例提供的进程处理方法的流程图。为了便于说明,仅以各步骤执行主体为计算机设备进行介绍说明。上述计算机设备可以为终端;上述终端中可以运行有安全检测组件;上述终端可以是上述图1所示的第一终端110;上述步骤230还可以包括步骤230d和步骤230e:
步骤230d:获取目标进程的父进程。
在本申请实施例中,安全检测组件可以查询目标进程的父进程的进程号。
比如,安全检测组件可以向操作系统查询目标进程的父进程的进程号。
步骤230e:响应于父进程触发了第三脏页设置事件,向云端服务器发送第三脏页设置事件对应的行为信息;第三脏页设置事件是将第三页面缓存设置为脏页的事件。
在本申请实施例中,当目标进程的权限信息指示目标进程不具有对第一页面缓存对应的目标文件的修改权限时,目标进程的父进程也可能属于恶意进程,对此,需要对目标进程的父进程的写页面缓存的行为进行检测。
在一种可能的实现方式中,响应于父进程触发了第三脏页设置事件,安全检测组件可以不获取父进程的权限信息,而是直接向云端服务器发送第三脏页设置事件对应的行为信息。
由于父进程可能通过提权漏洞等方式临时提升自己的权限,从而绕过后续安全检测组件对父进程在写页面缓存时的二次校验,对此,终端中的安全检测组件在检测到目标进程不具有对第一页面缓存对应的目标文件的修改权限后,或者,收到对目标进程的处理指令后,当该父进程后续再触发脏页设置事件时,不会检测父进程的权限信息,而是直接将后续触发的脏页设置事件的行为信息上报给云端服务器,从而一方面节省了检测父进程的权限信息的步骤,保证终端的运行性能,另一方面避免父进程通过提漏洞绕过权限检测,提高恶意进程检测的准确性和文件修改的安全性。
通过本申请上述实施例所示的方案,在page-cache写回目标文件物理页之前对当前进程权限与目标文件权限做二次校验,判断当前进程是否具备修改目标文件内容的权限。可以及时检测出以dirtycow(脏牛漏洞)为代表的未授权写page-cache攻击(攻击者利用内核漏洞,修改page-cache内容,进而篡改特权文件内容)。本方案的实现基于内核hook,所以可以保证未授权写page-cache攻击检测模块启动时,业务正常平稳运行不中断。
在产品侧,请参考图6,其示出了本申请涉及的一种系统架构图。以上述方案应用于linux内核为例,如图6所示,linux内核未授权写page-cache攻击检测工具601可以部署在安卓、ubuntu、centos等操作系统平台中,当目标进程的未授权写page-cache攻击行为被检测到时,首先向云端602发送当前设备状况(对应上述行为信息),由云端602决定是否立即阻断,同时,云端会被告警平台603连接,在告警平台603中实时输出当前攻击警告。具体行为如下:
在linux内核未授权写page-cache攻击检测产品中,正常用户A,攻击者B,设备P;
步骤1:正常用户A登录设备P(linux服务器或linux桌面发行版或安卓手机),加载linux内核未授权写page-cache攻击检测工具。
步骤2:由于设备P存在dirtycow漏洞,攻击者B在获得设备P的普通操作权限后,可以通过该安全漏洞修改特权文件,用于文件勒索或者权限提升攻击。
步骤3:当攻击者B使用dirtycow漏洞进行攻击时,linux内核未授权写page-cache攻击检测模块检测到攻击行为,并将信息发送至云端。
步骤4:由云端根据自定义策略决定继续检测攻击行为还是及时阻断攻击行为,该指令会被回传至page-cache未授权写攻击检测工具。
步骤5:云端将步骤4产生的报警信息,及时同步给告警平台。
请参考图7,其示出了本申请涉及的系统主体工作流程图。
如图7所示,上述系统主体工作流程主要包含工具加载701,与用户使用702相关的部分。
其中,如图7中的左半部分所示,工具加载701环节主要是在客户终端上加载未授权page-cache写攻击检测工具(即上述安全检测工具),由该工具对脏页设置相关函数做检测。
如图7中的右半部分所示,用户使用702环节的细节可以如下:
(1)用户登录终端后发起修改目标文件内容操作;
(2)用户进程接收用户指令后,修改目标文件page-cache内容;
(3)用户进程设置目标进程page-cache为脏页;
(4)用户进程触发未授权page-cache写攻击检测工具的防御检测逻辑;
(5)未授权page-cache写攻击防御的防御检测check为检测当前用户进程是否具备写目标文件权限。如果检测通过,此次检测正常结束,否则进入6;
(6)未通过安全检测,防御方案发现未授权page-cache写攻击,检测到当前行为是恶意的行为;
(7)防御方案将恶意的行为上传至云端;
(8)云端接收恶意的行为报告之后及时报警,该报警信息会实时被用户感知;
(9)云端接收恶意的行为报告之后,向终端运行的检测工具做指令回传,具体内容包括是否及时阻断当前恶意的行为或者是否继续持续检测后续行为。
请参考图8,其示出了本申请涉及的基础原理图。
如图8所示,用户修改特权文件时,首先要修改与目标文件(特权文件)相对应的page-cache内容,然后设置page-cache为脏页,最后脏页内容被回写到文件中。在此类操作中,正常行为与攻击行为的唯一区别在于,普通用户设置脏页时,当前进程具备合法的文件操作权限,但是对于攻击者来说,实施攻击的进程不具备文件操作权限,该特征可以作为本检测方案的主要检测目标,具体执行流程如下:
S801,正常特权用户通过page-cache写特权文件的流程修改特权文件,该进程修改page-cache内容,调用脏页标记(调用set_page_dirty_lock将page-cache设置为脏页)前,进入未授权写page-cache攻击检测check,经检测,当前进程具备修改目标特权文件page-cache权限(当前进程权限与特权文件权限匹配),校验通过,调用set_page_dirty_lock将page-cache设置为脏页的步骤,后续可以通过page-cache回写修改文件内容。
S802,正常普通用户通过page-cache写普通文件的流程修改普通文件,该进程修改page-cache内容,调用脏页标记前,进入未授权写page-cache攻击检测check,经检测,当前进程具备修改目标普通文件page-cache权限(当前进程权限与普通文件权限匹配),校验通过,调用set_page_dirty_lock将page-cache设置为脏页的步骤,后续可以通过page-cache回写修改文件内容。
S803,攻击者通过page-cache写特权文件的流程修改特权文件,该进程修改page-cache内容,调用脏页标记前,进入未授权写page-cache攻击检测check,经检测,当前进程不具备修改目标特权文件page-cache权限当前进程权限与特权文件权限不匹配),校验不通过,检测到威胁并上报云端,可选的,后续可以执行调用set_page_dirty_lock将page-cache设置为脏页的步骤,也可以不执行调用set_page_dirty_lock将page-cache设置为脏页的步骤。
请参考图9,其示出了本申请涉及的一种检测流程图。
如图9所示,root用户A的权限为权限0,特权文件F的权限为权限0可写,设备为P;
特权文件修改行为如下:
步骤91:root用户A权限为0,root用户A登录设备P,修改写权限为0的特权文件F;
步骤92:root用户A写特权文件F时,修改page-cache内容;
步骤93:调用set_page_dirty_lock,触发set_page_dirty_lock处的权限校验;
步骤94:获取特权文件F的写权限(权限0),以及,当前进程权限(权限0);
步骤95:经检测特权文件F的写权限与当前进程的权限一致,写文件操作合法,为正常操作,校验通过;
步骤96:调用set_page_dirty_lock后,修改文件内容。
请参考图10,其示出了本申请涉及的一种检测流程图。
如图10所示,攻击者B的权限为权限1000,特权文件F的权限为权限0可写,设备为P;
攻击行为检测包括:
步骤1001:攻击者B权限为1000,攻击者B登录设备P,通过dirtycow漏洞修改写权限为0的特权文件F;
步骤1002:攻击者B写特权文件F时,修改page-cache内容;
步骤1003:调用set_page_dirty_lock,触发set_page_dirty_lock处的权限校验;
步骤1004:获取特权文件F的写权限(权限0),以及,当前进程权限(权限1000);
步骤1005:经检测特权文件F的写权限与当前进程权限不一致,写文件操作不合法,校验不通过;
步骤1006:此时可以确定检测到攻击行为,阻断后续的文件内容修改并报警,并将信息上传到云端。
请参考图11,其示出了本申请涉及的一种检测流程图。
如图11所示,普通用户C的权限为权限1000,普通文件G的权限为权限1000可写,设备为P;
正常文件修改行为:
步骤1101:普通用户C权限为1000,普通用户C登录设备P,修改写权限为1000的普通文件G;
步骤1102:普通用户C写普通文件G时,修改page-cache内容;
步骤1103:调用set_page_dirty_lock,触发set_page_dirty_lock处的权限校验;
步骤1104:获取普通文件G的写权限(权限1000),以及,当前进程权限(权限1000);
步骤1105:经检测普通文件G的写权限与当前进程权限一致,写文件操作合法,为正常操作,校验通过;
步骤1106:调用set_page_dirty_lock后,修改文件内容。
在本申请实施例所示的方案中,一方面,上述本方案由linux驱动实现,加载时无需重启设备,可以保证业务正常平稳运行不中断。另一方面,可以有效防御以dirtycow为代表的内核安全漏洞,及时阻断攻击者文件勒索或者权限提升等相关行为。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参考图12,其示出了本申请一个实施例提供的进程处理装置的框图。该进程处理装置可以包括:
事件获取模块1201,用于获取操作系统中的第一脏页设置事件;所述第一脏页设置事件是将第一页面缓存设置为脏页的事件;
权限信息获取模块1202,用于获取触发所述第一脏页设置事件的目标进程的权限信息;
处理模块1203,用于响应于所述权限信息指示所述目标进程不具有对所述第一页面缓存对应的目标文件的修改权限,执行指定处理。
在一种可能的实现方式中,所述处理模块1203,用于向云端服务器发送所述第一脏页设置事件对应的行为信息,所述行为信息用于指示写页面缓存的行为。
在一种可能的实现方式中,所述处理模块1203,还用于,
接收所述云端服务器返回的处理指令;
基于所述处理指令,对所述目标进程进行处理。
在一种可能的实现方式中,所述处理指令包括阻断指令;
所述处理模块1203,用于基于所述阻断指令,对所述目标进程进行阻断隔离,或者,对所述目标进程所在的进程集合中的各个进程进行阻断隔离。
在一种可能的实现方式中,所述处理模块1203,还用于对所述目标文件进行恢复处理。
在一种可能的实现方式中,所述处理指令包括检测指令;
所述处理模块1203,用于响应于所述目标进程触发了第二脏页设置事件,向所述云端服务器发送所述第二脏页设置事件对应的行为信息;所述第二脏页设置事件是将第二页面缓存设置为脏页的事件。
在一种可能的实现方式中,所述处理模块1203,还用于,
获取所述目标进程的父进程;
响应于所述父进程触发了第三脏页设置事件,向所述云端服务器发送所述第三脏页设置事件对应的行为信息;所述第三脏页设置事件是将第三页面缓存设置为脏页的事件。
在一种可能的实现方式中,所述行为信息中包含以下信息中的至少一种:
页面缓存的内容、当前访问的网页的信息、当前运行的应用程序的信息;
其中,所述当前访问的网页的信息包括以下至少一种:所述网页的地址、所述网页的类型、所述网页的安全等级;
所述当前运行的应用程序的信息包括以下至少一种:所述应用程序的地址、所述应用程序的类型、所述应用程序的安全等级。
在一种可能的实现方式中,所述事件获取模块1201,用于,
基于钩子机制向操作系统注册对指定函数的检测;所述指定函数是设置页面缓存的属性为脏页的函数;
接收所述操作系统在检测到对所述指定函数的调用时发送的所述第一脏页设置事件。
请参考图13,其示出了本申请一个实施例提供的进程处理装置的框图。该装置可以包括:
行为信息接收模块1301,用于接收终端设备发送的,与第一脏页设置事件对应的行为信息;所述第一脏页设置事件对应的行为信息是所述终端设备获取到操作系统中的第一脏页设置事件,获取到触发所述第一脏页设置事件的目标进程的权限信息,并在所述权限信息指示所述目标进程不具有对第一页面缓存对应的目标文件的修改权限的情况下,确定所述目标进程在未授权的情况下执行了写页面缓存的行为后发送的;所述第一脏页设置事件是将第一页面缓存设置为脏页的事件;所述行为信息用于指示写页面缓存的行为;
处理模块1302,用于基于与所述第一脏页设置事件对应的行为信息,对所述目标进程进行处理。
图14示出了本申请一个示例性实施例提供的计算机设备1400的结构框图。该计算机设备1400可以是终端,比如:VR设备、AR设备、智能手机、平板电脑、MP3播放器(MovingPicture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器。计算机设备1400还可能被称为用户设备、便携式终端等其他名称。
通常,计算机设备1400包括有:处理器1401和存储器1402。
存储器1402可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是有形的和非暂态的。存储器1402还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1402中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1401所执行以实现本申请实施例中提供的方法中,由终端执行的全部或者部分步骤。
在一些实施例中,计算机设备1400还可选包括有:外围设备接口1403和至少一个外围设备。具体地,外围设备包括:射频电路1404、触摸显示屏1405、摄像头1406、音频电路1407和电源1408中的至少一种。
在一些实施例中,计算机设备1400还包括有一个或多个传感器1409。该一个或多个传感器1409包括但不限于:加速度传感器1410、陀螺仪传感器1411、压力传感器1412、光学传感器1413以及接近传感器1414。
本领域技术人员可以理解,上述示出的结构并不构成对计算机设备1400的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图15示出了本申请一示例性实施例示出的计算机设备1500的结构框图。该计算机设备可以实现为本申请上述方案中的云端服务器或告警平台服务器。该计算机设备1500包括中央处理单元(Central Processing Unit,CPU)1501、包括随机存取存储器(RandomAccess Memory,RAM)1502和只读存储器(Read-Only Memory,ROM)1503的系统存储器1504,以及连接系统存储器1504和中央处理单元1501的系统总线1505。该计算机设备1500还包括用于存储操作系统1509、应用程序1510和其他程序模块1511的大容量存储设备1506。
该大容量存储设备1506通过连接到系统总线1505的大容量存储控制器(未示出)连接到中央处理单元1501。该大容量存储设备1506及其相关联的计算机可读介质为计算机设备1500提供非易失性存储。也就是说,该大容量存储设备1506可以包括诸如硬盘或者只读光盘(Compact Disc Read-Only Memory,CD-ROM)驱动器之类的计算机可读介质(未示出)。
不失一般性,该计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、可擦除可编程只读寄存器(Erasable Programmable Read Only Memory,EPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-OnlyMemory,EEPROM)闪存或其他固态存储其技术,CD-ROM、数字多功能光盘(DigitalVersatile Disc,DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知该计算机存储介质不局限于上述几种。上述的系统存储器1504和大容量存储设备1506可以统称为存储器。
根据本公开的各种实施例,该计算机设备1500还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备1500可以通过连接在该系统总线1505上的网络接口单元1507连接到网络,或者说,也可以使用网络接口单元1507来连接到其他类型的网络或远程计算机系统(未示出)。
该存储器还包括至少一条计算机程序,该至少一条计算机程序存储于存储器中,中央处理单元1501通过执行该至少一条计算机程序来实现上述各个实施例所示的方法中,由云端服务器或告警平台服务器执行的全部或者部分步骤。
在一示例性实施例中,还提供了一种计算机可读存储介质,用于存储至少一条计算机程序,该至少一条计算机程序由处理器加载并执行以实现上述各个实施例所示的方法中的全部或部分步骤。例如,该计算机可读存储介质可以是只读存储器、随机存取存储器、只读光盘、磁带、软盘和光数据存储设备等。
在一示例性实施例中,还提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述各个实施例所示的方法中的全部或部分步骤。
本申请在收集用户的相关数据之前以及在收集用户的相关数据的过程中,都可以显示提示界面、弹窗或输出语音提示信息,该提示界面、弹窗或语音提示信息用于提示用户当前正在搜集其相关数据,使得本申请仅仅在获取到用户对该提示界面或者弹窗发出的确认操作后,才开始执行获取用户相关数据的相关步骤,否则(即未获取到用户对该提示界面或者弹窗发出的确认操作时),结束获取用户相关数据的相关步骤,即不获取用户的相关数据。
换句话说,本申请所采集的所有用户数据都是在用户同意并授权的情况下进行采集的,且相关用户数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
上述用户的相关数据包括信息(包括但不限于用户的账号)、数据(包括但不限于用户输入的文本数据、存储的文本/图片数据、展示的文本/图片数据等)及信号等数据。例如,本申请中涉及的用户数据是在充分授权的情况下获取的。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种进程处理方法,其特征在于,所述方法包括:
获取操作系统中的第一脏页设置事件;所述第一脏页设置事件是将第一页面缓存设置为脏页的事件;
获取触发所述第一脏页设置事件的目标进程的权限信息;
响应于所述权限信息指示所述目标进程不具有对所述第一页面缓存对应的目标文件的修改权限,执行指定处理。
2.根据权利要求1所述的方法,其特征在于,所述执行指定处理,包括:
向云端服务器发送所述第一脏页设置事件对应的行为信息,所述行为信息用于指示写页面缓存的行为。
3.根据权利要求2所述的方法,其特征在于,所述执行指定处理,还包括:
接收所述云端服务器返回的处理指令;
基于所述处理指令,对所述目标进程进行处理。
4.根据权利要求3所述的方法,其特征在于,所述处理指令包括阻断指令;
所述基于所述处理指令,对所述目标进程进行处理,包括:
基于所述阻断指令,对所述目标进程进行阻断隔离,或者,对所述目标进程所在的进程集合中的各个进程进行阻断隔离。
5.根据权利要求4所述的方法,其特征在于,所述执行指定处理,还包括:
对所述目标文件进行恢复处理。
6.根据权利要求3所述的方法,其特征在于,所述处理指令包括检测指令;
所述基于所述处理指令,对所述目标进程进行处理,包括:
响应于所述目标进程触发了第二脏页设置事件,向所述云端服务器发送所述第二脏页设置事件对应的行为信息;所述第二脏页设置事件是将第二页面缓存设置为脏页的事件。
7.根据权利要求6所述的方法,其特征在于,所述执行指定处理,还包括:
获取所述目标进程的父进程;
响应于所述父进程触发了第三脏页设置事件,向所述云端服务器发送所述第三脏页设置事件对应的行为信息;所述第三脏页设置事件是将第三页面缓存设置为脏页的事件。
8.根据权利要求2至7任一所述的方法,其特征在于,所述行为信息中包含以下信息中的至少一种:
页面缓存的内容、当前访问的网页的信息、当前运行的应用程序的信息;
其中,所述当前访问的网页的信息包括以下至少一种:所述网页的地址、所述网页的类型、所述网页的安全等级;
所述当前运行的应用程序的信息包括以下至少一种:所述应用程序的地址、所述应用程序的类型、所述应用程序的安全等级。
9.根据权利要求1所述的方法,其特征在于,所述获取操作系统中的第一脏页设置事件,包括:
基于钩子机制向操作系统注册对指定函数的检测;所述指定函数是设置页面缓存的属性为脏页的函数;
接收所述操作系统在检测到对所述指定函数的调用时发送的所述第一脏页设置事件。
10.一种进程处理方法,其特征在于,所述方法包括:
接收终端设备发送的,与第一脏页设置事件对应的行为信息;所述第一脏页设置事件对应的行为信息是所述终端设备获取到操作系统中的第一脏页设置事件,获取到触发所述第一脏页设置事件的目标进程的权限信息,并在所述权限信息指示所述目标进程不具有对第一页面缓存对应的目标文件的修改权限的情况下,确定所述目标进程在未授权的情况下执行了写页面缓存的行为后发送的;所述第一脏页设置事件是将第一页面缓存设置为脏页的事件;所述行为信息用于指示写页面缓存的行为;
基于与所述第一脏页设置事件对应的行为信息,对所述目标进程进行处理。
11.一种进程处理装置,其特征在于,所述装置包括:
事件获取模块,用于获取操作系统中的第一脏页设置事件;所述第一脏页设置事件是将第一页面缓存设置为脏页的事件;
权限信息获取模块,用于获取触发所述第一脏页设置事件的目标进程的权限信息;
处理模块,用于响应于所述权限信息指示所述目标进程不具有对所述第一页面缓存对应的目标文件的修改权限,执行指定处理。
12.一种进程处理装置,其特征在于,所述装置包括:
行为信息接收模块,用于接收终端设备发送的,与第一脏页设置事件对应的行为信息;所述第一脏页设置事件对应的行为信息是所述终端设备获取到操作系统中的第一脏页设置事件,获取到触发所述第一脏页设置事件的目标进程的权限信息,并在所述权限信息指示所述目标进程不具有对第一页面缓存对应的目标文件的修改权限的情况下,确定所述目标进程在未授权的情况下执行了写页面缓存的行为后发送的;所述第一脏页设置事件是将第一页面缓存设置为脏页的事件;所述行为信息用于指示写页面缓存的行为;
处理模块,用于基于与所述第一脏页设置事件对应的行为信息,对所述目标进程进行处理。
13.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行以实现如权利要求1至10任一所述的进程处理方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条计算机程序,所述计算机程序由处理器加载并执行以实现如权利要求1至10任一所述的进程处理方法。
15.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中;所述计算机程序由计算机设备的处理器读取并执行,以实现如权利要求1至10任一所述的进程处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310788783.3A CN116992479A (zh) | 2023-06-29 | 2023-06-29 | 进程处理方法、装置、设备、存储介质及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310788783.3A CN116992479A (zh) | 2023-06-29 | 2023-06-29 | 进程处理方法、装置、设备、存储介质及程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116992479A true CN116992479A (zh) | 2023-11-03 |
Family
ID=88527421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310788783.3A Pending CN116992479A (zh) | 2023-06-29 | 2023-06-29 | 进程处理方法、装置、设备、存储介质及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116992479A (zh) |
-
2023
- 2023-06-29 CN CN202310788783.3A patent/CN116992479A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3502943B1 (en) | Method and system for generating cognitive security intelligence for detecting and preventing malwares | |
US10235524B2 (en) | Methods and apparatus for identifying and removing malicious applications | |
US10893068B1 (en) | Ransomware file modification prevention technique | |
US8181247B1 (en) | System and method for protecting a computer system from the activity of malicious objects | |
RU2595511C2 (ru) | Система и способ ограничения работы доверенных приложений при наличии подозрительных приложений | |
US11366896B2 (en) | System and method for detecting anomalous events based on a dump of a software process | |
US10341355B1 (en) | Confidential malicious behavior analysis for virtual computing resources | |
US10339307B2 (en) | Intrusion detection system in a device comprising a first operating system and a second operating system | |
KR102180098B1 (ko) | 악성코드 모니터링 및 사용자 단말 제어 기능을 수행하는 악성코드 탐지 시스템 | |
CN107122664B (zh) | 安全防护方法及装置 | |
US11251976B2 (en) | Data security processing method and terminal thereof, and server | |
CN116708033B (zh) | 终端安全检测方法、装置、电子设备及存储介质 | |
US9785775B1 (en) | Malware management | |
CN109784051A (zh) | 信息安全防护方法、装置及设备 | |
CN111783082A (zh) | 进程的追溯方法、装置、终端和计算机可读存储介质 | |
CN116992479A (zh) | 进程处理方法、装置、设备、存储介质及程序产品 | |
EP2584484B1 (en) | System and method for protecting a computer system from the activity of malicious objects | |
US11811803B2 (en) | Method of threat detection | |
US11763004B1 (en) | System and method for bootkit detection | |
CN116346488B (zh) | 一种越权访问的检测方法及装置 | |
RU2700185C1 (ru) | Способ обнаружения скрытого программного обеспечения в вычислительной системе, работающей под управлением POSIX-совместимой операционной системы | |
US20240232347A9 (en) | Analyzing file entropy to identify adverse conditions | |
US20240134976A1 (en) | Analyzing file entropy to identify adverse conditions | |
CN117640159A (zh) | 异常访问检测方法、装置、设备、介质及程序产品 | |
CN115865429A (zh) | 访问控制方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |