CN102792307A - 在虚拟环境中提供网络访问控制的系统和方法 - Google Patents

在虚拟环境中提供网络访问控制的系统和方法 Download PDF

Info

Publication number
CN102792307A
CN102792307A CN201080065081.3A CN201080065081A CN102792307A CN 102792307 A CN102792307 A CN 102792307A CN 201080065081 A CN201080065081 A CN 201080065081A CN 102792307 A CN102792307 A CN 102792307A
Authority
CN
China
Prior art keywords
virtual machine
access
netwoks
control
indication
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.)
Granted
Application number
CN201080065081.3A
Other languages
English (en)
Other versions
CN102792307B (zh
Inventor
S·索内
M·柯诺瓦
B·蒙塔古
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CA Inc
Original Assignee
Symantec Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Symantec Corp filed Critical Symantec Corp
Publication of CN102792307A publication Critical patent/CN102792307A/zh
Application granted granted Critical
Publication of CN102792307B publication Critical patent/CN102792307B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring 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
    • G06F21/53Monitoring 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 by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种在虚拟环境中提供网络访问控制的计算机实施的方法。该方法可以包括:1)将暂态安全代理注入到在主机上运行的虚拟机中;2)从该暂态安全代理接收该虚拟机是否符合一个或多个网络访问控制策略的指示;以及3)基于该虚拟机是否符合该一个或多个网络访问控制策略的指示来控制该虚拟机的网络访问。在此还披露了不同的其他的方法、系统、以及计算机可读媒质。

Description

