CN115801292A - 访问请求的鉴权方法和装置、存储介质及电子设备 - Google Patents
访问请求的鉴权方法和装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN115801292A CN115801292A CN202111051326.3A CN202111051326A CN115801292A CN 115801292 A CN115801292 A CN 115801292A CN 202111051326 A CN202111051326 A CN 202111051326A CN 115801292 A CN115801292 A CN 115801292A
- Authority
- CN
- China
- Prior art keywords
- information
- storage space
- process information
- malicious
- information storage
- 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
Images
Abstract
本发明公开了一种访问请求的鉴权方法和装置、存储介质及电子设备。其中,该方法包括:在检测到第一进程发起的用户数据协议UDP访问请求时,获取第一进程的进程标识;根据进程标识,在动态信息存储空间中获取第一进程的第一进程信息;在异常信息存储空间中查找与第一进程信息匹配的进程信息;在异常信息存储空间中查找到与第一进程信息匹配的进程信息时,确定第一进程为恶意进程,并中断UDP访问请求的传输。本发明解决了相关技术中无法对UDP访问请求进行鉴权的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种访问请求的鉴权方法和装置、存储介质及电子设备。
背景技术
在相关技术中的网络访问鉴权的过程中,由访问代理(Proxy)劫持访问主体发送到访问客体的所有访问请求,并由访问代理将劫持到的访问请求按照协议类型发送给对应的安全管控进程进行网络访问鉴权。
对于用户数据协议(User Date Protocol,简称为UDP)的访问请求,相关技术中需要先采集发起UDP访问请求的进程的进程信息,并由访问代理向安全管控进程发起票据申请,访问代理收到服务端发送的票据后,才允许该UDP访问请求访问网络。然而,由于UDP传输协议是无连接的协议,对于发起UDP访问请求的进程的进程信息采集的失败率较高,导致无法进行网络访问鉴权,或者,导致网络访问鉴权出错,降低了网络访问的安全性。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种访问请求的鉴权方法和装置、存储介质及电子设备,以至少解决相关技术中无法对UDP访问请求进行鉴权的技术问题。
根据本发明实施例的一个方面,提供了一种访问请求的鉴权方法,包括:在检测到第一进程发起的用户数据协议UDP访问请求时,获取所述第一进程的进程标识;根据所述进程标识,在动态信息存储空间中获取所述第一进程的第一进程信息,其中,所述第一进程信息是在所述第一进程被创建时采集到的进程信息,所述动态信息存储空间中记录了已创建的且未退出的进程的进程信息;在异常信息存储空间中查找与所述第一进程信息匹配的进程信息,其中,所述异常信息存储空间中记录了恶意进程的进程信息;在所述异常信息存储空间中查找到与所述第一进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
可选地,在第一进程发起的UDP访问请求之前,所述方法还包括:在检测到所述第一进程被创建时,采集所述第一进程信息;将所述第一进程信息记录到所述动态信息存储空间中。
可选地,所述方法还包括:在所述异常信息存储空间中查找不到与所述第一进程信息匹配的进程信息时,在所述动态信息存储空间中查找与第二进程的进程标识对应的第二进程信息,其中,所述第二进程是所述第一进程的父进程或者是创建所述第一进程的进程,所述第二进程信息是在所述第二进程被创建时采集到的所述第二进程的进程信息;在所述异常信息存储空间中查找与所述第二进程信息匹配的进程信息;在所述异常信息存储空间中查找到与所述第二进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
可选地,所述方法还还包括:在所述异常信息存储空间中查找不到与所述第一进程信息匹配的进程信息,以及与所述第二进程信息匹配的进程信息时,将所述第一进程信息发送给服务器,其中,所述服务器上存储有恶意进程名单,所述恶意进程名单中记录了恶意进程的进程信息;获取所述服务器发送的识别结果,其中,所述识别结果用于表示所述第一进程是否为恶意进程。
可选地,所述方法还包括:在所述服务器上获取所述第一进程信息;在所述恶意进程名单中查找与所述第一进程信息匹配的进程信息,其中,所述与所述第一进程信息匹配的进程信息包括:所述第一进程的进程名称、所述第一进程的路径信息、以及所述第一进程的可执行文件的最近修改时间;在所述恶意进程名单中查找到与所述第一进程信息匹配的进程信息时,发送识别结果,其中,所述识别结果用于表示所述第一进程为恶意进程。
可选地,所述方法还包括:在所述服务器上获取所述第二进程信息,其中,所述第二进程信息是,在所述异常信息存储空间中查找不到与所述第一进程信息匹配的进程信息,以及与所述第二进程信息匹配的进程信息时,发送给所述服务器的进程信息;在所述恶意进程名单中查找与所述第二进程信息匹配的进程信息,其中,所述与所述第二进程信息匹配的进程信息包括:所述第二进程的进程名称、所述第二进程的路径信息、以及所述第二进程的可执行文件的最近修改时间;在所述恶意进程名单中查找到与所述第二进程信息匹配的进程信息时,发送识别结果,其中,所述识别结果用于表示所述第二进程和所述第一进程为恶意进程。
可选地,所述方法还包括:在目标操作系统的内核层通过API接口函数检测目标终端上创建的所述第一进程,其中,所述目标操作系统是所述目标终端的操作系统;在检测到所述目标终端上创建的所述第一进程时,采集所述第一进程的进程信息,其中,所述第一进程的进程信息包括:所述第一进程的进程标识、所述第一进程的的进程名称、所述第一进程的的父进程的进程标识、创建所述第一进程的进程的进程标识,所述第一进程的路径信息,所述第一进程的可执行文件的最近修改时间;将所述第一进程的进程信息记录到所述动态信息存储空间中。
可选地,将所述第一进程的进程信息记录到所述动态信息存储空间中,包括:将所述第一进程的进程信息记录到第一双向链表的第一节点中,其中,所述动态信息存储空间包括所述第一双向链表,所述第一双向链表中的每个节点用于记录已创建的且未退出的一个进程的进程信息。
可选地,所述方法还包括:在检测到所述第一进程退出时,删除所述第一双向链表的所述第一节点。
可选地,在所述将所述创建的进程的进程信息记录到所述动态信息存储空间中之后,所述方法还包括:通过所述目标操作系统的应用层将所述动态信息存储空间中的进程信息异步传输给所述服务器,其中,所述服务器用于根据所述动态信息存储空间中的进程信息,确定动态信息存储空间中的进程是否为恶意进程;将被所述服务器标记为恶意进程的进程信息记录到异常信息存储空间中,其中,所述异常信息存储空间中记录了恶意进程的进程信息。
可选地,所述将被所述服务器标记为恶意进程的进程信息记录到异常信息存储空间中,包括:将被所述服务器标记为恶意进程的进程信息记录到第二双向链表的第二节点,其中,所述异常信息存储空间中包括所述第二双向链表,所述第二双向链表中的每个节点用于记录预定时间范围内被所述服务器标记为恶意进程的进程信息。
根据本发明实施例的另一方面,还提供了一种访问请求的鉴权装置,包括:第一获取模块,用于在检测到第一进程发起的用户数据协议UDP访问请求时,获取所述第一进程的进程标识;第二获取模块,用于根据所述进程标识,在动态信息存储空间中获取所述第一进程的第一进程信息,其中,所述第一进程信息是在所述第一进程被创建时采集到的进程信息,所述动态信息存储空间中记录了已创建的且未退出的进程的进程信息;查找模块,用于在异常信息存储空间中查找与所述第一进程信息匹配的进程信息,其中,所述异常信息存储空间中记录了恶意进程的进程信息;中断模块,用于在所述异常信息存储空间中查找到与所述第一进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述访问请求的鉴权方法。
根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过所述计算机程序执行上述的访问请求的鉴权方法。
在本发明实施例中,在用于发送UDP访问请求的进程被创建时,采集该进程的进程信息。这样,当该进程发起UDP访问请求时,可以通过该进程的进程标识,来获取到预先采集到的该进程的进程信息,从而可以利用这些进程信息,对于上述UDP访问请求进行鉴权,解决了相关技术中因为在发起UDP访问请求时无法及时采集进程的进程信息,所导致的无法对UDP访问请求进行鉴权的技术问题,提高了网络访问的安全性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的访问请求的鉴权方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的访问请求的鉴权方法流程图;
图3是根据本发明实施例的一种可选的访问请求的鉴权方法的网络架构图;
图4是根据本发明实施例的一种可选的访问请求的鉴权方法的结构示意图;
图5是根据本发明实施例的设备结构示意图;
图6是根据本发明实施例的一种可选的设备与服务器的关系示意图;
图7是根据本发明实施例的一种可选的客户端与服务器之间的信息交互示意图;
图8是根据本发明实施例的一种可选的客户端与服务器之间的信息交互示意图一;
图9是根据本发明实施例的一种可选的客户端与服务器之间的信息交互示意图二;
图10是根据本发明实施例的一种可选的动态信息存储空间结构示意图;
图11是根据本发明实施例的一种可选的代理客户端与安全客户端的信息交互示意图;
图12是根据本发明实施例的一种可选的访问请求的鉴权装置的结构示意图;
图13是根据本发明实施例的一种可选的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或者术语适用于如下解释:
可信应用:管理端授信的,终端可访问内部业务系统的应用载体,包括应用名,应用MD5,签名信息等。
可达区域:终端用户可以通过零信任网络访问企业设置的内部站点列表。
登录凭证:用户成功登录安全客户端后,安全服务端为该用户指定的一个加密串,表示该用户的登录授权信息,包括用户信息和授权有效期。加密存储在客户端。
访问请求凭证:安全服务端为单个访问请求发放的授权信息,用于标识该访问请求的授权状态。
零信任访问控制策略:由用户可使用的进程信息(可信应用)以及可访问的业务站点(可达区域)组成,在权限开通的情况下,用户可通过任何一个可信应用访问到任一个可达区域。零信任访问控制策略的粒度为登录用户,允许为不同的登录用户制定不同的零信任策略。
访问代理:终端访问代理是部署于受控设备的发起安全访问的终端代理,负责访问主体可信身份验证的请求发起,验证身份可信,即可与访问网关建立加密的访问连接,同时也是访问控制的策略执行点。
直连访问:在零信任网络访问架构中,某个应用对站点发起网络访问请求,由全流量代理劫持到流量后,经由全流量代理向该目标站点发起网络访问,即发起直接连接的访问,由全流量代理将该目标站点的网络响应发送给该应用,这种访问模式称为直连访问。
代理访问:在零信任网络访问架构中,某个应用对站点发起网络访问请求,由全流量代理劫持到流量后,由全流量代理向智能网关发起流量转发,经由智能网关代理针对目标业务站点的访问,访问后由智能网关将该目标站点的网络响应发送给全流量代理,由全流量代理将目标站点的网络响应转发至该应用,这种访问模式称为代理访问。
访问主体:在网络中,发起访问的一方,访问内网业务资源的人/设备/应用/,是由人、设备、应用等单一组成或者组合形成的一种数字实体。
访问客体:在网络中,被访问的一方,即企业内网业务资源,数据,开发测试环境,运维环境等等。
服务寻址:在分布式级联部署方式中,各不同的业务部署在不同的服务器中,寻找客户端不同的业务模块关心的后台服务所部署的服务器连接地址的过程即为服务寻址。
cache颠簸:在当前任务被抢占时,当前cache中的内容需要被接下来获得运行权的进程覆盖,接下来待运行的进程需要花费时间将Cache预热才能达到良好的运行效率,同时,在保存和恢复上下文的过程中cache中的数据会失效。在此期间缓存从失效状态到最后可用的状态之间被称为cache颠簸。
原子操作:处理器支持的不可被中断的一个或一系列操作,包括CAS(Compare&Set,比较并交换),FAA(Fetch and Add,原子加)等操作。
白盒密码技术:白盒密码技术是一项能够抵抗白盒攻击的密码技术,白盒密码技术从实现方式上可以分为两类:静态白盒和动态白盒。
动态挑战:由服务端自动或者由管理端手动下发的针对真实客户端的动态检测。通过下发动态指令校验运行上下文和有没有正确返回挑战信息来判断否是真实客户端。
静态密钥白盒:将算法的密钥和指定的加密算法绑定混淆,生成密钥白盒,一个密钥对应一个密钥白盒,以文件形式存在,在开发应用程序时需集成到工程里编译生成二进制文件。
敏感信息:包括用户id,密码等在内的用户的登录信息,以及登录凭证(大票)和网络访问凭据(小票)。
CI系统:提供针对软件产品的包括自动编译、构建、出包、分发、部署和测试等在流程在内的自动化系统。
业务模块:由多个文件组成的完成某些特定功能的集合。模块的概念除了可以更清晰的描述产品,还可以更方便的指定要安装卸载的内容。如可以指定仅安装一个"威胁响应"模块,或"应用软件管理"模块。
插件:表示各个业务执行模块,主要以dll的形式存在,一般此dll管理多个子模块。
持久化库:数据据持久化就是将内存中的数据结构或对象模型转换为关系模型、XML、JSON、二进制流等,以及将存储模型转换为内存中的数据模型的统称,持久化库就是存储在设备本地的磁盘文件或数据文件中的由内存中数据结构或对象模型转换而来的关系模型、XML、JSON、二进制流等内容的存储介质,可以使用加密文件,嵌入型数据库等实现。
策略:管理员在管理端下发的用于企业终端管理的一系列规则集合。包括补丁修复、零信任网络管控、安全加固策略等。策略可能包含票据、时效、有效次数等敏感信息。
WFP:Windows自从Vista系统后引入的过滤平台,包括一系列服务和系统API,为网络数据包过滤提供平台支持。
TDI:传输层驱动接口,用来进行传输层数据包过滤。从Windows 2000到WindowsVista系统均支持,Vista系统之后被WFP过滤平台所取代。
CRC32编码:CRC全称Cyclic Redundancy Check,又叫循环冗余校验。CRC32跟md5,sha1一样都是哈希算法的一种。crc32的优势是速度快,但是碰撞的概率较高。
下面结合实施例对本发明进行说明:
根据本发明实施例的一个方面,提供了一种访问请求的鉴权方法,可选地,在本实施例中,上述访问请求的鉴权方法可以应用于如图1所示的由服务器112和用户设备102所构成的硬件环境中。如图1所示,服务器112通过网络110与用户设备102进行连接,可用于为用户终端或用户终端上安装的客户端提供服务,客户端可以是视频客户端、即时通信客户端、浏览器客户端、教育客户端、游戏客户端等。可在服务器上或独立于服务器设置数据库114,用于为服务器112提供数据存储服务。上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、WIFI及其他实现无线通信的网络,用户设备102可以是配置有应用程序的终端,具体可以包括:显示器108、处理器106以及存储器104,可以包括但不限于以下至少之一:手机(如Android手机、iOS手机等)、笔记本电脑、平板电脑、掌上电脑、MID(Mobile Internet Devices,移动互联网设备)、PAD、台式电脑、智能电视、可穿戴设备等计算机设备,上述服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群,或者是云服务器。
其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
结合图1所示,上述访问请求的鉴权方法可以在服务器112通过如下步骤实现:
S1,在检测到第一进程发起的用户数据协议UDP访问请求时,获取所述第一进程的进程标识;
S2,根据所述进程标识,在动态信息存储空间中获取所述第一进程的第一进程信息,其中,所述第一进程信息是在所述第一进程被创建时采集到的进程信息,所述动态信息存储空间中记录了已创建的且未退出的进程的进程信息;
S3,在异常信息存储空间中查找与所述第一进程信息匹配的进程信息,其中,所述异常信息存储空间中记录了恶意进程的进程信息;
S4,在所述异常信息存储空间中查找到与所述第一进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
可选地,在本实施例中,上述访问请求的鉴权方法还可以通过包括但不限于配置于服务器的客户端使用。
可选地,在本实施例中,上述访问请求的鉴权方法可以应用于区块链架构中,其中,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
可选地,作为一种可选的实施方式,如图2所示,上述访问请求的鉴权方法包括:
S202,在检测到第一进程发起的用户数据协议UDP访问请求时,获取所述第一进程的进程标识;
其中,上述步骤的执行主体可以是设备,例如,可以是用户使用的终端设备(目标终端)。设备上可以安装了安全客户端,设备检测到UDP类型的访问请求,确定发起该访问请求的为第一进程,获取第一进程的进程标识ID。
S204,根据所述进程标识,在动态信息存储空间中获取所述第一进程的第一进程信息,其中,所述第一进程信息是在所述第一进程被创建时采集到的进程信息,所述动态信息存储空间中记录了已创建的且未退出的进程的进程信息;
其中,上述动态信息存储空间可以是设备本地的存储空间。当进程被创建时,采集新创建的第一进程的进程信息,并将第一进程的标识和第一进程的进程信息记录在动态信息存储空间中。通过第一进程标识可以在设备本地存储的动态信息存储空间中查找第一进城的进程信息。当进程结束时,在动态信息存储空间中删除已结束的进程的进程信息,即动态信息存储空间中记录的是已创建且未推出的进程的进程信息。
S206,在异常信息存储空间中查找与所述第一进程信息匹配的进程信息,其中,所述异常信息存储空间中记录了恶意进程的进程信息;
其中,上述异常信息存储空间可以是设备本地的存储空间。异常信息存储空间中记录了恶意进程的进程信息。若在异常信息存储空间中查找到与第一进程的进程信息相匹配的进程信息,则第一进程是恶意进程。
S208,在所述异常信息存储空间中查找到与所述第一进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
图3是根据本发明实施例的一种可选的访问请求的鉴权方法的网络架构图,如图3所示,核心模块主要有安全客户端、安全服务端、访问代理和智能网关。
1,安全客户端:安装在设备上的安全Agent,负责验证设备上的用户可信身份,验证设备是否可信以及应用是否可信;将未知的进程向服务器申请进程送检。
2,访问代理:通过TUN/TAP虚拟网卡劫持设备访问请求,通过安全客户端鉴权后负责将访问请求转发给智能网关,如果没有通过鉴权则走直连或中断连接。
3,智能网关:部署在应用程序和数据资源的入口,负责每一个访问请求的验证,授权和转发。
4,安全服务端:也称为后台服务器,通过策略控制引擎:对业务流量进行安全调度,按照用户-设备-软件-应用颗粒度授权。其中,身份验证模块对用户身份进行验证,设备可信模块验证设备硬件信息和设备安全状态,应用检测模块检测应用进程是否安全,如是否有漏洞,是否有病毒木马等。后台服务器定期向目标云服务器(也称为威胁情报云)发送服务信息或tav定期发起文件送检,识别出恶意进程则通知安全客户端执行异步阻断操作,本申请中的服务器包括上述后台服务器和目标云服务器。
总体流程是:访问主体通过安全客户端发起针对访问客体的访问请求,安全客户端通过代理客户端劫持到访问请求,代理客户端向安全客户端发起鉴权请求(即代理向安全客户端申请当次访问请求的凭证),请求参数包括源互联网地址或者域名,源端口,目的互联网地址或者域名,目的端口,应用程序对应的进程识别码PID。安全客户端通过代理发送的进程PID采集进程的MD5,进程路径,进程最近修改时间,版权信息,签名信息等,连同代理客户端传递过来的访问请求的源互联网地址或者域名,源端口,目的互联网地址或者域名,目的端口,向安全服务端(后台服务器)申请票据,如果申请成功,则将票据,票据最大使用次数,票据有效时间作为响应发送给代理客户端。代理客户端首先向访问网关发起Https请求,其中,在Authorization首部字段中带上安全客户端传递过来的访问请求凭证(票据),访问网关收到代理客户端的请求后,解析出首部字段中的票据,向安全服务端校验票据,如果校验成功,则访问网关跟代理客户端成功建立连接,之后代理客户端将原始访问请求发送给访问网关,由网关转发至到对应的业务服务器,代理实际的应用网络访问;如果访问网关校验票据失败,则代理客户端与访问网关的连接中断,针对零信任策略以外的应用访问特定站点的流量,则通过代理客户端直接向目标业务服务器发起网络访问请求实现直连。
例如,图4是根据本发明实施例的一种可选的访问请求的鉴权方法的结构示意图,如图4所示,具体包括:
零信任网络安全服务提供方402:通过零信任代理和访问网关为访问主体通过访问请求访问客体的资源提供统一入口,零信任网络安全服务提供方为统一入口提供鉴权操作,只有通过鉴权的访问请求才能由零信任代理转发给访问网关,通过访问网关代理实际业务系统的访问。
零信任网关404:部署在企业应用程序和数据资源的入口,负责对每一个访问企业资源的会话请求进行验证和请求转发。
访问主体406:在网络中,发起访问的一方,访问内网业务资源的人/设备/应用。
访问客体408:在网络中,被访问的一方,即企业内网业务资源,数据,开发测试环境,运维环境等。
上述网络环境可以包括但不限于云技术实现:
云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
按照逻辑功能划分,在IaaS(Infrastructure as a Service,基础设施即服务)层上可以部署PaaS(Platform as a Service,平台即服务)层,PaaS层之上再部署SaaS(Software as a Service,软件即服务)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,SaaS和PaaS相对于IaaS是上层。
具体而言,上述访问请求的鉴权方法可以包括但不限于应用于云安全领域:
云安全(Cloud Security)是指基于云计算商业模式应用的安全软件、硬件、用户、机构、安全云平台的总称。云安全融合了并行处理、网格计算、未知病毒行为判断等新兴技术和概念,通过网状的大量客户端对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,并发送到服务端进行自动分析和处理,再把病毒和木马的解决方案分发到每一个客户端。
云安全主要研究方向包括:1.云计算安全,主要研究如何保障云自身及云上各种应用的安全,包括云计算机系统安全、用户数据的安全存储与隔离、用户接入认证、信息传输安全、网络攻击防护、合规审计等;2.安全基础设施的云化,主要研究如何采用云计算新建与整合安全基础设施资源,优化安全防护机制,包括通过云计算技术构建超大规模安全事件、信息采集与处理平台,实现对海量信息的采集与关联分析,提升全网安全事件把控能力及风险控制能力;3.云安全服务,主要研究各种基于云计算平台为用户提供的安全服务,如防病毒服务等。
可选地,在第一进程发起的UDP访问请求之前,所述方法还包括:在检测到所述第一进程被创建时,采集所述第一进程信息;将所述第一进程信息记录到所述动态信息存储空间中。
作为一个可选的方式,设备作为访问主体,上述第一进程是设备中新创建的进程,在第一进程(对应于上述第一进程)被创建时,采集第一进程的进程信息,包括但不限于:所述第一进程的进程标识、所述第一进程的进程名称、所述第一进程的父进程的进程标识、创建所述第一进程的进程的进程标识,所述第一进程的路径信息,所述第一进程的可执行文件的最近修改时间。创建第一进程的进程的线程标识(CreatingThreadId->UniqueThread)、第一进程的exe文件的文件对象、exe文件绝对路径、进程创建的命令行参数和进程创建的状态(可控制该进程允许被创建)等。作为访问主体,设备在动态信息存储空间中缓存了已创建并未退出的所有设备进程的进程信息。
可选地,所述方法还包括:在所述异常信息存储空间中查找不到与所述第一进程信息匹配的进程信息时,在所述动态信息存储空间中查找与第二进程的进程标识对应的第二进程信息,其中,所述第二进程是所述第一进程的父进程或者是创建所述第一进程的进程,所述第二进程信息是在所述第二进程被创建时采集到的所述第二进程的进程信息;在所述异常信息存储空间中查找与所述第二进程信息匹配的进程信息;在所述异常信息存储空间中查找到与所述第二进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
作为一个可选的实施方式,在设备的异常信息存储空间中查找不到第一进程的进程信息的情况下,在异常信息存储空间中查找第一进程的父进程(第二进程)的进程信息,以及在异常信息存储空间中查找创建第一进程的进程(第二进程)的进程信息。若在异常信息存储空间中查找到父进程的进程信息,则父进程的子进程(第一进程)为恶意进程。若在异常信息存储空间中中查找到创建第一进程的进程的进程信息,则创建第一进程的进程,以及被创建的第一进程为恶意进程,并中断第一进程的UDP的访问请求。
作为一个可选的实施方式,如图5所示是根据本发明可选实施例的设备结构示意图,设备上安装了安全客户端。设备的R0层(内核层)中包括动态信息存储空间和异常信息存储空间。当有进程创建时,目标回调函数通过参数可以获取到新创建的第一进程的进程体,以及进程信息,将进程信息记录到动态信息存储空间。动态信息存储空间中记录的进程信息包括:所述第一进程的进程标识、所述第一进程的进程名称、所述第一进程的父进程的进程标识、创建所述第一进程的进程的进程标识,所述第一进程的路径信息,所述第一进程的可执行文件的最近修改时间。创建第一进程的进程的线程标识(CreatingThreadId->UniqueThread)、第一进程的exe文件的文件对象、exe文件绝对路径、进程创建的命令行参数和进程创建的状态(可控制该进程允许被创建)等。当有进程退出时,回调函数可以获取到要退出的进程的进程标识(根据HANDLE参数获取到)和进程体(根据PEPROCESS类型参数获取到,表示指向当前要退出的进程的进程对象的指针),在动态信息存储空间中删除已退出的进程的进程信息。
在R0层的异常信息存储空间中存储的是恶意进程的进程信息,该恶意进程可以是历史时间中安全客户端检测出的恶意进程,也可以是后台服务器或云服务器检测出的恶意进程。如图6所示是根据本发明可选实施例的设备与服务器的关系示意图,其中,后台服务器可以与多个设备进行网络连接,后台服务器与目标云服务器连接。设备、后台服务器和云服务器中的恶意进程的进程信息可以是实时同步的。对于设备检测出的恶意进程,可以将检测出的恶意进程的进程信息发送给后台服务器,后台服务器将获取到的恶意进程的进程信息记录到恶意进程名单,并将恶意进程的进程信息发送给目标云服务器,目标云服务器将该恶意进程的进程信息进行记录。对于后台服务器检测出的恶意进程,后台服务器将检测出的恶意进程的进程信息发送给各个与其网络连接的设备,以及目标云服务器,各个设备与目标云服务器将接收到的恶意进程的进程信息保存。对于目标云服务器检测到的恶意进程,将恶意进程的进程信息发送给后台服务器,后台服务器将该恶意进程的进程信息记录在恶意进程名单,并将该恶意进程的进程信息发送给各个连接设备,各个设备将恶意进程的进程信息记录在异常信息存储空间,由此,各个设备与后台服务器和云服务器中存储的恶意进程的进程信息实现了同步。
可选地,所述在缓存的异常信息存储空间中查找与所述第一进程信息匹配的进程信息,包括:在所述异常信息存储空间中查找与所述第一进程信息匹配的进程信息,其中,所述与所述第一进程信息匹配的进程信息包括:所述第一进程的进程名称、所述第一进程的路径信息、以及所述第一进程的可执行文件的最近修改时间。
可选地,所述方法还还包括:在所述异常信息存储空间中查找不到与所述第一进程信息匹配的进程信息,以及与所述第二进程信息匹配的进程信息时,将所述第一进程信息发送给服务器,其中,所述服务器上存储有恶意进程名单,所述恶意进程名单中记录了恶意进程的进程信息;获取所述服务器发送的识别结果,其中,所述识别结果用于表示所述第一进程是否为恶意进程。
作为一个可选的实施方式,首先在设备本地存储的异常信息存储空间中查找与第一进程信息匹配的进程信息,若在异常信息存储空间中查找不到,则在异常信息存储空间中查找与第一进程的父进程匹配的进程信息,以及创建第一进程的进程信息。若在异常信息存储空间中查找到与第一进程信息匹配的进程信息,或者,查找到与父进程匹配的进程信息,或者,查找到创建第一进程的进程的进程信息,则确认第一进程为恶意进程。若在恶意进程信息中均查找不到上述与第一进程、父进程、创建第一进程的进程的进程信息,则将第一进程信息、创建第一进程的进程的进程信息,以及第一进程的父进程的进程信息发送给后台服务器,由后台服务器对上述进程信息进行识别,若识别结果表示第一进程为恶意进程,或者父进程为恶意进程,或是创建第一进程的进程为恶意进程,则第一进程为恶意进程,终端第一进程发起的UDP请求。
作为一个可选的实施方式,如图7所示是根据本发明可选实施例的客户端与服务器之间的信息交互示意图,其中包括安全客户端、后台服务器和目标云服务器。安全客户端可以安装在设备上。在设备上创建新的进程时,采集新创建的第一进程的进程信息,并将该进程信息缓存到动态信息存储空间,其中动态信息存储空间中记录了已创建且未退出的进程信息。在检测到第一进程发起UDP访问请求时,在动态信息存储空间中获取发起UDP访问请求的第一进程的进程信息。在安全客户端的异常信息存储空间中查找是否存在与第一进程信息想匹配的进程信息,若存在则确认该第一进程是恶意进程。若在安全客户端的异常信息存储空间中未查找到与第一进程信息相匹配的进程信息。则安全客户端将第一进程信息发送给后台服务器,在后台服务器的异常信息存储空间中查找是否存在与第一进程相匹配的进程信息。若在后台服务器的异常信息存储空间中查找到与第一进程信息相匹配的进程信息,则确认第一进程是恶意进程,后台服务器将查找结果返回至安全客户端。若在后台服务器未查找到与第一进程信息相匹配的进程信息,则由后台服务器将第一进程信息发送至目标云服务器,在目标云服务器的异常信息存储空间中查找是否存在与第一进程匹配的进程信息,由目标云服务器确认该第一进程是否为恶意进程,目标云服务器将识别结果返回至安全客户端。
作为一个可选的实施方式,后台服务器的自身缓存中没有存储第一进程的进程信息,安全服务器可以向威胁情报云查服务(对应于目标云服务器)发起实际的送检请求,并根据威胁情报云查服务的响应结果更新自身送检缓存。
安全客户端通过采集到第一进程的进程信息,然后将第一进程的进程信息异步发送给后台服务器,后台服务器推送第一进程的进程信息到威胁情报云查服务(对应于目标云服务器)探测进程文件的安全性,如果识别是恶意进程,则由威胁情报云查服务响应给后台,后台服务器将恶意进程的名单推送到安全客户端中。
可选地,所述方法还包括:在所述服务器上获取所述第二进程信息,其中,所述第二进程信息是,在所述异常信息存储空间中查找不到与所述第一进程信息匹配的进程信息,以及与所述第二进程信息匹配的进程信息时,发送给所述服务器的进程信息;在所述恶意进程名单中查找与所述第二进程信息匹配的进程信息,其中,所述与所述第二进程信息匹配的进程信息包括:所述第二进程的进程名称、所述第二进程的路径信息、以及所述第二进程的可执行文件的最近修改时间;在所述恶意进程名单中查找到与所述第二进程信息匹配的进程信息时,发送识别结果,其中,所述识别结果用于表示所述第二进程和所述第一进程为恶意进程。
作为一个可选的实施方式,如图8所示是根据本发明可选实施例的客户端与服务器之间的信息交互示意图一,其中包括安全客户端、服务器和目标云服务器。安全客户端可以安装在设备上。在设备上创建新的进程时,采集新创建的第二进程的进程信息,并将第二进程的第二进程信息缓存到动态信息存储空间,其中动态信息存储空间中记录了已创建且未退出的进程信息。在检测到第一进程发起UDP访问请求时,确认该第一进程的父进程为第二进程,在动态信息存储空间中获取第二进程的进程信息。在安全客户端的异常信息存储空间中查找是否存在与第二进程信息相匹配的进程信息,若存在则确认该第二进程是恶意进程,并确认第二进程的子进程第一进程也为恶意进程。若在安全客户端的异常信息存储空间中未查找到与第二进程信息相匹配的进程信息。则安全客户端将第二进程信息发送给服务器,在服务器的异常信息存储空间中查找是否存在与第二进程相匹配的进程信息。若在服务器的异常信息存储空间中查找到与第二进程信息相匹配的进程信息,则确认第二进程是恶意进程,并确认第二进程的子进程第一进程也为恶意进程,服务器将查找结果返回至安全客户端。若在服务器未查找到与第二进程信息相匹配的进程信息,则由服务器将第二进程信息发送至目标云服务器,在目标云服务器的异常信息存储空间中查找是否存在与第二进程匹配的进程信息,由目标云服务器确认该第二进程是否为恶意进程,目标云服务器将识别结果返回至安全客户端。
作为一个可选的实施方式,如图9所示是根据本发明可选实施例的客户端与服务器之间的信息交互示意图二,其中包括安全客户端、服务器和目标云服务器。安全客户端可以安装在设备上。在设备上创建新的进程时,采集新创建的第二进程的进程信息,并将该进程的进程信息缓存到动态信息存储空间,其中动态信息存储空间中记录了已创建且未退出的进程信息。在检测到第一进程发起UDP访问请求时,确认该第一进程是由第二进程创建的,在动态信息存储空间中获取第二进程的进程信息。在安全客户端的异常信息存储空间中查找是否存在与第二进程信息相匹配的进程信息,若存在则确认该第二进程是恶意进程,并确认第二进程创建的第一进程也为恶意进程。若在安全客户端的异常信息存储空间中未查找到与第二进程信息相匹配的进程信息。则安全客户端将第二进程信息发送给后台服务器,在后台服务器的恶意进程名单中查找是否存在与第二进程相匹配的进程信息。若在后台服务器的恶意进程名单中查找到与第二进程信息相匹配的进程信息,则确认第二进程是恶意进程,并确认第二进程创建的第一进程也为恶意进程,后台服务器将查找结果返回至安全客户端。若在后台服务器未查找到与第二进程信息相匹配的进程信息,则由后台服务器将第二进程信息发送至目标云服务器,通过目标云服务器对第二进程的第二进程信息进行识别,识别该第二进程是否为恶意进程,目标云服务器将识别结果返回至安全客户端。
作为一个可选的实施方式,创建进程的进程和父进程可以是同一进程,也可以是不同的进程。例如,进程A调用非法进程B创建进程C,由于进程B是非法进程,在此种情况下,A是C的父进程,而创建进程C的进程是进程B。
作为一个可选的实施方式,在动态信息存储空间中的进程通过Ring3发送给服务端执行进程送检时,会同时将该进程的父进程和创建者进程发送给服务端执行进程送检。如果某个进程的父进程和创建者进程经检测(服务端的自身送检缓存命中或者由威胁情报云查服务检测出结果)是恶意进程,则该进程也同属于恶意进程。
可选地,所述方法还包括:所述方法还包括:在目标操作系统的内核层通过API接口函数检测目标终端上创建的所述第一进程,其中,所述目标操作系统是所述目标终端的操作系统;在检测到所述目标终端上创建的所述第一进程时,采集所述第一进程的进程信息,其中,所述第一进程的进程信息包括:所述第一进程的进程标识、所述第一进程的的进程名称、所述第一进程的的父进程的进程标识、创建所述第一进程的进程的进程标识,所述第一进程的路径信息,所述第一进程的可执行文件的最近修改时间;将所述第一进程的进程信息记录到所述动态信息存储空间中。
作为一个可选的实施方式,设备的内核层(R0层)用于监控进程的启动和关闭,应用层(R3层)用于发起进程的异步送检。其中,安全客户端安装在设备上。安全客户端在设备的R0层设置目标回调函数,以获取设备的所有进程的动态创建和退出的通知。具体地,可以通过WDK提供的API接口函数PsSetCreateProcessNotifyRoutineEx监控进程的创建和退出过程。
当有新进程(对应于上述第一进程)创建时,目标回调函数通过参数可以获取到创建的新进程的进程体,以及进程信息(对应于上述第一进程信息)。进程信息可以由回调函数通过第三个PPS_CREATE_NOTIFY_INFO类型的参数获取到。
上述进程信息包括但不限于:新建的第一进程的进程标识、第一进程的父进程的进程标识、创建第一进程的进程标识(CreatingThreadId->UniqueProcess)、创建第一进程的线程标识(CreatingThreadId->UniqueThread)、第一进程的可执行文件对象(例如,第一进程的exe文件的文件对象),第一进程的路径信息(例如,exe文件绝对路径),进程创建的命令行参数和进程创建的状态(包括:第一进程的可执行文件的最近修改时间)等。
在本发明实施例中,预先采集并缓存了已创建、但未退出的进程的进程信息,上述进程信息包括该进程的进程标识、进程名称、父进程的进程标识、创建该进程的进程标识,进程的路径信息、进程的可执行文件的最近修改时间等。这样可以根据更为全面的进程信息,确定上述进程是否为恶意进程,例如,即使该进程的进程信息,确定出该进程不是恶意进程,仍可以根据该进程的父进程的进程信息或者创建该进程的进程信息,确定该进程的父进程是否为恶意进程,或者,创建该进程的进程是否为恶意进程。在该进程的父进程或创建该进程的进程为恶意进程时,依然确定该进程为恶意进程,从而可以使得对恶意进程的检测结果更加准确,进而进一步提高网络访问的安全性。
可选地,将所述第一进程的进程信息记录到所述动态信息存储空间中,包括:将所述第一进程的进程信息记录到第一双向链表的第一节点中,其中,所述动态信息存储空间包括所述第一双向链表,所述第一双向链表中的每个节点用于记录已创建的且未退出的一个进程的进程信息。
可选地,所述方法还包括:在检测到所述第一进程退出时,删除所述第一双向链表的所述第一节点。
作为一个可选的实施方式,在进程即将创建或即将退出的时,通过监控回调中获取到具体的进程信息,可以构建若干个双向链表(利用Windows内核的LIST_ENTRY双向链表结构),在内核Ring0层存储当前的动态信息存储空间(对应于上述动态信息存储空间)及异常信息存储空间(对应于上述异常信息存储空间)。其中动态信息存储空间的双向链表结构的每个节点表示当前已创建且未退出的进程信息,当进程创建时在双向链表结构中加入新创建的进程信息节点,在进程退出时从双向链表结构中删除该节点,动态信息存储空间的节点可能包含恶意进程节点。异常信息存储空间(对应于上述异常信息存储空间)双向链表结构的每个节点表示通过当前设备中历史中存在的检测存在有安全风险的应用进程信息。若新创建的第一进程的进程信息与异常信息存储空间中存储的进程信息相匹配,则可以确定新创建的第一进程为恶意进程。需要指出的是,与动态信息存储空间不同,异常信息存储空间双向链表结构的每个节点不仅仅包含当前设备现存的风险进程信息,而且包含历史中未超出设定时间范围内的风险进程信息。
作为一个可选的实施方式,动态信息存储空间的结构如下所示:
动态信息存储空间的链表节点结构如下所示:
当进程的回调函数中捕获到进程创建时,从DYNAMIC_PROC_CACHE中增加DYNAMIC_PROC_ELEM节点,当捕获到进程退出时,从DYNAMIC_PROC_CACHE中删除与进程标识匹配的DYNAMIC_PROC_ELEM节点。当安全客户端驱动服务刚启动时,动态信息存储空间DYNAMIC_PROC_CACHE是空的。通过动态增加和删除节点,存储设备当前已创建且未退出的所有进程信息。
可选地,在所述将所述创建的进程的进程信息记录到所述动态信息存储空间中之后,所述方法还包括:通过所述目标操作系统的应用层将所述动态信息存储空间中的进程信息异步传输给所述服务器,其中,所述服务器用于根据所述动态信息存储空间中的进程信息,确定动态信息存储空间中的进程是否为恶意进程;将被所述服务器标记为恶意进程的进程信息记录到异常信息存储空间中,其中,所述异常信息存储空间中记录了恶意进程的进程信息。
作为一个可选的实施方式,上述内核层为R0层,在系统内核层通过驱动监控设备进程的创建和删除。在驱动中通过双链表维护进程信息的缓存,包括进程路径的hash值(例如crc32)、进程pid、进程名称和进程md5值,同时发送至R3层,进一步向后台服务端发起进程的异步送检,送检结果由R3层回传给R0层,系统驱动层维护动态信息存储空间和异常信息存储空间。
R3层定期向驱动层传递当前设备的唯一标识符、登录用户信息,驱动层通过链表封装设备和当前登录用户信息。接着驱动通过过滤拦截网络数据包,在驱动层获取所产生的数据包的长度及内容、协议类型、进程名,进程ID,数据流向等信息,通过驱动层封装的访问控制策略中的业务系统规则数据结构和应用进程规则针对该数据包进行过滤,同时查询检查驱动层封装的进程信息,检查发起该UDP数据包的进程是否是恶意进程。经过滤如果认定符合规则且合法的UDP数据包,则认为是需要通过网关访问企业资源的数据流量。iOA服务端即时将协议类型为UDP的访问策略同步至智能网关,包括业务系统(即企业资源)策略规则和可信应用策略规则。代理客户端将UDP流量和对应的设备、登录用户信息发往智能网关验证,智能网关验证通过后,向企业业务系统转发该UDP流量,成功完成UDP类型数据的转发过程。如果在内核层未通过访问控制规则,则认为是直连流量,代理客户端通过物理网卡直接将该流量发往对应的业务系统。
如图10所示是根据本发明可选实施例的动态信息存储空间结构示意图,其中,动态信息存储空间DYNAMIC_PROC_CACHE在同步增加(当进程创建时)和删除(当进程退出时)链表节点时,异步向Ring3层的用户态进程发送相应的进程信息(进程标识,进程名称和转换后的进程绝对路径),Ring3层获知到新创建的进程信息,接着安全客户端会根据进程PID和进程的绝对路径(procpath)去计算得到进程可执行文件的最近修改时间(updatetime),根据进程的绝对路径(procpath)获取进程的版本号(filever),进程可执行文件的描述信息(filedesc),进程可执行文件的大小(filesize)和版权信息(copyright),同时根据进程的绝对路径(procpath)并行结算进程的md5,进程可执行文件的数字签名中的签名者姓名(sign_issuer)以及本地验签结果(sign_check_rst)。本地验签名结果包括:数字签名验证通过(SIGN_CHECK_PASS)、数字签名验证失败(SIGN_CHECk_FAILED)、数字签名验证超时(SIGN_CHECK_TIMEOUT)、进程无数字签名(PROC_NO_SIGN_INFO)。
用户态计算得到这些信息后,一方面向Ring0层发送以更新动态信息存储空间DYNAMIC_PROC_CACHE中各节点的签名信息,版权信息和MD5,一方面向后台服务器发起进程送检情求,后台服务器下一步批量向威胁情报云查服务异步发起一组进程的送检。需要指出的是,安全服务器收到威胁情报云查服务的响应结果后,存入并刷新服务端设置的缓存内容。安全客户端的用户态进程向后台服务器发起送检请求时,后台服务器首先检查自身缓存(对应于恶意进程名单)有没有存储第一进程的进程信息,第一进程的父进程的进程信息,以及创建第一进程的进程的进程信息,如果恶意进程名单中存储了第一进程的进程信息,直接返回缓存内容作为送检结果。
作为一个可选的实施方式,安全客户端收到恶意进程的名单后,由用户态进程将恶意进程的信息通过Ring3传递至Ring0层,存入异常信息存储空间(对应于异常信息存储空间)中。异常信息存储空间双向链表结构如下所示:
其中,异常信息存储空间的链表节点结果如下所示
异常信息存储空间双向链表结构的每个节点不仅仅包含当前设备现存的风险进程信息,而且包含历史中未超出设定时间范围内(以上curTime记录节点加入异常信息存储空间的时间戳)的风险进程信息。当检测某个发起访问请求的进程是否是恶意进程时,首先获取网络数据包对应的进程标识,去动态信息存储空间(对应于动态信息存储空间,R0在进程创建时就存了该进程的进程信息)中查找与该进程标识匹配的进程信息,包括路径信息crcExePathHash(即进程对应的可执行文件的全路径crc编码值,本发明提出的方案选用crc32编码算法根据文件全路径计算出一串4字节CRC32散列作为文件全路径的哈希值),exeModifyTime(进程对应的可执行文件的最近修改时间,当前进程标识,取捞取当前进程的最近修改时间)和进程名称exeName。下一步查找异常信息存储空间(对应于第二信息集合)双向链表结构中是否存在与全路径crc编码值(对应于路径信息)、进程名称和文件最近修改时间相匹配的节点,如果有,则认为是恶意进程。与安全病毒查杀或实时防护模块针对该进程进行处置,并中断该进程的网络访问。
可选地,所述将被所述服务器标记为恶意进程的进程信息记录到异常信息存储空间中,包括:将被所述服务器标记为恶意进程的进程信息记录到第二双向链表的第二节点,其中,所述异常信息存储空间中包括所述第二双向链表,所述第二双向链表中的每个节点用于记录预定时间范围内被所述服务器标记为恶意进程的进程信息。
零信任访问控制策略由用户可使用的进程信息(可信应用)以及可访问的业务站点(可达区域)、设备信息,登录用户信息,网络流量对应的协议类型等组成,在符合零信任访问控制策略的情况下,用户可通过任何一个可信应用访问到任一个业务站点。零信任访问控制策略的粒度为登录用户,允许为不同的登录用户制定不同的零信任策略。
零信任访问控制策略具有如下项:
1.业务系统(即企业资源)策略:包括资源名称、资源类别(域名类、IP类或IP段)、具体业务站点的域名或者IP、端口(包括指定端口列表或者所有端口),资源分组和协议类型(网络协议栈中的运输层协议)。
2.安全登录用户策略:包括登录用户名,登录用户ID和登录票据。
3.可信应用策略:可信应用属性包括进程名(应用名)、版权信息和签名信息。可信应用默认能够访问企业资源,可信应用范围之外的应用不能访问企业资源,可直连访问其他资源。
4.设备策略:包括设备唯一标识符。
策略中协议类型为UDP的情况下,安全客户端将业务系统策略和可信应用策略通过Ring3传递给Ring0,在内核层建立相应数据结构存储。
设备策略和登录用户策略与业务系统策略和可信应用策略不同,设备和登录用户是动态的,而且数据规模很大,不可能将所有能利用零信任访问的终端和用户记录到零信任策略中,更合适的方式是存储在服务端缓存或者数据库中。因此设备策略和登录用户策略不会由后台下发到设备,只存储在服务端。
启动零信任网络访问时,自动将当前设备信息和登录用户信息通过Ring3层传递到Ring0层,驱动服务将设备信息和登录用户信息存储在缓存中。后台服务端将协议类型为UDP的访问控制策略同步至智能网关。
在管控端生成或更新零信任访问控制策略后,后台服务端即时协议类型为UDP的访问策略同步至智能网关,包括业务系统(即企业资源)策略和可信应用策略。其中设备策略和iOA登录用户策略则以缓存的形式通过rpc机制由后台服务端同步至智能网关。设备策略规则包括明确禁止接入的设备、合法接入的设备。登录用户策略规则包括禁止使用零信任网络访问功能的用户以及允许使用零信任网络访问功能的用户。
针对未知的设备策略或者登录用户,需要由智能网关向后台服务端发起检测请求,后台服务端根据设定的规则检测数据库中合法设备基线或历史访问记录,结合历史操作信息,判定对应设备或登录用户是否合法使用零信任网络功能,同时将结果刷新缓存,通过rpc机制将缓存同步至智能网关。
(一)安全网络驱动服务捕获设备的网络数据包
Windows Vista及以后版本可以使用windows过滤平台WFP的相关系统API和服务来实现网络数据包的捕获,Vista以前的版本可以使用TDI(传输层驱动接口)等网络过滤框架来实现,下面简要介绍利用Windows过滤平台WFP网络过滤框架针对设备UDP类型的网络数据包的捕获。
首先通过FwpmEngineOpen API函数打开过滤引擎,然后定义callout接口,并利用FwpsCalloutRegister API向过滤引擎注册callout接口,以此callout接口可以被过滤引擎使用。成功注册callout接口后,接下来利用FwpmCalloutAdd API将callout接口添加到过滤引擎中。下一步利用FwpmSubLayerAdd API在分层中添加子层,利用FwpmFilterAddApi将过滤器添加到过滤引擎中,同时将该过滤器与前面步骤中创建的callout接口和子层这些对象关联在一起。在终端发起相应网络访问时,指定的网路事件会触发callout接口内相关callback函数的执行。
在callback函数中,获取网络流量的本地端口、远程端口、源IP、远端IP、网络协议类型(IPPROTO_ICMP,IPPROTO_UDP或者IPPROTO_TCP),网络数据包的通信方向(FWP_DIRECTION_INBOUND或者FWP_DIRECTION_OUTBOUND)。根据网络协议类型,筛选出UDP协议流量。识别网络数据包的安全性,并针对符合代理访问的请求自动构建缓存。
接下来,根据本地端口获取占用端口的进程标识,也就是发起网络访问的进程标识,立即查询驱动内构建的动态信息存储空间(对应于第一进程集合),根据进程标识去动态信息存储空间中查找是否存在与该进程ID匹配的进程信息,包括crcExePathHash(对应于路径信息,即进程对应的可执行文件的全路径crc编码值,本发明提出的方案选用crc32编码算法根据文件全路径计算出一串4字节CRC32散列作为文件全路径的哈希值),exeModifyTime(进程对应的可执行文件的最近修改时间)和exeName(进程名称),下一步查找异常信息存储空间(对应于异常信息存储空间)双向链表结构中是否存在与全路径crc编码值进程名称和文件最近修改时间相匹配的节点,如果有,则认为是恶意进程。与病毒查杀或实时防护模块针对该进程进行处置,并中断该进程的网络访问。在WFP中可以通过callback函数中的FWPS_CLASSIFY_OUT指针类型的actionType成员置为FWP_ACTION_BLOCK来对拦截该网络访问请求。
下一步,驱动服务基于该网络数据包的本地端口、远程端口、源IP、远端IP、网络协议类型(IPPROTO_ICMP,IPPROTO_UDP或者IPPROTO_TCP),网络数据包的通信方向(FWP_DIRECTION_INBOUND或者FWP_DIRECTION_OUTBOUND)去尝试匹配零信任访问控制策略中的业务系统(即企业资源)策略、可信应用策略规则和设备策略规则,如果匹配成功,则说明该UDP网络数据包是需要经过代理客户端转向智能网关,由智能网关执行实际流量代理功能的;如果匹配不成功,则该网路数据包是直连访问的,被全流量代理劫持后,直接通过物理网卡访问实际的站点。
针对零信任访问控制策略中的业务系统策略,只需要UDP网络协议类型,远程网址和远程端口符合策略中的任何一项,则认为匹配成功。
针对零信任访问控制策略中的可信应用策略规则,将上一步从动态信息存储空间中获取的进程名称与策略中的进程名称、版权信息和签名信息对比,如果在策略中匹配到特定规则项,则认为匹配成功。
零信任访问控制策略中的业务系统策略和可信应用策略匹配成功后,安全驱动服务认为该网络数据包是代理类型(需要经过代理客户端转向智能网关,由智能网关执行实际流量代理功能的类型),接下来将驱动缓存中的设备信息及登录用户信息,网络数据包的远程端口,远程网址、网路协议类型UDP生成一个哈希值。发送至安全客户端缓存中存储。安全客户端提供缓存查找接口给代理客户端,用于共享用户态缓存。如图11所示是根据本发明可选实施例的代理客户端与安全客户端的信息交互示意图。如果识别出该网络数据包是直连类型(不需要经过代理客户端转向智能网关,直接由代理客户端通过物理网卡向目标站点转发数据包),则直接忽略,无需更新iOA用户态缓存。
作为一个可选的实施方式,全流量代理客户端劫持流量,通过安全客户端共享的网络数据包信息缓存决定直连或者代理转发。全流量代理通过TUN/TAP虚拟网卡劫持到流量后,获取到网络数据包的本地端口、源IP、远端端口,远端IP。通过安全客户端共享的网络数据包缓存获取域本地端口相同的缓存记录。因为安全驱动服务是在运输层捕获的网络数据包,而TUN/TAP虚拟网卡劫持流量是在网络接入层,在网络协议栈中处于运输层的下面,因此当该网络数据包未完全处理完成之后,发起网络访问的进程是会持续占有本地端口的,所以可以通过缓存中的本地端口作为查询的键值。通过检查安全共享的用户态缓存记录是否存在与全流量代理劫持的本地端口相匹配的记录,便可以知道UDP网络数据包是直连类型还是代理类型。如果没有找到相匹配的记录,则是直连类型,该UDP数据包不需要经过代理客户端转向智能网关,直接由代理客户端通过物理网卡向目标站点转发数据包;如果找到了相匹配的缓存记录,则是代理类型。代理客户端将该网络数据包转向智能网关,由智能网关执行实际的流量代理功能。
作为一个可选的实施方式,智能网关检查网络访问请求,决定给是否执行流量代理。因为在管控端生成或更新零信任访问控制策略后,后台服务端即时将协议类型为UDP的访问策略同步至智能网关,因此智能网关在收到代理发过来的UDP流量请求后,由智能网关快速判定该UDP流量是否符合业务系统策略和可信应用策略。如果符合,则快速校验流量发起的设备和登录用户是否命中安全后台同步给智能网关的缓存,如果成功命中且设备或登录用户是禁止接入的,则拒绝转发流量,中断访问;如果成功命中且设备或登录用户是允许合法接入的,则正常转发流量到对应的业务系统,并将业务系统的响应结果通过全流量代理转回至对应的进程;如果未能成功命中缓存记录,则针对未知的设备策略规则或者登录用户,由智能网关向后台服务器发起检测请求,后台服务端根据检测数据库中合法设备基线或历史访问记录,结合历史操作信息,判定对应设备或登录用户是否合法使用零信任网络功能,同时将结果刷新缓存,通过rpc机制将缓存同步至智能网关。这种场景下,同理如果设备或登录用户允许接入,则智能网关正常转发流量到对应业务系统。反之则拒绝转发流量。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述访问请求的鉴权方法的访问请求的鉴权装置。如图12所示,该装置包括:第一获取模块1202,用于在检测到第一进程发起的用户数据协议UDP访问请求时,获取所述第一进程的进程标识;第二获取模块1204,用于根据所述进程标识,在动态信息存储空间中获取所述第一进程的第一进程信息,其中,所述第一进程信息是在所述第一进程被创建时采集到的进程信息,所述动态信息存储空间中记录了已创建的且未退出的进程的进程信息;查找模块1206,用于在异常信息存储空间中查找与所述第一进程信息匹配的进程信息,其中,所述异常信息存储空间中记录了恶意进程的进程信息;中断模块1208,用于在所述异常信息存储空间中查找到与所述第一进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
可选地,上述装置还用于在第一进程发起的UDP访问请求之前,在检测到所述第一进程被创建时,采集所述第一进程信息;将所述第一进程信息记录到所述动态信息存储空间中。
可选地,上述装置还用于在所述异常信息存储空间中查找不到与所述第一进程信息匹配的进程信息时,在所述动态信息存储空间中查找与第二进程的进程标识对应的第二进程信息,其中,所述第二进程是所述第一进程的父进程或者是创建所述第一进程的进程,所述第二进程信息是在所述第二进程被创建时采集到的所述第二进程的进程信息;在所述异常信息存储空间中查找与所述第二进程信息匹配的进程信息;在所述异常信息存储空间中查找到与所述第二进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
可选地,上述装置还用于在所述异常信息存储空间中查找不到与所述第一进程信息匹配的进程信息,以及与所述第二进程信息匹配的进程信息时,将所述第一进程信息发送给服务器,其中,所述服务器上存储有恶意进程名单,所述恶意进程名单中记录了恶意进程的进程信息;获取所述服务器发送的识别结果,其中,所述识别结果用于表示所述第一进程是否为恶意进程。
可选地,上述装置还用于在目标操作系统的内核层通过API接口函数检测目标终端上创建的所述第一进程,其中,所述目标操作系统是所述目标终端的操作系统;在检测到所述目标终端上创建的所述第一进程时,采集所述第一进程的进程信息,其中,所述第一进程的进程信息包括:所述第一进程的进程标识、所述第一进程的的进程名称、所述第一进程的的父进程的进程标识、创建所述第一进程的进程的进程标识,所述第一进程的路径信息,所述第一进程的可执行文件的最近修改时间;将所述第一进程的进程信息记录到所述动态信息存储空间中。
可选地,上述装置还用于将所述第一进程的进程信息记录到第一双向链表的第一节点中,其中,所述动态信息存储空间包括所述第一双向链表,所述第一双向链表中的每个节点用于记录已创建的且未退出的一个进程的进程信息。
可选地,上述装置还用于在检测到所述第一进程退出时,删除所述第一双向链表的所述第一节点。
可选地,上述装置还用于在所述将所述创建的进程的进程信息记录到所述动态信息存储空间中之后,通过所述目标操作系统的应用层将所述动态信息存储空间中的进程信息异步传输给所述服务器,其中,所述服务器用于根据所述动态信息存储空间中的进程信息,确定动态信息存储空间中的进程是否为恶意进程;将被所述服务器标记为恶意进程的进程信息记录到异常信息存储空间中,其中,所述异常信息存储空间中记录了恶意进程的进程信息。
可选地,上述装置还用于将被所述服务器标记为恶意进程的进程信息记录到第二双向链表的第二节点,其中,所述异常信息存储空间中包括所述第二双向链表,所述第二双向链表中的每个节点用于记录预定时间范围内被所述服务器标记为恶意进程的进程信息。
根据本发明实施例的另一个方面,还提供了一种用于实施上述访问请求的鉴权方法的服务器。所述服务器用于获取所述第一进程信息;在所述恶意进程名单中查找与所述第一进程信息匹配的进程信息,其中,所述与所述第一进程信息匹配的进程信息包括:所述第一进程的进程名称、所述第一进程的路径信息、以及所述第一进程的可执行文件的最近修改时间;在所述恶意进程名单中查找到与所述第一进程信息匹配的进程信息时,发送识别结果,其中,所述识别结果用于表示所述第一进程为恶意进程。
可选地,所述服务器还用于获取所述第二进程信息,其中,所述第二进程信息是,在所述异常信息存储空间中查找不到与所述第一进程信息匹配的进程信息,以及与所述第二进程信息匹配的进程信息时,发送给所述服务器的进程信息;在所述恶意进程名单中查找与所述第二进程信息匹配的进程信息,其中,所述与所述第二进程信息匹配的进程信息包括:所述第二进程的进程名称、所述第二进程的路径信息、以及所述第二进程的可执行文件的最近修改时间;在所述恶意进程名单中查找到与所述第二进程信息匹配的进程信息时,发送识别结果,其中,所述识别结果用于表示所述第二进程和所述第一进程为恶意进程。
根据本发明实施例的又一个方面,还提供了一种用于实施上述访问请求的鉴权方法的电子设备,该电子设备可以是图1所示的用户设备或服务器。本实施例以该电子设备为用户设备为例来说明。如图13所示,该电子设备包括存储器1302和处理器1304,该存储器1302中存储有计算机程序,该处理器1304被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,在检测到第一进程发起的用户数据协议UDP访问请求时,获取所述第一进程的进程标识;
S2,根据所述进程标识,在动态信息存储空间中获取所述第一进程的第一进程信息,其中,所述第一进程信息是在所述第一进程被创建时采集到的进程信息,所述动态信息存储空间中记录了已创建的且未退出的进程的进程信息;
S3,在异常信息存储空间中查找与所述第一进程信息匹配的进程信息,其中,所述异常信息存储空间中记录了恶意进程的进程信息;
S4,在所述异常信息存储空间中查找到与所述第一进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
可选地,本领域普通技术人员可以理解,图13所示的结构仅为示意,电子装置电子设备也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图13其并不对上述电子装置电子设备的结构造成限定。例如,电子装置电子设备还可包括比图13中所示更多或者更少的组件(如网络接口等),或者具有与图13所示不同的配置。
其中,存储器1302可用于存储软件程序以及模块,如本发明实施例中的访问请求的鉴权方法和装置对应的程序指令/模块,处理器1304通过运行存储在存储器1302内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的访问请求的鉴权方法。存储器1302可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1302可进一步包括相对于处理器1304远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1302具体可以但不限于用于存储物品的样本特征与目标虚拟资源账号等信息。作为一种示例,如图13所示,上述存储器1302中可以但不限于包括上述访问请求的鉴权装置中的第一获取模块1202、第二获取模块1204、确定模块1206及中断模块1208。此外,还可以包括但不限于上述访问请求的鉴权装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置1306用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1306包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1306为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子设备还包括:显示器1308,用于显示上述访问请求;和连接总线1310,用于连接上述电子设备中的各个模块部件。
在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(P2P,Peer To Peer)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的方法。其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,在检测到第一进程发起的用户数据协议UDP访问请求时,获取所述第一进程的进程标识;
S2,根据所述进程标识,在动态信息存储空间中获取所述第一进程的第一进程信息,其中,所述第一进程信息是在所述第一进程被创建时采集到的进程信息,所述动态信息存储空间中记录了已创建的且未退出的进程的进程信息;
S3,在异常信息存储空间中查找与所述第一进程信息匹配的进程信息,其中,所述异常信息存储空间中记录了恶意进程的进程信息;
S4,在所述异常信息存储空间中查找到与所述第一进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (14)
1.一种访问请求的鉴权方法,其特征在于,包括:
在检测到第一进程发起的用户数据协议UDP访问请求时,获取所述第一进程的进程标识;
根据所述进程标识,在动态信息存储空间中获取所述第一进程的第一进程信息,其中,所述第一进程信息是在所述第一进程被创建时采集到的进程信息,所述动态信息存储空间中记录了已创建的且未退出的进程的进程信息;
在异常信息存储空间中查找与所述第一进程信息匹配的进程信息,其中,所述异常信息存储空间中记录了恶意进程的进程信息;
在所述异常信息存储空间中查找到与所述第一进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
2.根据权利要求1所述的方法,其特征在于,在第一进程发起的UDP访问请求之前,所述方法还包括:
在检测到所述第一进程被创建时,采集所述第一进程信息;
将所述第一进程信息记录到所述动态信息存储空间中。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述异常信息存储空间中查找不到与所述第一进程信息匹配的进程信息时,在所述动态信息存储空间中查找与第二进程的进程标识对应的第二进程信息,其中,所述第二进程是所述第一进程的父进程或者是创建所述第一进程的进程,所述第二进程信息是在所述第二进程被创建时采集到的所述第二进程的进程信息;
在所述异常信息存储空间中查找与所述第二进程信息匹配的进程信息;
在所述异常信息存储空间中查找到与所述第二进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
4.根据权利要求3所述的方法,其特征在于,所述方法还还包括:
在所述异常信息存储空间中查找不到与所述第一进程信息匹配的进程信息,以及与所述第二进程信息匹配的进程信息时,将所述第一进程信息发送给服务器,其中,所述服务器上存储有恶意进程名单,所述恶意进程名单中记录了恶意进程的进程信息;
获取所述服务器发送的识别结果,其中,所述识别结果用于表示所述第一进程是否为恶意进程。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在所述服务器上获取所述第一进程信息;
在所述恶意进程名单中查找与所述第一进程信息匹配的进程信息,其中,所述与所述第一进程信息匹配的进程信息包括:所述第一进程的进程名称、所述第一进程的路径信息、以及所述第一进程的可执行文件的最近修改时间;
在所述恶意进程名单中查找到与所述第一进程信息匹配的进程信息时,发送识别结果,其中,所述识别结果用于表示所述第一进程为恶意进程。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在所述服务器上获取所述第二进程信息,其中,所述第二进程信息是,在所述异常信息存储空间中查找不到与所述第一进程信息匹配的进程信息,以及与所述第二进程信息匹配的进程信息时,发送给所述服务器的进程信息;
在所述恶意进程名单中查找与所述第二进程信息匹配的进程信息,其中,所述与所述第二进程信息匹配的进程信息包括:所述第二进程的进程名称、所述第二进程的路径信息、以及所述第二进程的可执行文件的最近修改时间;
在所述恶意进程名单中查找到与所述第二进程信息匹配的进程信息时,发送识别结果,其中,所述识别结果用于表示所述第二进程和所述第一进程为恶意进程。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:
在目标操作系统的内核层通过API接口函数检测目标终端上创建的所述第一进程,其中,所述目标操作系统是所述目标终端的操作系统;
在检测到所述目标终端上创建的所述第一进程时,采集所述第一进程的进程信息,其中,所述第一进程的进程信息包括:所述第一进程的进程标识、所述第一进程的进程名称、所述第一进程的的父进程的进程标识、创建所述第一进程的进程的进程标识,所述第一进程的路径信息,所述第一进程的可执行文件的最近修改时间;
将所述第一进程的进程信息记录到所述动态信息存储空间中。
8.根据权利要求7所述的方法,其特征在于,将所述第一进程的进程信息记录到所述动态信息存储空间中,包括:
将所述第一进程的进程信息记录到第一双向链表的第一节点中,其中,所述动态信息存储空间包括所述第一双向链表,所述第一双向链表中的每个节点用于记录已创建的且未退出的一个进程的进程信息。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
在检测到所述第一进程退出时,删除所述第一双向链表的所述第一节点。
10.根据权利要求7所述的方法,其特征在于,在所述将所述第一进程的进程信息记录到所述动态信息存储空间中之后,所述方法还包括:
通过所述目标操作系统的应用层将所述动态信息存储空间中的进程信息异步传输给服务器,其中,所述服务器用于根据所述动态信息存储空间中的进程信息,确定动态信息存储空间中的进程是否为恶意进程,其中,所述动态信息存储空间中的进程信息包括所述第一进程的进程信息;
将被所述服务器标记为恶意进程的进程信息记录到异常信息存储空间中,其中,所述异常信息存储空间中记录了恶意进程的进程信息。
11.根据权利要求10所述的方法,其特征在于,所述将被所述服务器标记为恶意进程的进程信息记录到异常信息存储空间中,包括:
将被所述服务器标记为恶意进程的进程信息记录到第二双向链表的第二节点,其中,所述异常信息存储空间中包括所述第二双向链表,所述第二双向链表中的每个节点用于记录预定时间范围内被所述服务器标记为恶意进程的进程信息。
12.一种访问请求的鉴权装置,其特征在于,包括:
第一获取模块,用于在检测到第一进程发起的用户数据协议UDP访问请求时,获取所述第一进程的进程标识;
第二获取模块,用于根据所述进程标识,在动态信息存储空间中获取所述第一进程的第一进程信息,其中,所述第一进程信息是在所述第一进程被创建时采集到的进程信息,所述动态信息存储空间中记录了已创建的且未退出的进程的进程信息;
查找模块,用于在异常信息存储空间中查找与所述第一进程信息匹配的进程信息,其中,所述异常信息存储空间中记录了恶意进程的进程信息;
中断模块,用于在所述异常信息存储空间中查找到与所述第一进程信息匹配的进程信息时,确定所述第一进程为恶意进程,并中断所述UDP访问请求的传输。
13.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行所述权利要求1至11任一项中所述的方法。
14.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至11任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111051326.3A CN115801292A (zh) | 2021-09-08 | 2021-09-08 | 访问请求的鉴权方法和装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111051326.3A CN115801292A (zh) | 2021-09-08 | 2021-09-08 | 访问请求的鉴权方法和装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115801292A true CN115801292A (zh) | 2023-03-14 |
Family
ID=85416821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111051326.3A Pending CN115801292A (zh) | 2021-09-08 | 2021-09-08 | 访问请求的鉴权方法和装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115801292A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117272287A (zh) * | 2023-11-21 | 2023-12-22 | 联通(广东)产业互联网有限公司 | 一种应用程序数据重定向方法及系统、存储介质 |
-
2021
- 2021-09-08 CN CN202111051326.3A patent/CN115801292A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117272287A (zh) * | 2023-11-21 | 2023-12-22 | 联通(广东)产业互联网有限公司 | 一种应用程序数据重定向方法及系统、存储介质 |
CN117272287B (zh) * | 2023-11-21 | 2024-03-08 | 联通(广东)产业互联网有限公司 | 一种应用程序数据重定向方法及系统、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | An IoT honeynet based on multiport honeypots for capturing IoT attacks | |
US10057284B2 (en) | Security threat detection | |
US9015845B2 (en) | Transit control for data | |
CN101610264B (zh) | 一种防火墙系统、安全服务平台及防火墙系统的管理方法 | |
WO2022193513A1 (zh) | 一种基于容器引擎的数据处理方法以及相关设备 | |
CN112073400A (zh) | 一种访问控制方法、系统、装置及计算设备 | |
KR20180120157A (ko) | 데이터세트 추출 기반 패턴 매칭 | |
KR20160110913A (ko) | 클라우드 서비스 보안 브로커 및 프록시 | |
CN112149105A (zh) | 数据处理系统、方法、相关设备及存储介质 | |
CN113704767A (zh) | 融合漏洞扫描引擎和漏洞工单管理的漏洞管理系统 | |
CN114902612A (zh) | 基于边缘网络的帐户保护服务 | |
CN112653655A (zh) | 汽车安全通信控制方法、装置、计算机设备及存储介质 | |
CN115701019A (zh) | 零信任网络的访问请求处理方法、装置及电子设备 | |
CN114745145B (zh) | 业务数据访问方法、装置和设备及计算机存储介质 | |
CN117155716B (zh) | 访问校验方法和装置、存储介质及电子设备 | |
CN115801292A (zh) | 访问请求的鉴权方法和装置、存储介质及电子设备 | |
CN113194088B (zh) | 访问拦截方法、装置、日志服务器和计算机可读存储介质 | |
Ghiani et al. | Security in migratory interactive web applications | |
CN111385293B (zh) | 一种网络风险检测方法和装置 | |
CN115623013A (zh) | 一种策略信息同步方法、系统及相关产品 | |
KR102632546B1 (ko) | 소스 네트워크로부터 타겟 네트워크로 소프트웨어 아티팩트를 전송하기 위한 방법 및 시스템 | |
US20230069731A1 (en) | Automatic network signature generation | |
CN115587384A (zh) | 敏感信息的处理方法和装置、存储介质及电子设备 | |
CN116980157A (zh) | 基于云安全配置的安全检测方法、装置、设备及存储介质 | |
CN116975805A (zh) | 一种数据处理方法、装置、设备、存储介质及产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40082734 Country of ref document: HK |