在虚拟环境中提供网络访问控制的系统和方法
发明背景
组织机构的独立端点的管理状态可以在其信息技术(“IT”)基础设施和相关商业运作的整体安全性和可利用性中扮演重要角色。复杂犯罪软件的新浪潮不仅针对特定的公司,而且也以台式机和笔记本电脑作为后门入口通道进入这些公司的商业运作和有价值的资源。为了保护它们自身免受这些有目标的威胁,组织机构可能需要一种措施来保证每个端点持续地符合公司安全和配置管理策略。无法保证符合端点策略可能使组织机构易于受到大范围威胁。这些威胁可以包括整个企业中恶意代码的扩散、重要商业服务的破坏、增加IT恢复和管理成本、机密信息的曝光、公司品牌的损害、和/或由于不符合而导致的管理罚款。
网络访问控制技术可以使组织机构能够在允许用户端点访问公司网络上的资源之前确保对用户端点的适当配置和安全状态,用户端点包括现场雇员、远程雇员、客户、承包人、以及临时工人。网络访问控制技术可以发现并评估端点符合状态,提供适合的网络访问,并提供调节能力以确保端点安全策略与标准相符合。
虚拟化环境可以应对企业环境中困难的安全挑战。由于虚拟机相对易于创建、克隆、存储、和移动,它们很容易与公司策略不一致(例如不具有软件和补丁级上的认证版本)。允许这类虚拟机与企业网络中的网络连接一起启动可能是不安全。因此,需要更高效的和更有效的机制来提供虚拟机环境中的网络访问控制。
发明概述
如以下更为详细说明的,本披露总体上涉及在虚拟环境中提供网络访问控制的多种系统及方法。本披露的实施方案可以采用各种方式来提供虚拟环境中的网络访问控制。例如在虚拟环境中提供网络访问控制的方法可以包括:1)将暂态安全代理注入到在主机上运行的虚拟机中;2)从该暂态安全代理接收虚拟机是否符合一个或多个网络访问控制策略的指示;以及3)基于该虚拟机是否符合该一个或多个网络访问控制策略的指示来控制虚拟机的网络访问。
在一些实施方案中,可以通过该主机上的注入模块将该暂态安全代理注入到该虚拟机中。将该暂态安全代理注入到该虚拟机中可以包括:1)向该虚拟机的异常处理程序存储单元插入一个或多个计算机可执行指令,这些指令被配置用于协助从该虚拟机向该注入模块的传输控制;2)在该虚拟机的执行过程中触发一个异常以使得执行该异常处理程序存储单元中的一个或多个计算机可执行指令;3)在该至少一个计算机可执行指令执行之后,从该虚拟机获得控制;并且4)将该暂态安全代理插入到该虚拟机中。
根据不同的实施方案,可以在该主机的网络访问控制模块上接收该虚拟机是否符合该一个或多个网络访问控制策略的指示。在这种实施方案中,通过进程间通信向该网络访问控制模块发送该虚拟机是否符合该一个或多个网络访问控制策略的指示。该网络访问控制模块包括一个网络通信过滤器,该网络通信过滤器基于该虚拟机是否符合该一个或多个网络访问控制策略的指示来控制该虚拟机的网络访问。
在至少一个实施方案中,在远离该主机的一个网络访问控制服务器上接收该虚拟机是否符合该一个或多个网络访问控制策略的指示,并且基于该虚拟机是否符合该一个或多个网络访问控制策略的指示,该网络访问控制服务器控制该虚拟机的网络访问。
根据一个或多个实施方案,该方法可以进一步包括从该虚拟机移除该暂态安全代理。当该虚拟机不再需要网络访问时可以从该虚拟机移除该暂态安全代理。
作为在虚拟环境中提供网络访问控制的一个第二实例,一种方法可以包括:1)在虚拟机中提供一个安全代理,该虚拟机运行在主机上;2)提供驻留在该主机上但位于该虚拟机外部的一个网络通信过滤器;3)在控制该网络通信过滤器的一个访问控制模块上,接收该虚拟机是否符合该一个或多个网络访问控制策略的指示,该指示通过进程间通信从该安全代理发送至该访问控制模块;并且4)基于该虚拟机是否符合该一个或多个网络访问控制策略的指示,利用该网络通信过滤器来控制该虚拟机的网络访问。
在一些实施方案中,在该虚拟机中提供安全代理可以包括将该代理注入到该虚拟机中。该主机上的注入模块可以将该代理注入到该虚拟机中。另外或可替代地,在该虚拟机中提供该安全代理可以包括在该虚拟机上安装代理。可以利用该虚拟机的一个安装进程将该安全代理安装在该虚拟机上。
根据不同的实施方案,该符合的指示可以通过虚拟机间通信从该安全代理发送到该访问控制模块。可替代地,可以通过将该符合指示存储在该安全代理和该访问控制模块所共享的一个存储单元中将该指示从该安全代理发送到该访问控制模块。
在某些实施方案中,该符合指示可以表示该虚拟机不符合该一个或多个网络访问控制策略,并且该网络通信过滤器通过阻断该虚拟机的一个或多个网络通信来控制该虚拟机的网络访问。在这种情况中,该方法可以包括校正该虚拟机以使得该虚拟机符合该一个或多个网络访问控制策略。该网络通信过滤器可以允许该虚拟机访问用于校正该虚拟机的一个或多个网络资源。
作为在虚拟环境中提供网络访问控制的一个第三实例,一种方法可以包括:1)识别在主机上运行的虚拟机;2)提供驻留在该主机上并位于该虚拟机外部的一个网络通信过滤器;3)利用在该主机上执行的并且位于该虚拟机外部的一个进程来检查该虚拟机的一个或多个资源以确定该虚拟机是否符合一个或多个网络访问控制策略;4)在控制该网络通信过滤器的一个访问控制模块上,接收该虚拟机是否符合该一个或多个网络访问控制策略的指示;5)基于该虚拟机是否符合该一个或多个网络访问控制策略的指示,利用该网络通信过滤器来控制该虚拟机的网络访问。
来自上述任一个实施方案的多种特征可以根据在此说明的通用原理彼此相互结合使用。通过阅读以下的详细说明连同附图和权利要求,将会更加全面地理解这些以及其他的实施方案、特征、和优点。
附图简要说明
附图展示了多个示例性实施方案并且是本说明书的一部分。这些附图与以下的说明共同展现并解释了本披露的不同原理。
图1是在虚拟环境中提供网络访问控制的一个示例性系统的方框图。
图2是通过在虚拟机中提供安全代理来提供虚拟环境中网络访问控制的一个示例性系统的方框图。
图3是通过在虚拟机中提供安全代理来提供虚拟环境中网络访问控制的另一个示例性系统的方框图。
图4是通过在虚拟机中提供安全代理来提供虚拟环境中网络访问控制的一个示例性方法的流程图。
图5是通过安全代理和访问控制模块之间的进程间通信来提供虚拟环境中网络访问控制的一个示例性方法的流程图。
图6是通过检查虚拟机资源来提供虚拟环境中网络访问控制的一个示例性系统的方框图。
图7是通过检查虚拟机资源来提供虚拟环境中网络访问控制的一个示例性方法的流程图。
图8是一个示例性计算系统的方框图,该计算系统能够实施在此说明和/或展示的这些实施方案中的一个或多个。
图9是一种示例性计算网络的框图,该计算网络能够实施在此说明和/或展示的这些实施方案中的一个或多个。
贯穿这些附图,相同的参考字符以及描述表示相似的但并不一定完全相同的要素。虽然在此说明的这些示例性实施方案可容许进行不同的修改以及多种替代形式,在此仍在附图中以举例的方式示出多个具体的实施方案并且对其进行了详细的说明。然而,在此说明的多个示例性实施方案无意限制于所披露的这些具体形式。相反,本披露涵盖了落入所附权利要求范围内的所有修改形式、等效形式、以及替代方案。
示例性实施方案的详细说明
如以下更为详细说明的,本披露总体上涉及在虚拟环境中提供网络访问控制的多种系统及方法。在此描述的系统和方法可以采用各种方式来提供网络访问控制。例如,安全代理可以注入或安装到在主机上运行的虚拟机中来评估虚拟机以符合访问控制策略。安全代理可以使用进程间和/或网络通信以便与主机上和/或远程服务器上的网络访问控制系统进行通信。网络访问控制系统可以基于安全代理提供的信息利用网络通信过滤器和/或任意其他适合的机构来控制虚拟机的网络访问。在一些实施方案中,不是在虚拟机中使用安全代理,主机上的网络访问控制系统可以检查虚拟机的资源以确定是否虚拟机符合访问控制策略。
以下将参考图1至3以及图6给出在虚拟环境中提供网络访问控制的示例性系统的详细描述。还将结合图4、5、和7提供相应的计算机实施方法的详细说明。另外,将结合图8和9分别地提供一种示例性计算系统和网络架构的详细说明,它们能够实施在此说明的这些实施方案中的一个或多个。
图1是在虚拟环境中提供网络访问控制的示例性系统100的方框图。如图中所示,示例性系统100可以包括用于执行一项或多项任务的一个或多个模块110。例如,如以下更为详细解释的,示例性系统100可以包括代理提供模块112,该模块被编程以便通过注入、安装、或任意其他处理来提供具有网络访问控制安全代理的虚拟机,从而为虚拟机提供安全代理。
示例性系统100还可以包括访问控制模块114,该模块被编程以便提供各种网络访问控制功能。换言之,访问控制模块114可以充当允许或拒绝虚拟机访问网络的门。在一些实施方案中,访问控制模块114可以在虚拟机上强制实施端点安全策略。例如,如果虚拟机不符合网络安全策略,访问控制模块114可以阻断或隔离该虚拟机访问网络和网络资源。在一些实施方案中,访问控制模块114可以在一台机器上使用网络通信过滤器,该机器托管虚拟机以控制该虚拟机的的网络访问。可替代地,访问控制模块114可以是远程访问控制服务器的一部分,该服务器控制虚拟机的网络访问。
如果虚拟机与网络策略不兼容,访问控制模块114还可以执行该虚拟机的校正。在一些实施方案中,这种校正对虚拟机的用户而言可以是完全透明的。在其他实施方案中,访问控制模块114可以向用户提供校正信息以便进行手动校正。
示例性系统100可以包括代理116,该代理可以实施端点评估技术,这些技术评估端点(例如虚拟机)的状态(检查是否符合策略)。例如,代理116可以针对反病毒软件、反间谍软件、安装的补丁、以及各种其他安全设置来检查虚拟机。在一些实施方案中,代理116可以测试虚拟机相对于预定义模板的完整性,从而确定是否虚拟机具有所要求的补丁级别、服务包、反病毒程序和/或定义、和/或在这种模板中所指示的防火墙状态。另外或可替代地,代理116可以使用定制创建的检查(例如,由管理员创建的策略)来确定虚拟机是否是符合网络访问控制的。
代理116可以包括能够分析虚拟机符合网络访问策略的任意类型或形式的计算机可执行代码。例如,代理116可以实施为操作系统可执行代码(例如WINDOWS.exe)或操作系统特定脚本(例如,LINUX或WINDOWS壳脚本)。
在某些实施方案中,图1中模块110的一个或多个可以代表一个或多个软件应用程序或程序,这些软件应用程序或程序在由计算装置执行时可以使该计算装置执行一项或多项任务。例如,如以下更为详细描述的,模块110中的一个或多个可以代表存储的并且配置用于在一个或多个计算装置上运行的软件模块,例如图2所示的系统、图3所示系统的一个或多个、图6所示的系统、图8中的计算系统810、和/或图9中示例性网络架构900的多个部分。图1中模块110的一个或多个还可以代表被配置用于执行一项或多项任务的一个或多个专用计算机的全部或多个部分。
系统100可以包括执行模块110的一个或多个的处理器120。系统100的处理器120可以包括一个或多个微处理器和/或中央处理单元,它们被配置用于执行模块110的一个或多个的一条或多条指令。例如,处理器120可以包括图8中的处理器814。
如图1所示,示例性系统100还可以包括一个或多个数据库130。数据库130可以代表一个单一数据库或计算装置或多个数据库或计算装置的多个部分。在一个实施方案中,示例性系统100可以包括存储一个或多个网络访问控制策略的一个网络访问控制策略数据库132。网络访问控制策略数据库132可以包括一个或多个规则,这些规则表示所要求的反病毒软件、反间谍软件、安装的补丁、允许访问网络的用户、和/或允许虚拟机访问网络所需的各种其他安全设置。
数据库130还可以包括一个校正数据库134。校正数据库134可以包括一个或多个补丁、反病毒软件定义、反间谍软件应用程序、和/或需要提供给虚拟机以便使虚拟机符合一项或多项网络访问控制策略的任意其他软件。
图1中的数据库130可以代表一个或多个计算装置的一部分。例如,数据库130可以表示图2中系统200、图3中网络访问控制服务器306、图6中主机602、图8中计算系统810的一部分、和/或图9中示例性网络架构900的多个部分。可替代地,图1中数据库130可以代表能够由计算装置访问的一个或多个物理上分离的装置,例如图2中系统200、图3中网络访问控制服务器306、图6中主机602、图8中计算系统810、和/或图9中示例性网络架构900的多个部分。
图1中的示例性系统100可以采用各种方式进行部署。例如,示例性系统100的全部或一部分可以代表云计算或基于网络的环境的多个部分,如图3所示的示例性系统300。云计算环境可以通过互联网提供各种服务和应用程序。这些基于云的服务(例如,软件即服务、平台即服务、基础设施即服务等等)可以通过网络浏览器或其他的远程接口进行访问。在此所述的不同功能可以通过远程桌面环境或任何其他的基于云的计算环境来提供。
在其他实施方案中,示例性系统100可以在一个单一主机上实施。例如,图2展示了系统100可以如何在主机的各种虚拟机上实施。
图2展示了在虚拟环境中提供网络访问控制的示例性系统200。系统200可以包括网络访问控制虚拟机210和在管理程序240上运行的用户虚拟机230。网络访问控制虚拟机210可以包括用户级212和内核级218。用户级212可以包括代理提供模块112和访问控制模块114。如图所示,代理提供模块112可以包括代理插入模块213,可以对代理插入模块编程以执行将代理插入到虚拟机中的相关步骤中的一个或多个。代理提供模块112还可以包括代理调用模块214,可以对代理调用模块编程以执行调用虚拟机中的代理的相关步骤中的一个或多个。用户级212还可以包括校正数据库134和网络访问控制策略数据库132。
用户级212中的模块的一个或多个可以运行在域0(例如,当系统200启动时开始的第一个域)中。在一些实施方案中,用户级212中提供的模块的一个或多个可以包括一个网络访问控制服务器(例如,安全装置)。这种网络访问控制服务器可以为运行在系统200上的一个或多个虚拟机(例如用户虚拟机230)提供网络访问控制。
如图2所示,用户虚拟机230可以包括用户级232和内核级238。内核级238可以包括代理116,该代理可以通过代理插入模块213注入到用户虚拟机230中。网络访问控制虚拟机210中的访问控制模块114可以与代理116进行通信以评估用户虚拟机230是否与网络访问控制策略一致。
用户虚拟机230和网络访问控制虚拟机210可以运行在管理程序240上。管理程序240可以包括任意适合的虚拟软件,例如VMWARE、OracleVM、ESX服务器、XEN、HYPER-V、LYNXSECURE、TRANGO、IBMPOWER、KVM、和/或任意其他适合的管理程序。管理程序240可以包括网络通信过滤器242,该网络通信过滤器拦截、阻断、允许、修改、和/或在其他方面处理用户虚拟机230的网络包。例如,网络通信过滤器242可以监控并拦截来自网络接口(例如虚拟网络接口卡244)的通信。网络通信过滤器242可以过滤来自用户虚拟机230的网络通信,以便为用户虚拟机230提供网络访问控制。网络通信过滤器242的实例包括但不限于XEN的dom0过滤器、VMARE的dvFilter、和/或HYPER-V的NDIS过滤器库。
管理程序240还可以提供虚拟开关246,该虚拟开关可以包括使虚拟机(例如网络访问控制虚拟机210和用户虚拟机230)能够进行通信的逻辑切换结构。如图所示,系统200还可以包括物理网络接口卡250,该物理网络接口卡使网络访问控制虚拟机210和/或用户虚拟机230能够与外部装置进行通信。
尽管图2提供了不依赖于802.1x通信而实施的宿主网络访问控制服务器,但本披露的一些实施方案可以在具有远程网络访问控制服务器的环境中实施。例如,图3展示了远离主机302的具有网络访问控制服务器306的系统300。主机302可以包括代理提供模块112和虚拟机303。代理提供模块112可以包括代理插入模块213和代理调用模块214,而虚拟机303可以包括代理116。
主机302通常代表能够读取计算机可执行指令的任意类型或形式的计算装置。主机302的实例包括(但不限于)膝上型计算机、桌上型计算机、服务器、蜂窝电话、个人数字助理(PDA)、多媒体播放器、嵌入式系统、图8中相同的示例性计算系统810的一个或多个的组合、或任意其他适当的计算装置。
网络访问控制服务器306可以包括访问控制模块114、网络访问控制策略数据库132,以及校正数据库134。网络访问控制服务器306通常代表能够对端点装置实施并强制实施网络访问控制的任意类型或形式的计算装置。网络访问控制服务器306的实例包括(但不限于)被配置用于提供各种数据库服务和/或运行某些软件应用程序的应用程序服务器和数据库服务器。
主机302和网络访问控制服务器306可以在网络304上进行通信。网络304通常代表能够协助通信或数据传输的任意媒质或架构。网络304的实例包括(但不限于):内部网、广域网、局域网、个人区域网、互联网、电力线通信、蜂窝网络(例如GSM网络)、图9中的示例性网络架构900等等。网络304可以使用无线或有线连接来协助通信或数据传送。
图4是在虚拟化环境中提供网络访问控制的示例性计算机实施方法400的流程图。图4中所示的步骤可以由任意适合的计算机可执行代码和/或计算系统来执行。在一些实施方案中,图4中所示步骤可以由图1的系统100、图2的系统200和/或图3的系统300中的多个组件的一个或多个来执行。
在图4的步骤402中,在此描述的系统的一个或多个可以将暂态安全代理注入到在主机上运行的虚拟机中。例如,代理插入模块213可以将代理116注入到用户虚拟机230中。代理插入模块213可以采用各种方式将代理116注入到用户虚拟机230中。例如,代理插入模块213可以向用户虚拟机230的异常处理程序存储单元插入一条或多条计算机可执行指令,这些指令被配置用于协助从用户虚拟机230向代理插入模块213的传输控制。
代理插入模块213可以将跳转或分支指令插入到异常处理程序单元。跳转指令可以跳转到为代理116分配内存的代码(例如,内存分配模块)并且可以向代理插入模块213传输控制以允许代理插入模块213将代理116插入到用户虚拟机230中。跳转指令还可以跳转到以任意其他适合的方式向代理插入模块213传输控制的代码。除了或替代跳转指令外,被配置用于协助从用户虚拟机230向代理插入模块213传输控制的一个或多个计算机可执行指令还可以包括其他指令。
代理插入模块213还可以在虚拟机230执行过程中触发一个异常以使得执行异常处理程序存储单元中的一个或多个计算机可执行指令。代理插入模块213可以采用多种方式触发异常。例如,如以下描述的,代理插入模块213可以通过插入一条指令来触发异常,该指令将异常触发到用户虚拟机230中。本披露的实施方案可以利用任意异常来实施,该异常可以使得执行程序传输到内存分配模块(或被配置用于使能代理插入的任意其他代码)已经插入到其中的单元中。例如,代理插入模块213可以将带有无效作业码的指令插入到用户虚拟机230中以产生“无效作业码”异常。当执行具有无效作业码的指令时,可以将控制传输至无效作业码被期望驻留的存储单元(即,例如异常处理程序单元这样的单元,在该单元上代理插入模块213插入了被配置用于协助从用户虚拟机230向代理插入模块213的控制传输的一个或多个计算机可执行指令)。
在先前描述的计算机可执行指令在用户虚拟机230上执行后,代理插入模块213可以从虚拟机230获得控制。换言之,当代理插入模块213而非用户虚拟机230在底层物理系统上执行时,代理插入模块213可以获得控制。在一些实施方案中,代理插入模块213可以获得控制以作为在异常处理程序单元中执行计算机可执行指令的直接结果。在其他实施方案中,在异常处理程序中的指令执行之后并且在代理插入模块213获得控制之前,可以执行一个或多个步骤。例如,异常处理程序存储单元中的指令可以向所插入的内存分配模块传输控制,而内存分配模块可以协助为代理可能插入到其中的内存区域的分配内存。然后,内存分配模块可以向代理插入模块213传输控制。
在从用户虚拟机230获得控制后,代理插入模块213可以将代理116插入到虚拟机230中。例如,通过将代理116拷贝到内存分配模块所分配的用户虚拟机230的内存区域中,代理插入模块213可以将代理116插入到用户虚拟机230中。因此,部署代理116的方式可以是对用户透明的和/或不涉及用户虚拟机230的安装过程。在这种实施方案中,代理116可以称为暂态代理,因为它是由用户虚拟机230之外的进程而注入的并且不是利用传统的安装机制安装在用户虚拟机230上。因为暂态代理不可能永久安装在虚拟机上,所以暂态代理可以比永久安装的代理更不易受到攻击。
将代理插入虚拟机的附加细节和实例在2009年6月3日提交的名称为“插入并调用虚拟装置代理的方法和系统(Methods and Systems forInserting and Invoking Virtual Appliance Agents)”的美国专利申请第12/477,810号中进行了披露,该披露全文通过引用结合在此。
在图4的步骤404中,在此描述的系统的一个或多个可以从暂态安全代理接收虚拟机是否符合一个或多个网络访问控制策略的指示。例如,代理116插入到用户虚拟机230后,代理调用模块214可以调用代理116以确定用户虚拟机230是否符合一个或多个网络访问控制策略。代理116可以评估用户虚拟机230是否兼容并且可以通知访问控制模块114用户虚拟机230是否符合访问控制策略。
在一些实施方案中,用户虚拟机230是否符合一个或多个网络访问控制策略的指示可以通过进程间通信来发送。例如,这种指示可以通过虚拟机间进程(例如,利用任何通信机制经由虚拟开关246产生的通信)来发送。又例如,这种指示可以是利用共享的内存页面(例如,代理116和访问控制模块114都可访问的内存页面)从代理116向访问控制模块114的通信。
可替代地,虚拟机是否符合一个或多个网络访问控制策略的指示可以在远离主机(例如图3所示的实施方案中的)网络访问控制服务器上接收。
在图4的步骤406中,在此描述的系统的一个或多个可以基于虚拟机是否符合一个或多个网络访问策略的指示来控制对虚拟机的网络访问。在一些实施方案中,网络通信过滤器242可以控制用户虚拟机230的网络访问,如图2所示。另外或可替代地,如图3所示,网络访问控制服务器306上的访问控制模块114可以控制网络304中任意适合的点上虚拟机303的网络访问。
在一些实施方案中,暂态安全代理可以从虚拟机上移除。例如,当不再需要代理116时,代理116可以从虚拟机230和/或303移除。根据某些实施方案,在代理116评估了虚拟机的网络访问控制符合性之后和/或在任意其他适合的时间点,当虚拟机不再需要网络访问时,代理116可以从虚拟机移除。
在一些实施方案中,如图4的处理过程所描述的,可以通过注入的方式来提供安全代理。另外或可替代地,安全代理可以通过安装和/或通过任意其他适合的在虚拟机中提供软件的机构来提供。图5中所示的处理过程是注入的或安装的安全代理所协助的处理过程的实例。图5是在虚拟化环境中提供网络访问控制的示例性计算机实施方法500的流程图。图5中所示的步骤可以由任何适当的计算机可执行代码和/或计算系统来执行。在一些实施方案中,图5所示的步骤可以由图1中系统100和/或图2中系统200的多个组件的一个或多个来执行。
在图5的步骤502中,在此描述的系统的一个或多个可以在运行于主机上的虚拟机中提供安全代理。例如,代理插入模块213可以将代理116插入到用户虚拟机230中。可替代地,代理提供模块112可以提示用户虚拟机230利用用户虚拟机230的一个或多个安装进程安装代理116。在这种实施方案中,访问控制模块114可以监控代理116的页面以确保代理116不被篡改。
在图5的步骤504中,在此描述的系统的一个或多个可以提供网络通信过滤器,该过滤器驻留在主机上但位于虚拟机之外。例如,访问控制模块114可以提供驻留在用户虚拟机230之外的系统200上的网络通信过滤器242。当网络通信过滤器不运行在虚拟机的可寻址地址空间中时,网络通信过滤器可以说位于虚拟机之外。例如,在主机的管理程序或任意其他域0进程中提供的网络通信过滤器可以说是位于虚拟机之外并驻留在主机上。
在图5的步骤506中,在此描述的系统的一个或多个可以在控制网络通信过滤器的访问控制模块上接收虚拟机是否符合一个或多个网络访问控制策略的指示。例如,访问控制模块114可以从代理116接收信息,该信息表示用户虚拟机230是否符合一个或多个网络访问控制策略。这种信息可以通过进程间通信来发送。如本文所用的,短语“进程间通信”通常是指在主系统上的两个进程之间的任意通信和/或经由任意其他在两个软件模块之间传输信息的机制产生的任意通信。如先前所提,进程间通信可以利用共享内存、虚拟机间通信、和/或任意其他适合的模块间通信机制(例如网络堆栈)来实施。
在图5的步骤508中,基于虚拟机是否于符合一个或多个网络访问控制策略的指示,在此描述的系统的一个或多个可以使用网络通信过滤器来控制虚拟机的网络访问。例如,基于用户虚拟机230是否符合一个或多个网络访问控制策略的指示,访问控制模块114可以使用网络通信过滤器242来控制用户虚拟机230的网络访问。如果该指示表示用户虚拟机230不符合一个或多个网络访问控制策略,网络通信过滤器242可以阻断用户虚拟机230的一个或多个网络通信。
在一些实施方案中,访问控制模块114可以试图校正虚拟机以便使虚拟机符合网络访问控制策略。在这种实施方案中,网络通信过滤器242可以允许虚拟机230访问用来校正虚拟机的一个或多个网络资源。例如,网络通信过滤器242可以允许用户虚拟机230连接到提供最新认证软件和补丁的隔离服务器。
类似地,在确定用户虚拟机230是否符合网络访问控制策略之前,网络通信过滤器242还可以允许用户虚拟机230使用动态主机配置协议(“DHCP”)、轻量目录访问协议(“LDAP”)、和/或动态目录技术。
相对于图2至5的讨论提供了利用虚拟机代理来提供虚拟机的网络访问控制的实例。相对于图6和7的讨论提供了在虚拟环境中的无代理网络访问控制的实例。图6展示了示例性主机602,该示例性主机包括访问控制模块114、网络通信过滤器242、代理提供模块112、网络访问控制策略数据库132、以及检查模块604。可以对检查模块604进行编程以检查虚拟机的资源,从而确定虚拟机是否符合网络访问控制策略。
主机602通常代表能够读取计算机可执行指令的任意类型或形式的计算装置。主机602的实例包括(但不限于)膝上型计算机、桌上型计算机、服务器、蜂窝电话、个人数字助理(PDA)、多媒体播放器、嵌入式系统、图8中相同的示例性计算系统810的一个或多个的组合、或任意其他适当的计算装置。可以对主机602编程以运行一个或多个虚拟机,例如虚拟机610。虚拟机610的资源可以包括虚拟机磁盘空间612和虚拟机内存空间614。
图7是在虚拟化环境中提供网络访问控制的示例性计算机实施方法700的流程图。图7中所示的步骤可以由任何适合的计算机可执行代码和/或计算系统来执行。在一些实施方案中,图7中所示的步骤可以通过图1的系统100和/或图6的系统600中的多个组件的一个或多个来执行。在图7的步骤702中,在此描述的系统的一个或多个可以识别在主机上运行的虚拟机。例如,访问控制模块114可以识别在主机602上运行的虚拟机610。访问控制模块114可以在各种环境中识别虚拟机610。例如,当虚拟机610启动时,当虚拟机610试图在网络上通信时,并且/或者在任意其他适合的时候,访问控制模块114可以识别虚拟机610。
在图7的步骤704中,在此描述的系统的一个或多个可以提供网络通信过滤器,该过滤器驻留在主机上并且位于虚拟机之外。例如,主机602可以包括被配置用于控制虚拟机610的通信的网络通信过滤器242。
在图7的步骤706中,在此描述的系统的一个或多个可以利用在主机上执行的并且位于虚拟机之外的进程来检查虚拟机上的一个或多个资源以确定虚拟机是否符合一个或多个网络访问控制策略。例如,检查模块604可以检查虚拟机610以确定虚拟机610是否符合一个或多个网络访问控制策略。当检查模块可以完全在虚拟机外部运行时,检查模块604还可以暂时运行在虚拟机610的内部。
检查模块604可以检查虚拟机610的任何资源以便确定虚拟机610是否符合一个或多个网络访问控制策略。例如,检查模块604可以检查虚拟机610的虚拟机磁盘空间612(例如磁盘块)和/或虚拟机内存空间614(例如,内存页面)以确定虚拟机610是否符合网络访问控制策略。在这种实施方案中,检查模块604可以基于虚拟机610的资源的检查来重构虚拟机610的操作系统和/或文件系统数据结构。检查模块604可以评估重构的操作系统和/或文件系统数据结构以确定虚拟机610是否是网络访问控制符合的。
例如,检查模块604可以检查虚拟机610的虚拟磁盘空间612以确定虚拟机610是否具有已安装的适合的反病毒和/或其他安全软件。又例如,检查模块604可以检查虚拟机610中的虚拟机磁盘空间612以确定虚拟机610是否已经被恶意软件所危及。
在图7的步骤708中,在此描述的系统的一个或多个可以接收虚拟机是否符合一个或多个网络访问控制策略的指示。例如,访问控制模块114可以从检查模块604接收虚拟机610是否符合网络访问控制策略数据库132所定义的网络访问控制策略的指示。
在图7的步骤710中,基于虚拟机是否符合一个或多个网络访问控制策略的指示,在此描述的系统的一个或多个使用网络通信过滤器来控制虚拟机的网络访问。例如,基于虚拟机610是否符合网络访问控制策略,访问控制模块114可以使用网络通信过滤器242来阻断和/或允许来自虚拟机610的通信。
图8是一个示例性计算系统810的方框图,该系统能够实施在此说明和/或展示的实施方案中的一个或多个。计算系统810广义上代表能够执行计算机可读指令的任何单处理器或多处理器的计算装置或系统。计算系统810的实例包括但不限于工作站、膝上型计算机、客户侧终端、服务器、分布式计算系统、手持装置、或任何其他计算系统或装置。在其最基本的配置中,计算系统810可以包括至少一个处理器814以及一个系统内存816。
处理器814总体上代表能够处理数据或解释并执行多个指令的任何类型或形式的处理单元。在某些实施方案中,处理器814可以从一个软件应用程序或模块中接收指令。这些指令可以使处理器814执行在此所说明和/或展示的示例性实施方案中的一个或多个的功能。例如,处理器814可以单独地或与其他元件相结合来执行和/或作为一种手段来执行在此描述的注入、接收、控制、插入、触发、获取、移除、提供、使用、校正、识别、和/或检查步骤中的一个或多个。处理器814还可以执行和/或作为一种手段来执行在此说明和/或展示的任何其他步骤、方法、或过程。
系统内存816总体上代表能够存储数据和/或其他计算机可读指令的任何类型或形式的易失性或非易失性存储装置或媒质。系统内存816的实例包括(但不限于)随机存取存储器(RAM)、只读存储器(ROM)、闪存、或任何其他适当的存储装置。尽管未作要求,在某些实施方案中计算系统810可以既包括一个易失性内存单元(例如像系统内存816)又包括一个非易失性存储装置(例如像以下详细说明的主存储装置832)。在一个实例中,图1模块110中的一个或多个可以载入到系统内存816中。
在某些实施方案中,除了处理器814和系统内存816外,示例性计算系统810还可以包括一个或多个组件或元件。例如,如图8所示,计算系统810可以包括一个内存控制器818、一个输入/输出(I/O)控制器820、以及一个通信接口822,它们中的每一个可以通过一个通信基础设施812相互连接。通信基础设施812总体上代表能够协助在计算装置的一个或多个组件之间进行通信的任意类型或形式的基础设施。通信基础设施812的实例包括但不限于通信总线(例如ISA、PCI、PCIe、或类似总线)和网络。
内存控制器818总体上代表在计算系统810的一个或多个组件之间操作内存或数据或者控制通信的任意类型或形式的装置。例如,在某些实施方案中,内存控制器818可以通过通信基础设施812控制处理器814、系统内存816以及I/O控制器820之间的通信。在某些实施方案中,内存控制器818可以独立地或与其他元件相结合地执行和/或作为一种手段执行在此描述和/或展示的多个步骤或特征中的一个或多个,例如注入、接收、控制、插入、触发、获取、移除、提供、使用、校正、识别、和/或检查。
I/O控制器820总体上代表能够协调和/或控制一种计算装置的输入和输出功能的任何类型或形式的模块。例如,在某些实施方案中,I/O控制器820可以控制或协助计算系统810的一个或多个元件之间的数据传输,例如处理器814、系统内存816、通信接口822、显示适配器826、输入接口830以及存储器接口834。例如,I/O控制器820可以独立地或结合其他元件执行和/或作为一种手段执行在此描述的注入、接收、控制、插入、触发、获取、移除、提供、使用、校正、识别、和/或检查步骤中的一个或多个。I/O控制器820还可用于执行和/或作为一种手段用于执行本披露中提出的其他步骤和特征。
通信接口822广义地代表能够协助示例性计算系统810与一个或多个附加装置之间进行通信的任何类型或形式的通信装置或适配器。例如,在某些实施方案中,通信接口822可以协助计算系统810与包括多个附加计算系统的私有或公共网络之间的通信。通信接口822的实例包括但不限于有线网络接口(例如网络接口卡)、无线网络接口(例如无线网络接口卡)、调制解调器、以及任何其他适当的接口。在至少一个实施方案中,通信接口822可通过到网络(如互联网)的直接链接来提供到一台远程服务器的直接连接。通信接口822还可以间接地提供这种连接,例如通过局域网(如以太网)、个人局域网、电话或缆线网、蜂窝电话连接、卫星数据连接、或任何其他适当的连接。
在某些实施方案中,通信接口822还可以代表一种主机适配器,该主机适配器被配置为用于通过一条外部总线或通信信道协助计算系统810与一个或多个附加网络或存储装置之间的通信。主机适配器的实例包括但不限于SCSI主机适配器、USB主机适配器、IEEE 1394主机适配器、SATA和eSATA主机适配器、ATA和PATA主机适配器、光纤通道接口适配器、以太网适配器等。通信接口822还可以允许计算系统810参与分布式计算或远程计算。例如,通信接口822可以从一个远程装置接收指令或向其发送指令用于执行。在某些实施方案中,通信接口822可以独立地或与其他元件相结合地执行和/或作为一种手段执行在此披露的注入、接收、控制、插入、触发、获取、移除、提供、使用、校正、识别、和/或检查步骤中的一个或多个。通信接口822还可以用于执行和/或作为一种手段用于执行本披露中提出的其他步骤和特征。
如图8所示,计算系统810还可以包括通过显示适配器826连接至通信基础设施812的至少一个显示装置824。显示装置824总体上代表能够可视地呈现显示适配器826所转发的显示信息的任意类型或形式的装置。相似地,显示适配器826总体上代表任意类型或形式的装置,这些装置被配置用于从通信基础设施812(或从本领域已知的帧缓冲器)转发图形、文本以及其他数据以便显示在显示装置824上。
如图8所示,示例性计算系统810还可以包括通过输入接口830连接至通信基础设施812的至少一个输入装置828。输入装置828总体上代表能够向示例性计算系统810提供计算机或人员生成的输入的任意类型或形式的输入装置。输入装置828的实例包括但不限于键盘、指向装置、语音识别装置、或任意其他输入装置。在至少一个实施方案中,输入装置828可以独立地或结合其他元件执行和/或作为一种手段执行在此披露的注入、接收、控制、插入、触发、获取、移除、提供、使用、校正、识别、和/或检查步骤中的一个或多个。输入装置828还可以用于执行和/或作为一种手段来执行本披露中提出的其他步骤和特征。
如图6所示,示例性计算系统810还包括通过存储接口834连接至通信基础设施812的一个主存储装置832和一个备份存储装置833。存储装置832和833总体上代表能够存储数据和/或其他计算机可读指令的任意类型或形式的存储装置或媒质。例如,存储装置832与833可以是磁盘驱动器(例如,所谓的硬盘驱动器)、软盘驱动器、磁带驱动器、光盘驱动器、闪存驱动器、或者类似装置。存储接口834总体上代表用于在存储装置832和833以及计算系统810的其他组件之间传输数据的任意类型或形式的接口或装置。在一个实例中,图1的文件归属数据库130可以存储在主存储装置832中。
在某些实施方案中,存储装置832和833可以被配置为用于读取自和/或写入到一个可移动存储单元,该可移动存储单元被配置用于存储计算机软件、数据、或其他计算机可读信息。适合的可移动存储单元的实例包括但不限于软盘、磁带、光盘、闪存装置等等。存储装置832和833还可以包括其他类似的结构或装置,以允许计算机软件、数据、或其他计算机可读指令下载到计算系统810中。例如,存储装置832和833可以被配置用于读或写软件、数据、或其他计算机可读信息。存储装置832和833还可以作为计算系统810的一部分或可以是通过其他接口系统访问的一个独立装置。
在某些实施方案中,存储装置832和833可以用于例如独立地或结合其他元件执行和/或作为一种手段执行在此披露的注入、接收、控制、插入、触发、获取、移除、提供、使用、校正、识别、和/或检查步骤中的一个或多个。存储装置832和833还可以被用于执行和/或作为一种手段用于执行本披露提出的其他步骤和特征。
很多其他装置或子系统可以连接至计算系统810上。相反地,为了实施在此描述和/或展示的实施方案,不需要图8中所示的所有组件和装置。以上提到的这些装置和子系统还能够以不同于图8中所示的方式进行相互连接。计算系统810还可使用任何数目的软件、固件、和/或硬件的配置。例如,在此披露的示例性实施方案中的一个或多个可以被编码为一种计算机可读媒质上的计算机程序(还称为计算机软件、软件应用程序、计算机可读指令、或计算机控制逻辑)。短语“计算机可读媒质”总体上是指能够存储或携带计算机可读指令的任何形式的装置、载体、或媒质。计算机可读媒质的实例包括但不限于传输型媒质,如载波,以及物理媒质,如磁性存储媒质(例如,硬盘驱动器和软盘驱动器)、光存储媒质(例如,CD-ROM或DVD-ROM)、电子存储媒质(例如,固态驱动器和闪存媒质)、以及其他分布式系统。
包含计算机程序的计算机可读媒质可以载入到计算系统810中。存储在计算机可读媒质上的所有或部分计算机程序然后可以存储在系统内存816和/或存储装置832和833的不同部分上。当由处理器814执行时,载入到计算系统810中的计算机程序可以使处理器814执行和/或作为一种手段执行在此描述和/或展示的示例性实施方案中的一个或多个的功能。另外地或可替代地,在此所说明和/或展示的示例性实施方案中的一个或多个可以在固件和/或硬件中实施。例如,计算系统810可被配置用作一种专用集成电路(ASIC),它被适配为用于实施在此所披露的这些示例性实施方案中的一个或多个。
图9是示例性网络结构体系900的方框图,其中客户端系统910、920和930以及服务器940和945可以连接至网络950。客户端系统910、920和930总体上代表任意类型或形式的计算装置或系统,例如图8中的示例性计算系统810。在一个实例中,客户系统910可以包括图1的系统100。
类似地,服务器940和945总体上代表被配置为用于提供不同的数据库服务和/或运行某种软件应用程序的计算装置或系统,例如应用程序服务器或数据库服务器。网络950总体上代表任何电信或计算机网络,例如,它包括:内部网、广域网(WAN)、局域网(LAN)、个人区域网(PAN)、或互联网。
如图9所示,一个或多个存储装置960(1)-(N)可以直接附接至服务器940。类似地,一个或多个存储装置970(1)-(N)可以直接附接至服务器945。存储装置960(1)-(N)和存储装置970(1)-(N)总体上代表能够存储数据和/或其他计算机可读指令的任意类型或形式的存储装置或媒质。在某些实施方案中,存储装置960(1)-(N)和存储装置970(1)-(N)可代表被配置为用于使用不同协议(例如NFS、SMB、或CIFS)来与服务器940和945进行通信的网络附联存储(NAS)装置。
[0001]服务器940和945还可以连接至存储区域网络(SAN)结构980。SAN结构980总体上代表能够协助多个存储装置之间通信的任意类型或形式的计算机网络或体系结构。SAN结构980可以协助服务器940和945与多个存储装置990(1)-(N)和/或一个智能存储器阵列995之间的通信。SAN结构980还可以通过网络950和服务器940和945协助客户端系统910、920和930与存储装置990(1)-(N)和/或智能存储器阵列995之间的通信,其方式为装置990(1)-(N)和阵列995对客户端系统910、920和930呈现为本地附接的装置。与存储装置960(1)-(N)和存储装置970(1)-(N)一样,存储装置990(1)-(N)和存储阵列995总体上代表能够存储数据和/或其他计算机可读指令的任意类型或形式的存储装置或媒质。
在某些实施方案中,参考图8的示例性计算系统810,通信接口(例如,图8中的通信接口822)可用于在每一个客户端系统910、920和930以及网络950之间提供连接性。客户端系统910、920和930能够利用例如网络浏览器或其他客户端软件来访问服务器940和945上的信息。这种软件可以允许客户端系统910、920和930访问由服务器940、服务器945、存储装置960(1)-(N)、存储装置970(1)-(N)、存储装置990(1)-(N)、或智能存储器阵列995管理的数据。尽管图9描绘了使用网络(例如互联网)交换数据,但在此描述和/或展示的实施方案不限于互联网或任意具体的基于网络的环境。
在至少一个实施方案中,在此披露的示例性实施方案中的一个或多个的全部或一部分可被编码为一种计算机程序并且由服务器940、服务器945、存储装置960(1)-(N)、存储装置970(1)-(N)、存储装置990(1)-(N)、智能存储阵列995、或它们中的任意组合加载并执行。在此披露的多个示例性实施方案的一个或多个的全部或一部分还可以被编码为计算机程序,存储在服务器940中,由服务器945运行,并在网络950上分发给客户端系统910、920和930。因此,网络体系架构900可以独立地或与其他元件相结合地执行和/或作为一种手段执行在此描述的注入、接收、控制、插入、触发、获取、移除、提供、使用、校正、识别、和/或检查步骤中的一个或多个。网络体系结构900还可以用于执行和/或作为一种手段来执行本披露中提出的其他步骤和特征。
如以上所述,计算系统810和/或网络体系结构900的一个或者多个组件可以单独地或与其他元件相结合地执行和/或作为一种手段来执行一种用于在相关计算系统之间共享计算操作的结果的示例性方法的一个或多个步骤。
虽然以上披露使用了多个具体的框图、流程图、以及实例阐明了不同的实施方案,在此说明和/或展示的每个框图部件、流程图步骤、操作、和/或部件都可以单独地和/或共同地使用一个大范围的硬件、软件、或者固件(或者它们的任何组合)配置来实施。另外,在其他部件之中所包括的任何部件的披露都应该看作本质上是示例性的,因为可以实施许多其他的体系结构来达到同样的功能。
在此说明和/或展示的进程的参数以及步骤的顺序仅仅是以举例的方式给出并且可以按希望来更改。例如,虽然在此展示和/或说明的这些步骤可以按照一个具体的顺序来示出或讨论,但这些步骤并非必须按照所展示或者所讨论的顺序来执行。在此说明和/或展示的不同的示例性方法还可以省略在此说明或展示的一个或者多个步骤或者还可以包括除所披露的那些之外的额外步骤。
虽然不同的实施方案在此已经在全功能性计算系统的背景下进行了说明和/或展示,这些示例性实施方案中的一个或者多个能够以多种形式作为一个程序产品来分发,而无论实际用于进行该分发的计算机可读媒质的具体形式如何。在此披露的这些实施方案还可以通过使用执行一些特定任务的软件模块来实施。这些软件模块可以包括脚本、成批文件、或者其他可执行文件,它们可以存储在一种计算机可读的存储媒质上或者在一种计算系统中。在一些实施方案中,这些软件模块可以将一个计算系统配置用于实施在此披露的一个或者多个示例性的实施方案。
另外,在此所述的这些模块中的一个或多个可以将数据、物理装置、和/或物理装置的表示从一种形式转换到另一种形式。例如,在此披露的模块的一个或多个可以通过利用网络通信过滤器来过滤一个主装置上的虚拟机的通信来将该主装置转换为网络访问控制服务器。
已经提供了以上说明用于使本领域的其他普通技术人员能够最好地使用在此披露的这些示例性实施方案的不同方面。这种示例性说明并非旨在是穷尽性的或者被限制在所披露的任何准确的形式上。许多修改与变更都是可能的而不背离本披露的精神与范围。应该认为在此披露的这些实施方案在所有方面都是展示性的而非限制性的。应该参照所附权利要求及其等效物来确定本披露的范围。
除非另外说明,如在本说明书与权利要求中所使用的,术语“一种”或“一个”将被解释为“至少一个”的意思。此外,为便于使用,如在本说明书以及权利要求中所使用的文字“包含”和“具有”是可以互换的并且具有与文字“包括”相同的含义。

Claims (20)

1.一种在虚拟环境中提供网络访问控制的计算机实施的方法,该方法的至少一部分由包括至少一个处理器的计算装置来执行的,该方法包括:
将暂态安全代理注入到运行在主机上的虚拟机中;
从该暂态安全代理接收该虚拟机是否符合一个或多个网络访问控制策略的指示;
基于该虚拟机是否符合一个或多个网络访问控制策略的指示来控制该虚拟机的网络访问。
2.如权利要求1所述的方法,其中:
通过该主机上的注入模块将该暂态安全代理注入到该虚拟机中。
3.如权利要求2所述的方法,其中将该暂态安全代理注入到该虚拟机中包括:
向该虚拟机的异常处理程序存储单元插入一个或多个计算机可执行指令,这些指令被配置用于协助从该虚拟机向该注入模块的传输控制;
在该虚拟机的执行过程中触发一个异常以使得执行该异常处理程序存储单元中的一个或多个计算机可执行指令;
在该至少一个计算机可执行指令执行之后,从该虚拟机获得控制;
将该暂态安全代理插入到该虚拟机中。
4.如权利要求1所述的方法,其中:
在该主机的网络访问控制模块上接收该虚拟机是否符合该一个或多个网络访问控制策略的指示;
通过进程间通信向该网络访问控制模块发送该虚拟机是否符合该一个或多个网络访问控制策略的指示;
该网络访问控制模块包括一个网络通信过滤器,该网络通信过滤器基于该虚拟机是否符合该一个或多个网络访问控制策略的指示来控制该虚拟机的网络访问。
5.如权利要求1所述的方法,其中:
在远离该主机的一个网络访问控制服务器上接收该虚拟机是否符合该一个或多个网络访问控制策略的指示;
基于该虚拟机是否符合该一个或多个网络访问控制策略的指示,该网络访问控制服务器控制该虚拟机的网络访问。
6.如权利要求1所述的方法,进一步包括:
从该虚拟机移除该暂态安全代理。
7.如权利要求6所述的方法,其中:
当该虚拟机不再需要网络访问时从该虚拟机移除该暂态安全代理。
8.如权利要求1所述的方法,具体地实施为在至少一个计算机可读存储媒质上的计算机可执行指令。
9.一种在虚拟环境中提供网络访问控制的计算机实施的方法,该方法的至少一部分由包括至少一个处理器的计算装置来执行的,该方法包括:
在运行于主机上的虚拟机中提供一个安全代理;
提供驻留在该主机上但位于该虚拟机外部的一个网络通信过滤器;
在控制该网络通信过滤器的一个访问控制模块上,接收该虚拟机是否符合一个或多个网络访问控制策略的指示,该指示通过进程间通信从该安全代理发送至该访问控制模块;
基于该虚拟机是否符合该一个或多个网络访问控制策略的指示,利用该网络通信过滤器来控制该虚拟机的网络访问。
10.如权利要求9所述的方法,其中:
在该虚拟机中提供该安全代理包括将该安全代理注入到该虚拟机中;
该主机上的注入模块将该安全代理注入到该虚拟机中。
11.如权利要求9所述的方法,其中:
在该虚拟机中提供该安全代理包括在该虚拟机上安装该安全代理;
利用该虚拟机的安装进程在该虚拟机上安装该安全代理。
12.如权利要求9所述的方法,其中:
该指示通过虚拟机间通信从该安全代理发送到该访问控制模块。
13.如权利要求9所述的方法,其中:
通过将该指示存储在该安全代理和该访问控制模块所共享的一个存储单元中而将该指示从该安全代理发送到该访问控制模块。
14.如权利要求9所述的方法,其中:
该指示表示该虚拟机不符合该一个或多个网络访问控制策略;
该网络通信过滤器通过阻断该虚拟机的一个或多个网络通信来控制该虚拟机的网络访问。
15.如权利要求14所述的方法,进一步包括:
校正该虚拟机以使得该虚拟机符合该一个或多个网络访问控制策略,其中该网络通信过滤器允许该虚拟机访问用于校正该虚拟机的一个或多个网络资源。
16.如权利要求9所述的方法,具体地实施为在至少一个计算机可读存储媒质上的计算机可执行指令。
17.一种在虚拟环境中提供网络访问控制的计算机实施的方法,该方法的至少一部分由包括至少一个处理器的计算装置来执行的,该方法包括:
识别在主机上运行的虚拟机;
提供驻留在该主机上并位于该虚拟机外部的一个网络通信过滤器;
利用在该主机上执行的并且位于该虚拟机外部的一个进程来检查该虚拟机的一个或多个资源以确定该虚拟机是否符合一个或多个网络访问控制策略;
在控制该网络通信过滤器的一个访问控制模块上,接收该虚拟机是否符合该一个或多个网络访问控制策略的指示;
基于该虚拟机是否符合该一个或多个网络访问控制策略的指示,利用该网络通信过滤器来控制该虚拟机的网络访问。
18.如权利要求17所述的方法,其中:
检查该虚拟机的一个或多个资源包括读取该虚拟机的磁盘空间和内存。
19.如权利要求17所述的方法,其中:
该指示表示该虚拟机不符合该一个或多个网络访问控制策略;
该网络通信过滤器通过阻断该虚拟机的一个或多个网络通信来控制该虚拟机的网络访问。
20.如权利要求17所述的方法,具体地实施为在至少一个计算机可读存储媒质上的计算机可执行指令。
CN201080065081.3A 2010-03-15 2010-12-28 在虚拟环境中提供网络访问控制的系统和方法 Active CN102792307B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/724,414 US8938782B2 (en) 2010-03-15 2010-03-15 Systems and methods for providing network access control in virtual environments
US12/724414 2010-03-15
PCT/US2010/062194 WO2011115655A1 (en) 2010-03-15 2010-12-28 Systems and methods for providing network access control in virtual environments

Publications (2)

Publication Number Publication Date
CN102792307A true CN102792307A (zh) 2012-11-21
CN102792307B CN102792307B (zh) 2015-09-02

Family

ID=43733942

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080065081.3A Active CN102792307B (zh) 2010-03-15 2010-12-28 在虚拟环境中提供网络访问控制的系统和方法

Country Status (5)

Country Link
US (1) US8938782B2 (zh)
EP (1) EP2548149A1 (zh)
JP (2) JP2013522761A (zh)
CN (1) CN102792307B (zh)
WO (1) WO2011115655A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104700026A (zh) * 2013-12-05 2015-06-10 迈克菲股份有限公司 基于java字节码插桩和java方法挂钩检测java沙箱逃逸攻击
CN110192195A (zh) * 2017-01-25 2019-08-30 微软技术许可有限责任公司 通过任何数据通道的安全数据访问
CN111343084A (zh) * 2019-02-07 2020-06-26 卡巴斯基实验室股份公司 使用网关保护自动化系统的系统和方法
CN112639790A (zh) * 2018-06-20 2021-04-09 诺顿卫复客公司 用于控制对外围设备的访问的系统和方法

Families Citing this family (244)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8793787B2 (en) 2004-04-01 2014-07-29 Fireeye, Inc. Detecting malicious network content using virtual environment components
US9106694B2 (en) 2004-04-01 2015-08-11 Fireeye, Inc. Electronic message analysis for malware detection
US8549638B2 (en) 2004-06-14 2013-10-01 Fireeye, Inc. System and method of containing computer worms
US8171553B2 (en) 2004-04-01 2012-05-01 Fireeye, Inc. Heuristic based capture with replay to virtual machine
US7587537B1 (en) 2007-11-30 2009-09-08 Altera Corporation Serializer-deserializer circuits formed from input-output circuit registers
US8584239B2 (en) 2004-04-01 2013-11-12 Fireeye, Inc. Virtual machine with dynamic data flow analysis
US8898788B1 (en) 2004-04-01 2014-11-25 Fireeye, Inc. Systems and methods for malware attack prevention
US8881282B1 (en) 2004-04-01 2014-11-04 Fireeye, Inc. Systems and methods for malware attack detection and identification
US8566946B1 (en) 2006-04-20 2013-10-22 Fireeye, Inc. Malware containment on connection
US8528086B1 (en) 2004-04-01 2013-09-03 Fireeye, Inc. System and method of detecting computer worms
US8281363B1 (en) * 2008-03-31 2012-10-02 Symantec Corporation Methods and systems for enforcing network access control in a virtual environment
US8997219B2 (en) 2008-11-03 2015-03-31 Fireeye, Inc. Systems and methods for detecting malicious PDF network content
US8832829B2 (en) 2009-09-30 2014-09-09 Fireeye, Inc. Network-based binary file extraction and analysis for malware detection
CN102918503B (zh) * 2010-05-12 2016-04-27 惠普发展公司,有限责任合伙企业 用于更新虚拟机模板的方法、设备和制品
US8010992B1 (en) * 2010-07-14 2011-08-30 Domanicom Corp. Devices, systems, and methods for providing increased security when multiplexing one or more services at a customer premises
US9191327B2 (en) 2011-02-10 2015-11-17 Varmour Networks, Inc. Distributed service processing of network gateways using virtual machines
WO2012112095A1 (en) * 2011-02-18 2012-08-23 Telefonaktiebolaget Lm Ericsson (Publ) Virtual machine supervision
JP5505654B2 (ja) * 2011-04-04 2014-05-28 日本電気株式会社 検疫ネットワークシステム及び検疫方法
US8881258B2 (en) 2011-08-24 2014-11-04 Mcafee, Inc. System, method, and computer program for preventing infections from spreading in a network environment using dynamic application of a firewall policy
US8959572B2 (en) 2011-10-28 2015-02-17 Google Inc. Policy enforcement of client devices
US8813169B2 (en) * 2011-11-03 2014-08-19 Varmour Networks, Inc. Virtual security boundary for physical or virtual network devices
US9529995B2 (en) 2011-11-08 2016-12-27 Varmour Networks, Inc. Auto discovery of virtual machines
US9787681B2 (en) 2012-01-06 2017-10-10 Optio Labs, Inc. Systems and methods for enforcing access control policies on privileged accesses for mobile devices
US9712530B2 (en) 2012-01-06 2017-07-18 Optio Labs, Inc. Systems and methods for enforcing security in mobile computing
US9609020B2 (en) * 2012-01-06 2017-03-28 Optio Labs, Inc. Systems and methods to enforce security policies on the loading, linking, and execution of native code by mobile applications running inside of virtual machines
US9256742B2 (en) 2012-01-30 2016-02-09 Intel Corporation Remote trust attestation and geo-location of servers and clients in cloud computing environments
US9910972B2 (en) 2012-01-30 2018-03-06 Intel Corporation Remote trust attestation and geo-location of servers and clients in cloud computing environments
US9032014B2 (en) * 2012-02-06 2015-05-12 Sap Se Diagnostics agents for managed computing solutions hosted in adaptive environments
CN103379481B (zh) * 2012-04-26 2015-05-06 腾讯科技(深圳)有限公司 一种实现安全防护的方法
EP2696303B1 (en) * 2012-08-03 2017-05-10 Alcatel Lucent Mandatory access control (MAC) in virtual machines
US9509553B2 (en) * 2012-08-13 2016-11-29 Intigua, Inc. System and methods for management virtualization
US10572665B2 (en) 2012-12-28 2020-02-25 Fireeye, Inc. System and method to create a number of breakpoints in a virtual machine via virtual machine trapping events
US9773107B2 (en) 2013-01-07 2017-09-26 Optio Labs, Inc. Systems and methods for enforcing security in mobile computing
US8990944B1 (en) 2013-02-23 2015-03-24 Fireeye, Inc. Systems and methods for automatically detecting backdoors
US9009823B1 (en) 2013-02-23 2015-04-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications installed on mobile devices
US9195829B1 (en) 2013-02-23 2015-11-24 Fireeye, Inc. User interface with real-time visual playback along with synchronous textual analysis log display and event/time index for anomalous behavior detection in applications
US9176843B1 (en) 2013-02-23 2015-11-03 Fireeye, Inc. Framework for efficient security coverage of mobile software applications
US9367681B1 (en) 2013-02-23 2016-06-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications using symbolic execution to reach regions of interest within an application
US9578445B2 (en) 2013-03-13 2017-02-21 Optio Labs, Inc. Systems and methods to synchronize data to a mobile device based on a device usage context
US9626509B1 (en) 2013-03-13 2017-04-18 Fireeye, Inc. Malicious content analysis with multi-version application support within single operating environment
US9104867B1 (en) 2013-03-13 2015-08-11 Fireeye, Inc. Malicious content analysis using simulated user interaction without user involvement
US9355247B1 (en) 2013-03-13 2016-05-31 Fireeye, Inc. File extraction from memory dump for malicious content analysis
US9430646B1 (en) 2013-03-14 2016-08-30 Fireeye, Inc. Distributed systems and methods for automatically detecting unknown bots and botnets
US9311479B1 (en) 2013-03-14 2016-04-12 Fireeye, Inc. Correlation and consolidation of analytic data for holistic view of a malware attack
US9413781B2 (en) 2013-03-15 2016-08-09 Fireeye, Inc. System and method employing structured intelligence to verify and contain threats at endpoints
US10713358B2 (en) 2013-03-15 2020-07-14 Fireeye, Inc. System and method to extract and utilize disassembly features to classify software intent
JP6036464B2 (ja) * 2013-03-26 2016-11-30 富士通株式会社 プログラム、診断方法及び診断システム
US9336384B2 (en) * 2013-04-24 2016-05-10 Symantec Corporation Systems and methods for replacing application methods at runtime
US9495180B2 (en) 2013-05-10 2016-11-15 Fireeye, Inc. Optimized resource allocation for virtual machines within a malware content detection system
US9635039B1 (en) 2013-05-13 2017-04-25 Fireeye, Inc. Classifying sets of malicious indicators for detecting command and control communications associated with malware
US10133863B2 (en) 2013-06-24 2018-11-20 Fireeye, Inc. Zero-day discovery system
US9300686B2 (en) 2013-06-28 2016-03-29 Fireeye, Inc. System and method for detecting malicious links in electronic messages
GB2515757A (en) 2013-07-02 2015-01-07 Ibm Managing virtual machine policy compliance
US20150052614A1 (en) * 2013-08-19 2015-02-19 International Business Machines Corporation Virtual machine trust isolation in a cloud environment
US20150058926A1 (en) * 2013-08-23 2015-02-26 International Business Machines Corporation Shared Page Access Control Among Cloud Objects In A Distributed Cloud Environment
US9628507B2 (en) 2013-09-30 2017-04-18 Fireeye, Inc. Advanced persistent threat (APT) detection center
US9690936B1 (en) 2013-09-30 2017-06-27 Fireeye, Inc. Multistage system and method for analyzing obfuscated content for malware
US9736179B2 (en) 2013-09-30 2017-08-15 Fireeye, Inc. System, apparatus and method for using malware analysis results to drive adaptive instrumentation of virtual machines to improve exploit detection
US9294501B2 (en) 2013-09-30 2016-03-22 Fireeye, Inc. Fuzzy hash of behavioral results
US10515214B1 (en) 2013-09-30 2019-12-24 Fireeye, Inc. System and method for classifying malware within content created during analysis of a specimen
US9171160B2 (en) 2013-09-30 2015-10-27 Fireeye, Inc. Dynamically adaptive framework and method for classifying malware using intelligent static, emulation, and dynamic analyses
US10033693B2 (en) 2013-10-01 2018-07-24 Nicira, Inc. Distributed identity-based firewalls
US9921978B1 (en) 2013-11-08 2018-03-20 Fireeye, Inc. System and method for enhanced security of storage devices
US9438506B2 (en) * 2013-12-11 2016-09-06 Amazon Technologies, Inc. Identity and access management-based access control in virtual networks
US9747446B1 (en) 2013-12-26 2017-08-29 Fireeye, Inc. System and method for run-time object classification
US9756074B2 (en) 2013-12-26 2017-09-05 Fireeye, Inc. System and method for IPS and VM-based detection of suspicious objects
US9507935B2 (en) 2014-01-16 2016-11-29 Fireeye, Inc. Exploit detection system with threat-aware microvisor
US9262635B2 (en) 2014-02-05 2016-02-16 Fireeye, Inc. Detection efficacy of virtual machine-based analysis with application specific events
US9973472B2 (en) 2015-04-02 2018-05-15 Varmour Networks, Inc. Methods and systems for orchestrating physical and virtual switches to enforce security boundaries
US10264025B2 (en) 2016-06-24 2019-04-16 Varmour Networks, Inc. Security policy generation for virtualization, bare-metal server, and cloud computing environments
US10091238B2 (en) 2014-02-11 2018-10-02 Varmour Networks, Inc. Deception using distributed threat detection
US9560081B1 (en) 2016-06-24 2017-01-31 Varmour Networks, Inc. Data network microsegmentation
JP2015166952A (ja) * 2014-03-04 2015-09-24 順子 杉中 情報処理装置、情報処理監視方法、プログラム、及び記録媒体
US9241010B1 (en) 2014-03-20 2016-01-19 Fireeye, Inc. System and method for network behavior detection
US10242185B1 (en) 2014-03-21 2019-03-26 Fireeye, Inc. Dynamic guest image creation and rollback
US9591015B1 (en) 2014-03-28 2017-03-07 Fireeye, Inc. System and method for offloading packet processing and static analysis operations
US9432389B1 (en) 2014-03-31 2016-08-30 Fireeye, Inc. System, apparatus and method for detecting a malicious attack based on static analysis of a multi-flow object
US9223972B1 (en) 2014-03-31 2015-12-29 Fireeye, Inc. Dynamically remote tuning of a malware content detection system
RU2580030C2 (ru) * 2014-04-18 2016-04-10 Закрытое акционерное общество "Лаборатория Касперского" Система и способ распределения задач антивирусной проверки между виртуальными машинами в виртуальной сети
US9438623B1 (en) 2014-06-06 2016-09-06 Fireeye, Inc. Computer exploit detection using heap spray pattern matching
US9594912B1 (en) 2014-06-06 2017-03-14 Fireeye, Inc. Return-oriented programming detection
US9973531B1 (en) 2014-06-06 2018-05-15 Fireeye, Inc. Shellcode detection
US10084813B2 (en) 2014-06-24 2018-09-25 Fireeye, Inc. Intrusion prevention and remedy system
US9398028B1 (en) 2014-06-26 2016-07-19 Fireeye, Inc. System, device and method for detecting a malicious attack based on communcations between remotely hosted virtual machines and malicious web servers
US10805340B1 (en) 2014-06-26 2020-10-13 Fireeye, Inc. Infection vector and malware tracking with an interactive user display
US10002252B2 (en) 2014-07-01 2018-06-19 Fireeye, Inc. Verification of trusted threat-aware microvisor
US9363280B1 (en) 2014-08-22 2016-06-07 Fireeye, Inc. System and method of detecting delivery of malware using cross-customer data
US10671726B1 (en) 2014-09-22 2020-06-02 Fireeye Inc. System and method for malware analysis using thread-level event monitoring
US10027689B1 (en) 2014-09-29 2018-07-17 Fireeye, Inc. Interactive infection visualization for improved exploit detection and signature generation for malware and malware families
US9773112B1 (en) 2014-09-29 2017-09-26 Fireeye, Inc. Exploit detection of malware and malware families
US9690933B1 (en) 2014-12-22 2017-06-27 Fireeye, Inc. Framework for classifying an object as malicious with machine learning for deploying updated predictive models
US10075455B2 (en) 2014-12-26 2018-09-11 Fireeye, Inc. Zero-day rotating guest image profile
US9934376B1 (en) 2014-12-29 2018-04-03 Fireeye, Inc. Malware detection appliance architecture
US9838417B1 (en) 2014-12-30 2017-12-05 Fireeye, Inc. Intelligent context aware user interaction for malware detection
CN104601568B (zh) * 2015-01-13 2019-05-21 深信服科技股份有限公司 虚拟化安全隔离方法和装置
US10095534B2 (en) * 2015-02-24 2018-10-09 Red Hat Israel, Ltd. Guest controlled virtual device packet filtering
US9609026B2 (en) 2015-03-13 2017-03-28 Varmour Networks, Inc. Segmented networks that implement scanning
US9294442B1 (en) 2015-03-30 2016-03-22 Varmour Networks, Inc. System and method for threat-driven security policy controls
US9467476B1 (en) 2015-03-13 2016-10-11 Varmour Networks, Inc. Context aware microsegmentation
US10193929B2 (en) 2015-03-13 2019-01-29 Varmour Networks, Inc. Methods and systems for improving analytics in distributed networks
US9438634B1 (en) 2015-03-13 2016-09-06 Varmour Networks, Inc. Microsegmented networks that implement vulnerability scanning
US10178070B2 (en) 2015-03-13 2019-01-08 Varmour Networks, Inc. Methods and systems for providing security to distributed microservices
US10148693B2 (en) 2015-03-25 2018-12-04 Fireeye, Inc. Exploit detection system
US9690606B1 (en) 2015-03-25 2017-06-27 Fireeye, Inc. Selective system call monitoring
US9380027B1 (en) 2015-03-30 2016-06-28 Varmour Networks, Inc. Conditional declarative policies
US10009381B2 (en) 2015-03-30 2018-06-26 Varmour Networks, Inc. System and method for threat-driven security policy controls
US9438613B1 (en) 2015-03-30 2016-09-06 Fireeye, Inc. Dynamic content activation for automated analysis of embedded objects
US9483644B1 (en) 2015-03-31 2016-11-01 Fireeye, Inc. Methods for detecting file altering malware in VM based analysis
US10417031B2 (en) 2015-03-31 2019-09-17 Fireeye, Inc. Selective virtualization for security threat detection
US10474813B1 (en) 2015-03-31 2019-11-12 Fireeye, Inc. Code injection technique for remediation at an endpoint of a network
US9525697B2 (en) 2015-04-02 2016-12-20 Varmour Networks, Inc. Delivering security functions to distributed networks
US9654485B1 (en) 2015-04-13 2017-05-16 Fireeye, Inc. Analytics-based security monitoring system and method
US9594904B1 (en) 2015-04-23 2017-03-14 Fireeye, Inc. Detecting malware based on reflection
US10140140B2 (en) 2015-06-30 2018-11-27 Microsoft Technology Licensing, Llc Cloud virtual machine customization using extension framework
US10726127B1 (en) 2015-06-30 2020-07-28 Fireeye, Inc. System and method for protecting a software component running in a virtual machine through virtual interrupts by the virtualization layer
US10216927B1 (en) 2015-06-30 2019-02-26 Fireeye, Inc. System and method for protecting memory pages associated with a process using a virtualization layer
US11113086B1 (en) 2015-06-30 2021-09-07 Fireeye, Inc. Virtual system and method for securing external network connectivity
US10642753B1 (en) 2015-06-30 2020-05-05 Fireeye, Inc. System and method for protecting a software component running in virtual machine using a virtualization layer
US10395029B1 (en) 2015-06-30 2019-08-27 Fireeye, Inc. Virtual system and method with threat protection
US10454950B1 (en) 2015-06-30 2019-10-22 Fireeye, Inc. Centralized aggregation technique for detecting lateral movement of stealthy cyber-attacks
US9628480B2 (en) 2015-07-27 2017-04-18 Bank Of America Corporation Device blocking tool
US9553891B1 (en) 2015-07-27 2017-01-24 Bank Of America Corporation Device blocking tool
US9736152B2 (en) 2015-07-27 2017-08-15 Bank Of America Corporation Device blocking tool
US11200345B2 (en) 2015-07-29 2021-12-14 Hewlett Packard Enterprise Development Lp Firewall to determine access to a portion of memory
US10715542B1 (en) 2015-08-14 2020-07-14 Fireeye, Inc. Mobile application risk analysis
US9483317B1 (en) 2015-08-17 2016-11-01 Varmour Networks, Inc. Using multiple central processing unit cores for packet forwarding in virtualized networks
US10176321B2 (en) 2015-09-22 2019-01-08 Fireeye, Inc. Leveraging behavior-based rules for malware family classification
US10033759B1 (en) 2015-09-28 2018-07-24 Fireeye, Inc. System and method of threat detection under hypervisor control
US10033747B1 (en) 2015-09-29 2018-07-24 Fireeye, Inc. System and method for detecting interpreter-based exploit attacks
US10210329B1 (en) 2015-09-30 2019-02-19 Fireeye, Inc. Method to detect application execution hijacking using memory protection
US9825989B1 (en) 2015-09-30 2017-11-21 Fireeye, Inc. Cyber attack early warning system
US10601865B1 (en) 2015-09-30 2020-03-24 Fireeye, Inc. Detection of credential spearphishing attacks using email analysis
US9825976B1 (en) 2015-09-30 2017-11-21 Fireeye, Inc. Detection and classification of exploit kits
US10817606B1 (en) 2015-09-30 2020-10-27 Fireeye, Inc. Detecting delayed activation malware using a run-time monitoring agent and time-dilation logic
US10706149B1 (en) 2015-09-30 2020-07-07 Fireeye, Inc. Detecting delayed activation malware using a primary controller and plural time controllers
US10324746B2 (en) 2015-11-03 2019-06-18 Nicira, Inc. Extended context delivery for context-based authorization
US10284575B2 (en) 2015-11-10 2019-05-07 Fireeye, Inc. Launcher for setting analysis environment variations for malware detection
US10191758B2 (en) 2015-12-09 2019-01-29 Varmour Networks, Inc. Directing data traffic between intra-server virtual machines
US10846117B1 (en) 2015-12-10 2020-11-24 Fireeye, Inc. Technique for establishing secure communication between host and guest processes of a virtualization architecture
US10447728B1 (en) 2015-12-10 2019-10-15 Fireeye, Inc. Technique for protecting guest processes using a layered virtualization architecture
US10108446B1 (en) 2015-12-11 2018-10-23 Fireeye, Inc. Late load technique for deploying a virtualization layer underneath a running operating system
US10050998B1 (en) 2015-12-30 2018-08-14 Fireeye, Inc. Malicious message analysis system
US10133866B1 (en) 2015-12-30 2018-11-20 Fireeye, Inc. System and method for triggering analysis of an object for malware in response to modification of that object
US10565378B1 (en) 2015-12-30 2020-02-18 Fireeye, Inc. Exploit of privilege detection framework
US10621338B1 (en) 2015-12-30 2020-04-14 Fireeye, Inc. Method to detect forgery and exploits using last branch recording registers
US10581874B1 (en) 2015-12-31 2020-03-03 Fireeye, Inc. Malware detection system with contextual analysis
US11552986B1 (en) 2015-12-31 2023-01-10 Fireeye Security Holdings Us Llc Cyber-security framework for application of virtual features
US9824216B1 (en) 2015-12-31 2017-11-21 Fireeye, Inc. Susceptible environment detection system
US9965313B2 (en) 2016-01-05 2018-05-08 Bitdefender IPR Management Ltd. Systems and methods for auditing a virtual machine
US9680852B1 (en) 2016-01-29 2017-06-13 Varmour Networks, Inc. Recursive multi-layer examination for computer network security remediation
US9762599B2 (en) 2016-01-29 2017-09-12 Varmour Networks, Inc. Multi-node affinity-based examination for computer network security remediation
US9521115B1 (en) 2016-03-24 2016-12-13 Varmour Networks, Inc. Security policy generation using container metadata
US10785255B1 (en) 2016-03-25 2020-09-22 Fireeye, Inc. Cluster configuration within a scalable malware detection system
US10476906B1 (en) 2016-03-25 2019-11-12 Fireeye, Inc. System and method for managing formation and modification of a cluster within a malware detection system
US10601863B1 (en) 2016-03-25 2020-03-24 Fireeye, Inc. System and method for managing sensor enrollment
US10671721B1 (en) 2016-03-25 2020-06-02 Fireeye, Inc. Timeout management services
US10893059B1 (en) 2016-03-31 2021-01-12 Fireeye, Inc. Verification and enhancement using detection systems located at the network periphery and endpoint devices
US10826933B1 (en) 2016-03-31 2020-11-03 Fireeye, Inc. Technique for verifying exploit/malware at malware detection appliance through correlation with endpoints
US10169585B1 (en) 2016-06-22 2019-01-01 Fireeye, Inc. System and methods for advanced malware detection through placement of transition events
US9787639B1 (en) 2016-06-24 2017-10-10 Varmour Networks, Inc. Granular segmentation using events
US10755334B2 (en) 2016-06-30 2020-08-25 Varmour Networks, Inc. Systems and methods for continually scoring and segmenting open opportunities using client data and product predictors
US10462173B1 (en) 2016-06-30 2019-10-29 Fireeye, Inc. Malware detection verification and enhancement by coordinating endpoint and malware detection systems
US10938837B2 (en) * 2016-08-30 2021-03-02 Nicira, Inc. Isolated network stack to manage security for virtual machines
US10592678B1 (en) 2016-09-09 2020-03-17 Fireeye, Inc. Secure communications between peers using a verified virtual trusted platform module
US10491627B1 (en) 2016-09-29 2019-11-26 Fireeye, Inc. Advanced malware detection using similarity analysis
US10795991B1 (en) 2016-11-08 2020-10-06 Fireeye, Inc. Enterprise search
KR102511451B1 (ko) 2016-11-09 2023-03-17 삼성전자주식회사 리치 실행 환경에서 보안 어플리케이션을 안전하게 실행하는 컴퓨팅 시스템
US10587647B1 (en) 2016-11-22 2020-03-10 Fireeye, Inc. Technique for malware detection capability comparison of network security devices
US10802858B2 (en) 2016-12-22 2020-10-13 Nicira, Inc. Collecting and processing contextual attributes on a host
US11032246B2 (en) 2016-12-22 2021-06-08 Nicira, Inc. Context based firewall services for data message flows for multiple concurrent users on one machine
US10812451B2 (en) 2016-12-22 2020-10-20 Nicira, Inc. Performing appID based firewall services on a host
US10803173B2 (en) 2016-12-22 2020-10-13 Nicira, Inc. Performing context-rich attribute-based process control services on a host
US10581879B1 (en) 2016-12-22 2020-03-03 Fireeye, Inc. Enhanced malware detection for generated objects
US10805332B2 (en) 2017-07-25 2020-10-13 Nicira, Inc. Context engine model
US10552610B1 (en) 2016-12-22 2020-02-04 Fireeye, Inc. Adaptive virtual machine snapshot update framework for malware behavioral analysis
US10523609B1 (en) 2016-12-27 2019-12-31 Fireeye, Inc. Multi-vector malware detection and analysis
KR102285048B1 (ko) 2017-03-24 2021-08-04 아사히 가세이 가부시키가이샤 막 증류용 다공질 막 및 막 증류용 모듈의 운전 방법
US10904286B1 (en) 2017-03-24 2021-01-26 Fireeye, Inc. Detection of phishing attacks using similarity analysis
US10791138B1 (en) 2017-03-30 2020-09-29 Fireeye, Inc. Subscription-based malware detection
US10902119B1 (en) 2017-03-30 2021-01-26 Fireeye, Inc. Data extraction system for malware analysis
US10554507B1 (en) 2017-03-30 2020-02-04 Fireeye, Inc. Multi-level control for enhanced resource and object evaluation management of malware detection system
US10798112B2 (en) 2017-03-30 2020-10-06 Fireeye, Inc. Attribute-controlled malware detection
US10462134B2 (en) 2017-06-26 2019-10-29 Bank Of America Corporation Network device removal for access control and information security
US10567379B2 (en) 2017-06-26 2020-02-18 Bank Of America Corporation Network switch port access control and information security
US10484380B2 (en) 2017-06-26 2019-11-19 Bank Of America Corporation Untrusted network device identification and removal for access control and information security
US10503904B1 (en) 2017-06-29 2019-12-10 Fireeye, Inc. Ransomware detection and mitigation
US10601848B1 (en) 2017-06-29 2020-03-24 Fireeye, Inc. Cyber-security system and method for weak indicator detection and correlation to generate strong indicators
US10855700B1 (en) 2017-06-29 2020-12-01 Fireeye, Inc. Post-intrusion detection of cyber-attacks during lateral movement within networks
US10893068B1 (en) 2017-06-30 2021-01-12 Fireeye, Inc. Ransomware file modification prevention technique
US10609064B2 (en) 2017-07-06 2020-03-31 Bank Of America Corporation Network device access control and information security
US10567433B2 (en) 2017-07-06 2020-02-18 Bank Of America Corporation Network device authorization for access control and information security
US10375076B2 (en) 2017-07-26 2019-08-06 Bank Of America Corporation Network device location information validation for access control and information security
US10462141B2 (en) 2017-07-26 2019-10-29 Bank Of America Corporation Network device information validation for access control and information security
US10320804B2 (en) 2017-07-26 2019-06-11 Bank Of America Corporation Switch port leasing for access control and information security
US10469449B2 (en) 2017-07-26 2019-11-05 Bank Of America Corporation Port authentication control for access control and information security
US10609672B2 (en) 2017-07-28 2020-03-31 Bank Of America Corporation Network device navigation using a distributed wireless network
US10104638B1 (en) 2017-07-28 2018-10-16 Bank Of America Corporation Network device location detection and monitoring using a distributed wireless network
US10383031B2 (en) 2017-07-28 2019-08-13 Bank Of America Corporation Zone-based network device monitoring using a distributed wireless network
US10747872B1 (en) 2017-09-27 2020-08-18 Fireeye, Inc. System and method for preventing malware evasion
US10805346B2 (en) 2017-10-01 2020-10-13 Fireeye, Inc. Phishing attack detection
US11108809B2 (en) 2017-10-27 2021-08-31 Fireeye, Inc. System and method for analyzing binary code for malware classification using artificial neural network techniques
US10778651B2 (en) 2017-11-15 2020-09-15 Nicira, Inc. Performing context-rich attribute-based encryption on a host
US11271955B2 (en) 2017-12-28 2022-03-08 Fireeye Security Holdings Us Llc Platform and method for retroactive reclassification employing a cybersecurity-based global data store
US11005860B1 (en) 2017-12-28 2021-05-11 Fireeye, Inc. Method and system for efficient cybersecurity analysis of endpoint events
US11240275B1 (en) 2017-12-28 2022-02-01 Fireeye Security Holdings Us Llc Platform and method for performing cybersecurity analyses employing an intelligence hub with a modular architecture
US10802893B2 (en) 2018-01-26 2020-10-13 Nicira, Inc. Performing process control services on endpoint machines
US10862773B2 (en) 2018-01-26 2020-12-08 Nicira, Inc. Performing services on data messages associated with endpoint machines
US10826931B1 (en) 2018-03-29 2020-11-03 Fireeye, Inc. System and method for predicting and mitigating cybersecurity system misconfigurations
US11003773B1 (en) 2018-03-30 2021-05-11 Fireeye, Inc. System and method for automatically generating malware detection rule recommendations
US10956477B1 (en) 2018-03-30 2021-03-23 Fireeye, Inc. System and method for detecting malicious scripts through natural language processing modeling
US11558401B1 (en) 2018-03-30 2023-01-17 Fireeye Security Holdings Us Llc Multi-vector malware detection data sharing system for improved detection
US11314859B1 (en) 2018-06-27 2022-04-26 FireEye Security Holdings, Inc. Cyber-security system and method for detecting escalation of privileges within an access token
US11075930B1 (en) 2018-06-27 2021-07-27 Fireeye, Inc. System and method for detecting repetitive cybersecurity attacks constituting an email campaign
US11228491B1 (en) 2018-06-28 2022-01-18 Fireeye Security Holdings Us Llc System and method for distributed cluster configuration monitoring and management
US11316900B1 (en) 2018-06-29 2022-04-26 FireEye Security Holdings Inc. System and method for automatically prioritizing rules for cyber-threat detection and mitigation
US11182473B1 (en) 2018-09-13 2021-11-23 Fireeye Security Holdings Us Llc System and method for mitigating cyberattacks against processor operability by a guest process
US11763004B1 (en) 2018-09-27 2023-09-19 Fireeye Security Holdings Us Llc System and method for bootkit detection
US11176251B1 (en) 2018-12-21 2021-11-16 Fireeye, Inc. Determining malware via symbolic function hash analysis
US11368475B1 (en) 2018-12-21 2022-06-21 Fireeye Security Holdings Us Llc System and method for scanning remote services to locate stored objects with malware
US11743290B2 (en) 2018-12-21 2023-08-29 Fireeye Security Holdings Us Llc System and method for detecting cyberattacks impersonating legitimate sources
US11601444B1 (en) 2018-12-31 2023-03-07 Fireeye Security Holdings Us Llc Automated system for triage of customer issues
US11310238B1 (en) 2019-03-26 2022-04-19 FireEye Security Holdings, Inc. System and method for retrieval and analysis of operational data from customer, cloud-hosted virtual resources
US11677786B1 (en) 2019-03-29 2023-06-13 Fireeye Security Holdings Us Llc System and method for detecting and protecting against cybersecurity attacks on servers
US11636198B1 (en) 2019-03-30 2023-04-25 Fireeye Security Holdings Us Llc System and method for cybersecurity analyzer update and concurrent management system
US11575563B2 (en) 2019-05-31 2023-02-07 Varmour Networks, Inc. Cloud security management
US11711374B2 (en) 2019-05-31 2023-07-25 Varmour Networks, Inc. Systems and methods for understanding identity and organizational access to applications within an enterprise environment
US11290494B2 (en) 2019-05-31 2022-03-29 Varmour Networks, Inc. Reliability prediction for cloud security policies
US11310284B2 (en) 2019-05-31 2022-04-19 Varmour Networks, Inc. Validation of cloud security policies
US11863580B2 (en) 2019-05-31 2024-01-02 Varmour Networks, Inc. Modeling application dependencies to identify operational risk
US11290493B2 (en) 2019-05-31 2022-03-29 Varmour Networks, Inc. Template-driven intent-based security
US11258806B1 (en) 2019-06-24 2022-02-22 Mandiant, Inc. System and method for automatically associating cybersecurity intelligence to cyberthreat actors
US11556640B1 (en) 2019-06-27 2023-01-17 Mandiant, Inc. Systems and methods for automated cybersecurity analysis of extracted binary string sets
US11392700B1 (en) 2019-06-28 2022-07-19 Fireeye Security Holdings Us Llc System and method for supporting cross-platform data verification
US11886585B1 (en) 2019-09-27 2024-01-30 Musarubra Us Llc System and method for identifying and mitigating cyberattacks through malicious position-independent code execution
US11637862B1 (en) 2019-09-30 2023-04-25 Mandiant, Inc. System and method for surfacing cyber-security threats with a self-learning recommendation engine
US11436327B1 (en) 2019-12-24 2022-09-06 Fireeye Security Holdings Us Llc System and method for circumventing evasive code for cyberthreat detection
US11522884B1 (en) 2019-12-24 2022-12-06 Fireeye Security Holdings Us Llc Subscription and key management system
US11838300B1 (en) 2019-12-24 2023-12-05 Musarubra Us Llc Run-time configurable cybersecurity system
US11539718B2 (en) 2020-01-10 2022-12-27 Vmware, Inc. Efficiently performing intrusion detection
US11108728B1 (en) 2020-07-24 2021-08-31 Vmware, Inc. Fast distribution of port identifiers for rule processing
US11876817B2 (en) 2020-12-23 2024-01-16 Varmour Networks, Inc. Modeling queue-based message-oriented middleware relationships in a security system
US11818152B2 (en) 2020-12-23 2023-11-14 Varmour Networks, Inc. Modeling topic-based message-oriented middleware within a security system
US11777978B2 (en) 2021-01-29 2023-10-03 Varmour Networks, Inc. Methods and systems for accurately assessing application access risk
US11734316B2 (en) 2021-07-08 2023-08-22 Varmour Networks, Inc. Relationship-based search in a computing environment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008039506A2 (en) * 2006-09-27 2008-04-03 Cipheroptics, Inc. Deploying group vpns and security groups over an end-to-end enterprise network and ip encryption for vpns
US20080134175A1 (en) * 2006-10-17 2008-06-05 Managelq, Inc. Registering and accessing virtual systems for use in a managed system
US20090007218A1 (en) * 2007-06-30 2009-01-01 Hubbard Scott M Switched-Based Network Security
CN101379504A (zh) * 2006-02-22 2009-03-04 国际商业机器公司 虚拟角色

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2378535A (en) 2001-08-06 2003-02-12 Ibm Method and apparatus for suspending a software virtual machine
US7249187B2 (en) * 2002-11-27 2007-07-24 Symantec Corporation Enforcement of compliance with network security policies
US7757231B2 (en) 2004-12-10 2010-07-13 Intel Corporation System and method to deprivilege components of a virtual machine monitor
US7409719B2 (en) * 2004-12-21 2008-08-05 Microsoft Corporation Computer security management, such as in a virtual machine or hardened operating system
US8706877B2 (en) * 2004-12-30 2014-04-22 Citrix Systems, Inc. Systems and methods for providing client-side dynamic redirection to bypass an intermediary
US7647589B1 (en) 2005-02-07 2010-01-12 Parallels Software International, Inc. Methods and systems for safe execution of guest code in virtual machine context
WO2007053980A1 (en) 2005-11-12 2007-05-18 Intel Corporation Method and apparatus to support virtualization with code patches
US8886929B2 (en) 2006-03-29 2014-11-11 Intel Corporation Generating a chain of trust for a virtual endpoint
JP2008077558A (ja) 2006-09-25 2008-04-03 Mitsubishi Electric Corp 検疫ネットワークシステム
US20090007100A1 (en) * 2007-06-28 2009-01-01 Microsoft Corporation Suspending a Running Operating System to Enable Security Scanning
CN101334825B (zh) * 2007-06-29 2011-08-24 联想(北京)有限公司 应用程序管理和运行系统及方法
WO2009081530A1 (ja) * 2007-12-26 2009-07-02 Nec Corporation 仮想計算機システム、ポリシ強制システム、ポリシ強制方法及び仮想計算機制御用プログラム
WO2009087702A1 (ja) * 2008-01-09 2009-07-16 Fujitsu Limited 仮想マシン実行プログラム、ユーザ認証プログラムおよび情報処理装置
US9015704B2 (en) * 2008-03-24 2015-04-21 International Business Machines Corporation Context agent injection using virtual machine introspection
US20090328030A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Installing a management agent with a virtual machine
US9910688B2 (en) 2008-11-28 2018-03-06 Red Hat, Inc. Implementing aspects with callbacks in virtual machines
US8225317B1 (en) 2009-04-17 2012-07-17 Symantec Corporation Insertion and invocation of virtual appliance agents through exception handling regions of virtual machines
US20110126197A1 (en) 2009-11-25 2011-05-26 Novell, Inc. System and method for controlling cloud and virtualized data centers in an intelligent workload management system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101379504A (zh) * 2006-02-22 2009-03-04 国际商业机器公司 虚拟角色
WO2008039506A2 (en) * 2006-09-27 2008-04-03 Cipheroptics, Inc. Deploying group vpns and security groups over an end-to-end enterprise network and ip encryption for vpns
US20080134175A1 (en) * 2006-10-17 2008-06-05 Managelq, Inc. Registering and accessing virtual systems for use in a managed system
US20090007218A1 (en) * 2007-06-30 2009-01-01 Hubbard Scott M Switched-Based Network Security

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CHIUEH T ET.AL: "Stealthy Deployment and Execution of In-Guest Kernel Agents", 《INTERNET CITATION》, 1 August 2009 (2009-08-01), pages 1 - 12 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104700026A (zh) * 2013-12-05 2015-06-10 迈克菲股份有限公司 基于java字节码插桩和java方法挂钩检测java沙箱逃逸攻击
CN104700026B (zh) * 2013-12-05 2018-06-29 迈克菲股份有限公司 用于检测从基于字节码的沙箱环境逃逸的尝试的方法、设备和系统
CN110192195A (zh) * 2017-01-25 2019-08-30 微软技术许可有限责任公司 通过任何数据通道的安全数据访问
CN110192195B (zh) * 2017-01-25 2023-10-24 微软技术许可有限责任公司 用于安全数据访问的系统、方法和计算机存储介质
CN112639790A (zh) * 2018-06-20 2021-04-09 诺顿卫复客公司 用于控制对外围设备的访问的系统和方法
CN111343084A (zh) * 2019-02-07 2020-06-26 卡巴斯基实验室股份公司 使用网关保护自动化系统的系统和方法

Also Published As

Publication number Publication date
JP2013522761A (ja) 2013-06-13
JP5978365B2 (ja) 2016-08-24
CN102792307B (zh) 2015-09-02
JP2016006670A (ja) 2016-01-14
WO2011115655A1 (en) 2011-09-22
EP2548149A1 (en) 2013-01-23
US20110225624A1 (en) 2011-09-15
US8938782B2 (en) 2015-01-20

Similar Documents

Publication Publication Date Title
CN102792307B (zh) 在虚拟环境中提供网络访问控制的系统和方法
US9058492B1 (en) Techniques for reducing executable code vulnerability
JP6166839B2 (ja) 実行時のアプリケーションメソッドを置き換えるためのシステム及び方法
US9009836B1 (en) Security architecture for virtual machines
Okhravi et al. Creating a cyber moving target for critical infrastructure applications using platform diversity
KR101034415B1 (ko) 가상 머신 또는 강화된 운영 시스템 등에서의 컴퓨터 보안관리
US9813443B1 (en) Systems and methods for remediating the effects of malware
CN102436566A (zh) 一种动态可信度量方法及安全嵌入式系统
CN107408176A (zh) 恶意对象的执行剖析检测
EP2893481B1 (en) Systems and methods for detecting illegitimate applications
Korkin et al. Applying memory forensics to rootkit detection
US9652615B1 (en) Systems and methods for analyzing suspected malware
US20220391506A1 (en) Automated Interpreted Application Control For Workloads
US9135442B1 (en) Methods and systems for detecting obfuscated executables
US9483643B1 (en) Systems and methods for creating behavioral signatures used to detect malware
US9659156B1 (en) Systems and methods for protecting virtual machine program code
US9552481B1 (en) Systems and methods for monitoring programs
US8250652B1 (en) Systems and methods for circumventing malicious attempts to block the installation of security software
RU2583714C2 (ru) Агент безопасности, функционирующий на уровне встроенного программного обеспечения, с поддержкой безопасности уровня операционной системы
US8353058B1 (en) Methods and systems for detecting rootkits
Kim et al. Burnfit: Analyzing and exploiting wearable devices
US10846405B1 (en) Systems and methods for detecting and protecting against malicious software
US10116688B1 (en) Systems and methods for detecting potentially malicious files
US9501649B2 (en) Systems and methods for determining potential impacts of applications on the security of computing systems
Hsiao et al. Virtual machine introspection based malware behavior profiling and family grouping

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200103

Address after: California, USA

Patentee after: CA,INC.

Address before: California, USA

Patentee before: Symantec Corporation