US20170134436A1 - System and method for preventing data loss using virtual machine wrapped applications - Google Patents

System and method for preventing data loss using virtual machine wrapped applications Download PDF

Info

Publication number
US20170134436A1
US20170134436A1 US15/412,337 US201715412337A US2017134436A1 US 20170134436 A1 US20170134436 A1 US 20170134436A1 US 201715412337 A US201715412337 A US 201715412337A US 2017134436 A1 US2017134436 A1 US 2017134436A1
Authority
US
United States
Prior art keywords
browser
virtual machine
data
access
version
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.)
Abandoned
Application number
US15/412,337
Inventor
Sonali Agarwal
Lee Codel Lawson Tarbotton
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.)
McAfee LLC
Original Assignee
McAfee LLC
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 McAfee LLC filed Critical McAfee LLC
Priority to US15/412,337 priority Critical patent/US20170134436A1/en
Publication of US20170134436A1 publication Critical patent/US20170134436A1/en
Assigned to MCAFEE, LLC reassignment MCAFEE, LLC CHANGE OF NAME AND ENTITY CONVERSION Assignors: MCAFEE, INC.
Assigned to MORGAN STANLEY SENIOR FUNDING, INC. reassignment MORGAN STANLEY SENIOR FUNDING, INC. SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MCAFEE, LLC
Assigned to JPMORGAN CHASE BANK, N.A. reassignment JPMORGAN CHASE BANK, N.A. SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MCAFEE, LLC
Assigned to JPMORGAN CHASE BANK, N.A. reassignment JPMORGAN CHASE BANK, N.A. CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Assignors: MCAFEE, LLC
Assigned to MORGAN STANLEY SENIOR FUNDING, INC. reassignment MORGAN STANLEY SENIOR FUNDING, INC. CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Assignors: MCAFEE, LLC
Assigned to MCAFEE, LLC reassignment MCAFEE, LLC RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Assignors: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Assigned to MCAFEE, LLC reassignment MCAFEE, LLC RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Assignors: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • H04L63/205Network architectures or network communication protocols for network security for managing network security; network security policies in general involving negotiation or determination of the one or more network security mechanisms to be used, e.g. by negotiation between the client and the server or between peers or by selection according to the capabilities of the entities involved
    • 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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6281Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database at program execution time, where the protection is within the operating system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0263Rule management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/128Restricting unauthorised execution of programs involving web programs, i.e. using technology especially used in internet, generally interacting with a web browser, e.g. hypertext markup language [HTML], applets, java
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Definitions

  • This disclosure relates in general to the field of security and, more particularly, to preventing data loss in a virtual environment.
  • Virtualization is a software technology that allows a complete operating system to run on an isolated virtual environment (typically referred to as a virtual machine), where a platform's physical characteristics and behaviors are reproduced. Virtualization can also provide for execution of a single application within a virtual machine.
  • a virtual machine can represent an isolated, virtual environment (lying on top of a host operating system (OS) or running on bare hardware), equipped with virtual hardware (processor, memory, disks, network interfaces, etc.).
  • OS host operating system
  • bare hardware equipped with virtual hardware (processor, memory, disks, network interfaces, etc.).
  • a virtual machine monitor is typically the virtualization software layer that manages hardware requests from a guest OS (e.g., simulating answers from real hardware).
  • a hypervisor is typically computer software/hardware platform virtualization software that allows multiple operating systems to run on a host computer concurrently. Applications represent a unique challenge in virtual environments because they can easily be manipulated in order to infect a given computer system. Security professionals and network administrators should account for these issues in order to protect computers and systems from emerging security threats.
  • FIG. 1 is a simplified block diagram of a system for preventing data loss using virtual machine wrapped applications in accordance with one embodiment
  • FIG. 2 is a simplified block diagram of an example embodiment of a system for preventing data loss using virtual machine wrapped applications
  • FIG. 3 is a simplified flowchart illustrating a series of example steps associated with the system in accordance with one embodiment.
  • FIG. 4 is a simplified flowchart illustrating a series of example steps associated with the system in accordance with another embodiment.
  • a method in one example implementation includes selecting at least one criterion for controlling data transmission from within a virtual machine. At least one application is included within the virtual machine and the virtual machine includes a policy module. The selected criterion corresponds to at least one policy associated with the policy module. The method also includes evaluating the selected criterion of the policy to permit an attempt to transmit the data from within the virtual machine.
  • the policy includes a plurality of selected criteria, including a first selected criterion that permits transmission of the data to a first other application and a second selected criterion that prohibits transmission of the data to a second other application.
  • the selected criterion permits transmission of the data to a client device of one of a plurality of users if the client device is requesting access to the application from within a secured network environment.
  • the method includes updating the policy module through an administration module to modify the selected criterion.
  • FIG. 1 is a simplified block diagram of a system 10 for protecting data from accidental and deliberate leakage in a virtual environment using virtual machine wrapped applications.
  • System 10 may include a plurality of virtual machines 12 , 14 , 24 , and 26 , and an operating system 30 .
  • System 10 may also include a virtual machine monitor 16 that includes a memory element 18 , a policy administration module 20 , and a processor 22 .
  • Memory element 18 may contain a master image 38 with stored entries corresponding to the most current versions of software used within system 10 .
  • Each of virtual machines 12 , 14 , 24 , and 26 includes an associated firewall policy module 34 a, 34 b, 34 c, and 34 d, respectively. Not shown in FIG.
  • MMU memory management units
  • SMP symmetric multiprocessing
  • IDE integrated drive electronics
  • system 10 wraps each application or suite of applications within a virtual machine in order to protect data associated with the application from accidental and deliberate leakage.
  • system 10 wraps each application or suite of applications within a virtual machine in order to protect data associated with the application from accidental and deliberate leakage.
  • Typical network environments including, among others, local area networks (LANs), wide area networks (WANs), Campus Area Networks (CANS), intranets, and extranets are used by businesses, schools, and other organizations to link multiple personal computers or client devices together, along with servers that allow the client devices to access shared data and applications related to the function of the organization.
  • these networks are often configured to provide internet connections from client devices in the network to the Internet, enabling access to the World Wide Web and possibly other networks.
  • the data maintained by the organizations typically includes varying types and degrees of confidential data, where data such as payroll records and legal documents often requires a high degree of protection, whereas data such as customer sales may require a lesser degree of protection.
  • Network administrators typically configure their networks to allow particular persons (or groups of persons) access to specific applications, depending upon the type and degree of confidential data associated with the applications. For example, persons working within a human resources department would possibly have access to data and applications associated with the human resources department, but not have access to data and applications associated with the legal department. This type of security is typically applied at the operating system level.
  • Security at the operating system level alone is flawed because it relies on individuals properly controlling the data and applications to avoid accidental and deliberate misuse of confidential data.
  • multiple applications are running on an operating system, it is possible to share data between them using the operating system clipboard, a file system, and the like (e.g., using copy and paste functions, save, move, send to, import and export type functions, etc.).
  • an authorized user accessing legal department data could mistakenly (or deliberately) share a confidential legal file or data with another user who is not authorized to access such information. This could be accomplished, for example, by using copy and paste functions between the legal application and another application to store the confidential data in an unprotected memory space to which unauthorized users in the organization have access.
  • a user could email a message from the legal application containing confidential data that was copied into the message, or included as an attachment, to an unauthorized user.
  • temporary files may also be at risk for leaking confidential data as they are normally available within the operating system. If an application terminates before all temporary files are deleted, then those remaining temporary files could be accessed by a savvy user, or by malicious third party software.
  • Temporary files could contain confidential data from an application being run by an authorized user, or other information that was downloaded, such as, for example, details of a user's bank account. Such temporary files are at risk of exposure because they are often not protected.
  • Firewalls are usually designed to block unauthorized access, while permitting authorized communications based upon a set of rules and other criteria. Even with appropriate firewall protections, data leakage can occur, for example, if an authorized user accesses the network from a less secure (remote) location and begins retrieving confidential data.
  • the confidential data may travel from the firewall-protected network to the user's computer through various communication paths and networking devices such as telephone lines, cable modems, fiber optic cables, satellites, microwaves, routers, gateways, switches, etc. Furthermore, the user's computer may no longer be protected by a firewall when it is remotely accessing the organization's network, thereby exposing the user's computer to various forms of malware, which could put the confidential data at risk.
  • an application is provided to encapsulate or wrap each application or suite of applications used in a network within a virtual machine. Access to and from each virtual machine can be controlled by an associated firewall (i.e., security) policy, or any other suitable security safeguard. Confidential data, as potentially defined by the associated firewall policy, may be contained within the virtual machine wrapped application such that copy and paste buffers and temporary files would not be accessible through the main operating system underlying the virtual machine.
  • the virtual machine wrap provides an additional layer of security on top of the operating system, which could prevent direct access to the memory where the confidential data is stored.
  • the associated firewall policy may be evaluated to determine whether the virtual machine wrapped application is allowed to share data (e.g., using copy and paste buffers, save, move, send to, and import/export type functions, email, etc.). For example, a first virtual machine wrapped application may be allowed to share confidential data with a second virtual machine wrapped application, but not with a third virtual machine wrapped application and not with a fourth application, which may not have a virtual machine wrap.
  • system 10 can provide focused, specific security around each application or suite of applications to control access by users and other virtual machines. Such a system could allow for any application running on the main operating system or running on an operating system of a specific device, such as an end user's client device, to be wrapped within a virtual machine. Also, system 10 could automatically generate and maintain, or a network administrator could configure and maintain, master image 38 representing particular versions (e.g., the most current version) of software, so that each virtual machine wrapped application could be updated as needed.
  • virtual machines can be implemented to run complete operating systems and their associated applications (system virtual machines), or to run a single application or suite of applications (process virtual machines).
  • Virtual machines can be implemented as Type 1, running below the host operating system directly on the hardware or as Type 2, running on top of a host operating system.
  • Both system and process virtual machines can have some type of virtualization software that manages virtual machines and any guest operating systems.
  • virtual machine monitor is meant to include hypervisors, or other software or objects that can operate to manage one or more virtual machines and allow desired policy administration as detailed below.
  • an executable can cause a computer to perform indicated tasks according to encoded instructions, as opposed to a file that only contains data.
  • Files that contain instructions for an interpreter or virtual machine may be considered ‘executables’ or ‘binaries’ in contrast to program source code.
  • object (as used herein in this Specification) is meant to include any such executables, binaries, kernel modules, etc., which are sought to be invoked, initiated, or otherwise executed.
  • virtual machine monitor 16 can be implemented to manage multiple applications that are each wrapped separately by a virtual machine 12 , 14 , 24 , and 26 .
  • virtual machine monitor 16 can be thought of as virtualization software running on top of main operating system 30 , with the plurality of virtual machines 12 , 14 , 24 , and 26 also running on top of existing operating system 30 .
  • virtual machine monitor 16 could be implemented as a hypervisor to run on bare hardware with each virtual machine 12 , 14 , 24 , and 26 running its own operating system.
  • Virtual machine monitor 16 can be part of a server, a firewall, or more generically, a computer.
  • virtual machine monitor 16 may be located in a central base of the network (e.g., IT headquarters), for direct access by a network administrator to configure and maintain the system.
  • a network administrator e.g., IT headquarters
  • FIG. 1 there is a human resources application 28 wrapped in virtual machine 12 , a customer sales application 32 wrapped in virtual machine 14 , an application suite 40 having multiple applications wrapped in virtual machine 24 , and an Adobe® application 44 wrapped in virtual machine 26 .
  • Application suite 40 may include, for example, bundled software applications such as Microsoft® Word, Excel®, and PowerPoint®.
  • a user with appropriate authority such as a network administrator is provided with an interface to manage the complete setup of virtual machines 12 , 14 , 24 , and 26 and associated firewall policy modules 34 a, 34 b, 34 c, and 34 d .
  • This management can include configurations of the virtual machine monitor and the virtual machines, creation, deletion, modification, shutdown, updating, and startup of the virtual machines, etc.
  • the interface may allow the network administrator to initially configure and maintain master image 38 comprising entries that correspond to particular versions of the applications within the network. Alternatively, system 10 may automatically generate and update master image 38 .
  • the network administrator can select desired specific criteria for the policies to be applied to each virtual machine 12 , 14 , 24 , and 26 , through respective firewall policy modules 34 a, 34 b, 34 c, and 34 d.
  • the policies can be tailored to meet particular desired security for data depending upon, for example, the confidentiality of the data accessible through the virtual machine wrapped application, the particular users seeking access to the data, particular job titles, particular department types, particular timestamps of information, particular locations in which a request for data access originates, particular days and times of days a request for data access originates, specifically configured permissions, etc.
  • firewall policy modules 34 a, 34 b, 34 c, and 34 d the virtual machines can be deployed to targeted computers, such as an end user's client device, a server, or any other device configured to host the virtual machine wrapped applications, which can be made accessible to authorized users.
  • Policy administration module 20 is also configured to allow the network administrator to maintain virtual machines 12 , 14 , 24 , and 26 and to update or change the security policies on firewall policy modules 34 a, 34 b, 34 c, and 34 d, as needed.
  • a first level of security associated with system 10 can relate to authentication.
  • Authentication determines whether a user is authorized to access the network and within the network, which particular applications or data the user is allowed to access. Although authentication is typically applied at the operating system level, at least a portion of the authentication process may also be applied through firewall policy modules 34 a, 34 b, 34 c, and 34 d. Once an authorized user is granted access to an application within virtual machine 12 , 14 , 24 , or 26 , the associated firewall policy module 34 a, 34 b, 34 c, or 34 d may restrict what the user can do within the application.
  • a policy may be applied to firewall policy module 34 a for human resources virtual machine 12 , preventing an authorized user from transmitting (e.g., copying, pasting, moving, sending, exporting, emailing, etc.) confidential data, such as employee salary data, from human resources virtual machine 12 to another application or user, such as, for example, application suite virtual machine 24 .
  • confidential data such as employee salary data
  • the policy may be tailored to allow data transmission with data tracking.
  • the transmitted confidential data may be recorded in a data log stored in a memory element.
  • the terms ‘transmit’ and ‘transmission’ are meant to encompass any operations associated with copying, cutting, pasting, saving, moving, sending, importing, exporting, emailing, or otherwise manipulating data.
  • firewall policy module 34 a Another form of policy that may be used within firewall policy modules 34 a, 34 b , 34 c, and 34 d, includes policies related to the environment from which a user requests access to particular applications. For example, if a user requests access to human resources virtual machine 12 from a client device (e.g., a laptop, etc.) when the user is physically located within the network's secure environment, then firewall policy module 34 a can perform a check to determine if the user is within a secure environment and allow access accordingly.
  • a client device e.g., a laptop, etc.
  • firewall policy module 34 a may be configured to prohibit the user from accessing the human resources application within virtual machine 12 .
  • the protocol can prevent the user from potentially leaking data when the user is in a less secure environment.
  • the scope of this disclosure is intended to encompass any type or combination of firewall policies desired by a particular organization for controlling data leakage from one or more of its applications within its network.
  • policies include, but are not limited to, policies restricting data movement between particular applications, policies restricting application access depending upon the user's environment, policies restricting application access depending upon the time of day or particular days access is requested, and policies restricting data movement from particular applications to particular individuals or groups of individuals.
  • FIG. 2 is a simplified block diagram illustrating one implementation of a data loss prevention system 50 using virtual machine wrapped applications in accordance with the present disclosure.
  • a network of an organization such as a corporation or other business entity, is provided with a machine 60 being logically connected to a central human resources system 52 , a central intellectual property store 54 , and a mail server 56 , which can be part of the organization's network infrastructure.
  • machine is interchangeable with the term “computer.”
  • Machine 60 includes applications in a common operating environment 72 (e.g., an operating system). These applications include a mail client 64 connected to mail server 56 for sending and receiving email communications that are not associated or linked to data or applications secured within the virtual environment.
  • Machine 60 also includes a virtual machine 66 for accessing central intellectual property store 54 .
  • Virtual machine 66 includes a firewall policy module 68 and a mail client 70 for sending and receiving emails from virtual machine 66 .
  • a secure mail proxy 58 connects mail client 70 in virtual machine 66 to mail server 56 on the network.
  • Machine 60 may also be configured with a USB drive 62 .
  • machine 60 may be operated by a user who is the head of research of the organization.
  • System 50 may require authentication that the user is authorized to use machine 60 to access various resources within the network. Such an authentication could be performed by the operating system, where a unique user ID and password are validated.
  • the user may be allowed to access central human resources system 52 for particular confidential data only, such as data corresponding to employees in the Research Department who report to the user. Allowing or blocking access to a particular resource or application may be accomplished through the operating system using the authentication mechanism described above.
  • Firewall policy module 68 associated with virtual machine 66 may be configured with a policy having selected criteria to control data transmissions from central intellectual property store 54 .
  • the selected criteria may allow the user to access confidential data within central intellectual property store 54 , but not allow the data to be copied and pasted, moved, exported, emailed or otherwise transmitted to another application.
  • the selected criteria in the policy of associated firewall policy module 68 could only allow confidential data related to particular employees to be accessed by the user.
  • the selected criteria may or may not allow the user to transmit the accessible data to other applications.
  • the selected criteria can be configured to allow data transmission to certain applications and to prohibit data transmission to other applications.
  • the user is allowed access to email from within virtual machine 66 .
  • any email being sent from virtual machine 66 is transmitted to secure mail proxy 58 , before being sent to mail server 56 .
  • secure mail proxy 58 the email may be screened for any confidential data protected by that particular application.
  • firewall policy module 68 would be applied to the content, attachments, and routing of the email.
  • a log be kept for recording entries corresponding to data that is allowed to be sent from secure mail proxy 58 , thus allowing the organization to track particular data that is shared between applications and users in the organization.
  • USB drive 62 is accessible to common operating environment 72 of machine 60 , where firewall policy module 68 may include a policy with selected criteria that prevents virtual machine 66 from communicating with the USB port. This prevents users from copying protected data to a flash drive on USB drive 62 , and it also protects the virtual machine wrapped application from communicating with any software application introduced to machine 60 through USB drive 62 . This virtualization of individual applications with an associated firewall policy module is particularly useful for protecting data from infected software introduced to machine 60 through USB drive 62 . The user of virtual machine 66 could, therefore, be limited to specific tasks within the virtual machine wrapped application in order to reduce the ability of obfuscating, or compromising confidential data.
  • FIG. 3 is a simplified flowchart 100 illustrating a number of example steps associated with one implementation of a data loss prevention system.
  • the flow may begin at step 110 , where a request to access restricted data is received.
  • the query is answered as to whether the request to access restricted data is allowed. If the request to access restricted data is not authorized, then the flow moves to step 122 where the request is denied. If the request to access restricted data is authorized, the flow moves to step 124 where a query is made as to whether the central base is available for a master image check. If the central base is not available, the flow moves to step 126 where access will depend on the criteria of the policy, where the criteria was previously selected by the network administrator.
  • the selected criteria might require the virtual machine to be disabled from operation until the central base is available for a master image check. However, if the data has a lesser degree of confidentiality, then the selected criteria may allow access to the virtual machine even without the central base checking the master image. If the central base is available for a master image check in step 124 , the flow moves to step 130 where a query is made as to whether the client has an approved (i.e., a current version) virtual machine. This check is performed by searching the master image 38 to determine if the software is current, including, but not limited to, the application, the virtual machine, and the firewall policy module.
  • step 140 the virtual machine is downloaded or updated to contain the correct software and the flow passes back to the query in step 130 . If the client does have an approved virtual machine as queried in step 130 , the flow passes to step 150 to allow access to the virtual machine.
  • the virtual machine wrapped application will be updated at step 140 if it is not current.
  • the user's ability to transmit data may be restricted within the virtual machine depending upon the selected criteria in the policies of the particular firewall policy module associated with the virtual machine.
  • Software for configuring and maintaining the virtual machine wrapped applications and associated firewall policy modules can be provided at various locations (e.g., the central base or IT headquarters). In other embodiments, this software could be received or downloaded from a web server (e.g., in the context of purchasing individual end-user licenses for separate networks, devices, virtual machines, servers, etc.) in order to provide this system for preventing data loss using virtual machine wrapped applications.
  • Software for controlling data transmission from within virtual machine wrapped applications in a network can also be provided at various locations (e.g., within firewall policy modules 34 a, 34 b, 34 c, and 34 d ) once the virtual machine wrapped applications and associated firewall policy modules have been initially configured.
  • this software is resident in a computer sought to be protected from a security attack (or protected from unwanted, or unauthorized manipulations of data).
  • this software is specifically resident in a security layer of a virtual machine and provides an interface between the virtual machine and the underlying operating system and between the virtual machine and other virtual machines within the system, which also may include (or otherwise interface with) the components depicted by FIG. 1 .
  • the data loss prevention software could involve a proprietary element (e.g., as part of a network security authentication solution), which could be provided in (or be proximate to) these identified elements, or be provided in any other device, server, network appliance, console, firewall, switch, information technology (IT) device, etc., or be provided as a complementary solution (e.g., in conjunction with a firewall), or provisioned somewhere in the network.
  • a proprietary element e.g., as part of a network security authentication solution
  • IT information technology
  • the term ‘computer’ is meant to encompass these possible elements (VMMs, hypervisors, Xen devices, virtual machines or other devices, network appliances, routers, switches, gateways, processors, servers, loadbalancers, firewalls, or any other suitable device, machine, component, element, or object) operable to affect or process electronic information in a security environment.
  • this computer may include any suitable hardware, software, components, modules, interfaces, or objects that facilitate the operations thereof. This may be inclusive of appropriate algorithms and communication protocols that allow for the effective protection of data.
  • the data loss prevention system can be consolidated in any suitable manner.
  • any of the illustrated modules and components of FIGS. 1 and 2 may be combined in various possible configurations, all of which are clearly within the broad scope of this Specification.
  • the data loss prevention system outlined herein may be implemented by logic encoded in one or more tangible media (e.g., embedded logic provided in an application specific integrated circuit (ASIC), digital signal processor (DSP) instructions, software (potentially inclusive of object code and source code) to be executed by a processor, or other similar machine, etc.).
  • ASIC application specific integrated circuit
  • DSP digital signal processor
  • a memory element can store data used for the operations described herein. This includes the memory element being able to store software, logic, code, or processor instructions that are executed to carry out the activities described in this Specification.
  • a processor can execute any type of instructions associated with the data to achieve the operations detailed herein in this Specification. In one example, the processor (as shown in FIG.
  • the activities outlined herein may be implemented with fixed logic or programmable logic (e.g., software/computer instructions executed by a processor) and the elements identified herein could be some type of a programmable processor, programmable digital logic (e.g., a field programmable gate array (FPGA), an erasable programmable read only memory (EPROM), an electrically erasable programmable read only memory (EEPROM)) or an ASIC that includes digital logic, software, code, electronic instructions, or any suitable combination thereof.
  • FPGA field programmable gate array
  • EPROM erasable programmable read only memory
  • EEPROM electrically erasable programmable read only memory
  • any of these elements can include memory elements for storing information to be used in achieving the data loss prevention system operations as outlined herein.
  • each of these devices may include a processor that can execute software or an algorithm to perform the data loss prevention activities as discussed in this Specification.
  • These devices may further keep information in any suitable memory element (random access memory (RAM), ROM, EPROM, EEPROM, ASIC, etc.), software, hardware, or in any other suitable component, device, element, or object where appropriate and based on particular needs.
  • any of the memory items discussed herein should be construed as being encompassed within the broad term ‘memory element.’
  • any of the potential processing elements, modules, and machines described in this Specification should be construed as being encompassed within the broad term ‘processor.’
  • Each of the computers, network appliances, virtual elements, etc. can also include suitable interfaces for receiving, transmitting, and/or otherwise communicating data or information in a secure environment.
  • FIG. 4 is a simplified flowchart 200 illustrating a number of example steps associated with another implementation of a data loss prevention system in which the application is a browser.
  • an online institution asks users seeking access to the online institution to use the browser wrapped by a virtual machine.
  • the flow may begin at step 210 , where a user contacts an online institution, such as, for example, an online bank.
  • a query is made as to whether the user is using a virtual machine browser. If a virtual machine browser is being used, the flow passes to step 240 . However, if it is determined that the user is not using a virtual machine browser, the flow passes to step 230 where a virtual machine browser is downloaded to the user, and flow then passes to 240 .
  • step 240 a query is made to determine whether the virtual machine browser is current. If it is current, the flow passes to step 260 . However, if the virtual machine browser is not current, then flow passes to step 250 where the virtual machine browser is updated or downloaded with the most current components. Flow then passes to step 260 . In step 260 , self-integrity checks are performed and if the user does not pass, then the session ends. However, if the user passes the self-integrity checks in step 260 , the flow passes to step 270 and the user is allowed to connect to the online bank through the updated virtual machine wrapped browser.

Abstract

A method in one example implementation includes selecting at least one criterion for controlling data transmission from within a virtual machine. At least one application is included within the virtual machine, which includes a policy module. The selected criterion corresponds to at least one policy associated with the policy module. The method also includes evaluating the selected criterion of the policy to permit an attempt to transmit the data from within the virtual machine. In more specific embodiments, the policy may include a plurality of criteria with a first selected criterion permitting transmission of the data to a first application and a second selected criterion prohibiting transmission of the data to a second application. In another specific embodiment, the method may include updating the policy module through an administration module to modify the selected criterion.

Description

    TECHNICAL FIELD
  • This disclosure relates in general to the field of security and, more particularly, to preventing data loss in a virtual environment.
  • BACKGROUND
  • The field of network security has become increasingly important in today's society. In particular, the ability to effectively protect computers, systems, and the data residing on such computers and systems presents a significant obstacle for component manufacturers, system designers, and network operators. This obstacle is made even more difficult due to continuously evolving security threats. Virtualization is a software technology that allows a complete operating system to run on an isolated virtual environment (typically referred to as a virtual machine), where a platform's physical characteristics and behaviors are reproduced. Virtualization can also provide for execution of a single application within a virtual machine. A virtual machine can represent an isolated, virtual environment (lying on top of a host operating system (OS) or running on bare hardware), equipped with virtual hardware (processor, memory, disks, network interfaces, etc.). Commonly, the virtual machine is managed by a virtualization product. A virtual machine monitor (VMM) is typically the virtualization software layer that manages hardware requests from a guest OS (e.g., simulating answers from real hardware). A hypervisor is typically computer software/hardware platform virtualization software that allows multiple operating systems to run on a host computer concurrently. Applications represent a unique challenge in virtual environments because they can easily be manipulated in order to infect a given computer system. Security professionals and network administrators should account for these issues in order to protect computers and systems from emerging security threats.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • To provide a more complete understanding of the present disclosure and features and advantages thereof, reference is made to the following description, taken in conjunction with the accompanying figures, wherein like reference numerals represent like parts, in which:
  • FIG. 1 is a simplified block diagram of a system for preventing data loss using virtual machine wrapped applications in accordance with one embodiment;
  • FIG. 2 is a simplified block diagram of an example embodiment of a system for preventing data loss using virtual machine wrapped applications;
  • FIG. 3 is a simplified flowchart illustrating a series of example steps associated with the system in accordance with one embodiment; and
  • FIG. 4 is a simplified flowchart illustrating a series of example steps associated with the system in accordance with another embodiment.
  • DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS Overview
  • A method in one example implementation includes selecting at least one criterion for controlling data transmission from within a virtual machine. At least one application is included within the virtual machine and the virtual machine includes a policy module. The selected criterion corresponds to at least one policy associated with the policy module. The method also includes evaluating the selected criterion of the policy to permit an attempt to transmit the data from within the virtual machine. In more specific embodiments, the policy includes a plurality of selected criteria, including a first selected criterion that permits transmission of the data to a first other application and a second selected criterion that prohibits transmission of the data to a second other application. In other more specific embodiments, the selected criterion permits transmission of the data to a client device of one of a plurality of users if the client device is requesting access to the application from within a secured network environment. In another more specific embodiment, the method includes updating the policy module through an administration module to modify the selected criterion.
  • Example Embodiments
  • FIG. 1 is a simplified block diagram of a system 10 for protecting data from accidental and deliberate leakage in a virtual environment using virtual machine wrapped applications. System 10 may include a plurality of virtual machines 12, 14, 24, and 26, and an operating system 30. System 10 may also include a virtual machine monitor 16 that includes a memory element 18, a policy administration module 20, and a processor 22. Memory element 18 may contain a master image 38 with stored entries corresponding to the most current versions of software used within system 10. Each of virtual machines 12, 14, 24, and 26 includes an associated firewall policy module 34 a, 34 b, 34 c, and 34 d, respectively. Not shown in FIG. 1 is additional hardware that may be suitably coupled to operating system 30 and virtual machine monitor 16 (e.g., provided below their logical representations) in the form of memory management units (MMU), symmetric multiprocessing (SMP) elements, physical memory, Ethernet, small computer system interface (SCSI)/integrated drive electronics (IDE) elements, etc.
  • In example embodiments, system 10 wraps each application or suite of applications within a virtual machine in order to protect data associated with the application from accidental and deliberate leakage. For purposes of illustrating the techniques of system 10, it is important to understand the activities occurring within a given network. The following foundational information may be viewed as a basis from which the present disclosure may be properly explained. Such information is offered earnestly for purposes of explanation only and, accordingly, should not be construed in any way to limit the broad scope of the present disclosure and its potential applications.
  • Typical network environments including, among others, local area networks (LANs), wide area networks (WANs), Campus Area Networks (CANS), intranets, and extranets are used by businesses, schools, and other organizations to link multiple personal computers or client devices together, along with servers that allow the client devices to access shared data and applications related to the function of the organization. In addition, these networks are often configured to provide internet connections from client devices in the network to the Internet, enabling access to the World Wide Web and possibly other networks. The data maintained by the organizations typically includes varying types and degrees of confidential data, where data such as payroll records and legal documents often requires a high degree of protection, whereas data such as customer sales may require a lesser degree of protection. Network administrators typically configure their networks to allow particular persons (or groups of persons) access to specific applications, depending upon the type and degree of confidential data associated with the applications. For example, persons working within a human resources department would possibly have access to data and applications associated with the human resources department, but not have access to data and applications associated with the legal department. This type of security is typically applied at the operating system level.
  • Security at the operating system level alone is flawed because it relies on individuals properly controlling the data and applications to avoid accidental and deliberate misuse of confidential data. When multiple applications are running on an operating system, it is possible to share data between them using the operating system clipboard, a file system, and the like (e.g., using copy and paste functions, save, move, send to, import and export type functions, etc.). Thus, an authorized user accessing legal department data could mistakenly (or deliberately) share a confidential legal file or data with another user who is not authorized to access such information. This could be accomplished, for example, by using copy and paste functions between the legal application and another application to store the confidential data in an unprotected memory space to which unauthorized users in the organization have access. In another example, a user could email a message from the legal application containing confidential data that was copied into the message, or included as an attachment, to an unauthorized user. In addition, temporary files may also be at risk for leaking confidential data as they are normally available within the operating system. If an application terminates before all temporary files are deleted, then those remaining temporary files could be accessed by a savvy user, or by malicious third party software. Temporary files could contain confidential data from an application being run by an authorized user, or other information that was downloaded, such as, for example, details of a user's bank account. Such temporary files are at risk of exposure because they are often not protected.
  • Data leakage problems can also occur when authorized users access their organization's network from an unsecured or less secure environment. For example, users often take their laptops home or otherwise outside the corporate environment and remotely logon to their organization's network. Such networks typically have a firewall, which is a device or set of devices configured to control computer traffic sent to/from the network. Firewalls are usually designed to block unauthorized access, while permitting authorized communications based upon a set of rules and other criteria. Even with appropriate firewall protections, data leakage can occur, for example, if an authorized user accesses the network from a less secure (remote) location and begins retrieving confidential data. The confidential data may travel from the firewall-protected network to the user's computer through various communication paths and networking devices such as telephone lines, cable modems, fiber optic cables, satellites, microwaves, routers, gateways, switches, etc. Furthermore, the user's computer may no longer be protected by a firewall when it is remotely accessing the organization's network, thereby exposing the user's computer to various forms of malware, which could put the confidential data at risk.
  • A system for preventing data loss as outlined by FIG. 1 can resolve many of these issues. In accordance with one example implementation, an application is provided to encapsulate or wrap each application or suite of applications used in a network within a virtual machine. Access to and from each virtual machine can be controlled by an associated firewall (i.e., security) policy, or any other suitable security safeguard. Confidential data, as potentially defined by the associated firewall policy, may be contained within the virtual machine wrapped application such that copy and paste buffers and temporary files would not be accessible through the main operating system underlying the virtual machine. In addition, the virtual machine wrap provides an additional layer of security on top of the operating system, which could prevent direct access to the memory where the confidential data is stored. The associated firewall policy may be evaluated to determine whether the virtual machine wrapped application is allowed to share data (e.g., using copy and paste buffers, save, move, send to, and import/export type functions, email, etc.). For example, a first virtual machine wrapped application may be allowed to share confidential data with a second virtual machine wrapped application, but not with a third virtual machine wrapped application and not with a fourth application, which may not have a virtual machine wrap. Thus, system 10 can provide focused, specific security around each application or suite of applications to control access by users and other virtual machines. Such a system could allow for any application running on the main operating system or running on an operating system of a specific device, such as an end user's client device, to be wrapped within a virtual machine. Also, system 10 could automatically generate and maintain, or a network administrator could configure and maintain, master image 38 representing particular versions (e.g., the most current version) of software, so that each virtual machine wrapped application could be updated as needed.
  • Generally, virtual machines can be implemented to run complete operating systems and their associated applications (system virtual machines), or to run a single application or suite of applications (process virtual machines). Virtual machines can be implemented as Type 1, running below the host operating system directly on the hardware or as Type 2, running on top of a host operating system. Both system and process virtual machines can have some type of virtualization software that manages virtual machines and any guest operating systems. As used herein in this Specification, the term ‘virtual machine monitor’ is meant to include hypervisors, or other software or objects that can operate to manage one or more virtual machines and allow desired policy administration as detailed below.
  • Note that in computing, an executable (file) can cause a computer to perform indicated tasks according to encoded instructions, as opposed to a file that only contains data. Files that contain instructions for an interpreter or virtual machine may be considered ‘executables’ or ‘binaries’ in contrast to program source code. The more generic term ‘object’ (as used herein in this Specification) is meant to include any such executables, binaries, kernel modules, etc., which are sought to be invoked, initiated, or otherwise executed.
  • Turning to the infrastructure of FIG. 1, virtual machine monitor 16 can be implemented to manage multiple applications that are each wrapped separately by a virtual machine 12, 14, 24, and 26. In one example implementation, virtual machine monitor 16 can be thought of as virtualization software running on top of main operating system 30, with the plurality of virtual machines 12, 14, 24, and 26 also running on top of existing operating system 30. Based on the particular environment or according to specific user needs, however, virtual machine monitor 16 could be implemented as a hypervisor to run on bare hardware with each virtual machine 12, 14, 24, and 26 running its own operating system. Virtual machine monitor 16 can be part of a server, a firewall, or more generically, a computer. In addition, it is within the broad teachings of this disclosure that virtual machine monitor 16, including policy administration module 20 and master image 38, may be located in a central base of the network (e.g., IT headquarters), for direct access by a network administrator to configure and maintain the system. In one example embodiment shown in FIG. 1, there is a human resources application 28 wrapped in virtual machine 12, a customer sales application 32 wrapped in virtual machine 14, an application suite 40 having multiple applications wrapped in virtual machine 24, and an Adobe® application 44 wrapped in virtual machine 26. Application suite 40 may include, for example, bundled software applications such as Microsoft® Word, Excel®, and PowerPoint®.
  • In this example embodiment, a user with appropriate authority such as a network administrator is provided with an interface to manage the complete setup of virtual machines 12, 14, 24, and 26 and associated firewall policy modules 34 a, 34 b, 34 c, and 34 d. This management can include configurations of the virtual machine monitor and the virtual machines, creation, deletion, modification, shutdown, updating, and startup of the virtual machines, etc. The interface may allow the network administrator to initially configure and maintain master image 38 comprising entries that correspond to particular versions of the applications within the network. Alternatively, system 10 may automatically generate and update master image 38. Through policy administration module 20, the network administrator can select desired specific criteria for the policies to be applied to each virtual machine 12, 14, 24, and 26, through respective firewall policy modules 34 a, 34 b, 34 c, and 34 d. The policies can be tailored to meet particular desired security for data depending upon, for example, the confidentiality of the data accessible through the virtual machine wrapped application, the particular users seeking access to the data, particular job titles, particular department types, particular timestamps of information, particular locations in which a request for data access originates, particular days and times of days a request for data access originates, specifically configured permissions, etc. Once virtual machines 12, 14, 24, and 26 are configured with associated firewall policy modules 34 a, 34 b, 34 c, and 34 d, the virtual machines can be deployed to targeted computers, such as an end user's client device, a server, or any other device configured to host the virtual machine wrapped applications, which can be made accessible to authorized users. Policy administration module 20 is also configured to allow the network administrator to maintain virtual machines 12, 14, 24, and 26 and to update or change the security policies on firewall policy modules 34 a, 34 b, 34 c, and 34 d, as needed.
  • A first level of security associated with system 10 can relate to authentication. Authentication determines whether a user is authorized to access the network and within the network, which particular applications or data the user is allowed to access. Although authentication is typically applied at the operating system level, at least a portion of the authentication process may also be applied through firewall policy modules 34 a, 34 b, 34 c, and 34 d. Once an authorized user is granted access to an application within virtual machine 12, 14, 24, or 26, the associated firewall policy module 34 a, 34 b, 34 c, or 34 d may restrict what the user can do within the application. In one example embodiment, a policy may be applied to firewall policy module 34 a for human resources virtual machine 12, preventing an authorized user from transmitting (e.g., copying, pasting, moving, sending, exporting, emailing, etc.) confidential data, such as employee salary data, from human resources virtual machine 12 to another application or user, such as, for example, application suite virtual machine 24. Alternatively, if the user has a higher approved level of authorization, then the policy may be tailored to allow data transmission with data tracking. In this situation, when the user is allowed to transmit confidential data from human resources application virtual machine 12 to another application or user, the transmitted confidential data may be recorded in a data log stored in a memory element. As used herein in this Specification, the terms ‘transmit’ and ‘transmission’ are meant to encompass any operations associated with copying, cutting, pasting, saving, moving, sending, importing, exporting, emailing, or otherwise manipulating data.
  • Another form of policy that may be used within firewall policy modules 34 a, 34 b, 34 c, and 34 d, includes policies related to the environment from which a user requests access to particular applications. For example, if a user requests access to human resources virtual machine 12 from a client device (e.g., a laptop, etc.) when the user is physically located within the network's secure environment, then firewall policy module 34 a can perform a check to determine if the user is within a secure environment and allow access accordingly. However, if the user is out of the office, such as on a commuter train, and is therefore outside of the network's secure environment, then because of the confidential nature of the information within human resources virtual machine 12, the policies of firewall policy module 34 a may be configured to prohibit the user from accessing the human resources application within virtual machine 12. Thus, the protocol can prevent the user from potentially leaking data when the user is in a less secure environment. The scope of this disclosure is intended to encompass any type or combination of firewall policies desired by a particular organization for controlling data leakage from one or more of its applications within its network. Such policies include, but are not limited to, policies restricting data movement between particular applications, policies restricting application access depending upon the user's environment, policies restricting application access depending upon the time of day or particular days access is requested, and policies restricting data movement from particular applications to particular individuals or groups of individuals.
  • Turning to FIG. 2, FIG. 2 is a simplified block diagram illustrating one implementation of a data loss prevention system 50 using virtual machine wrapped applications in accordance with the present disclosure. In this example implementation, a network of an organization, such as a corporation or other business entity, is provided with a machine 60 being logically connected to a central human resources system 52, a central intellectual property store 54, and a mail server 56, which can be part of the organization's network infrastructure. It should be noted that the term “machine” is interchangeable with the term “computer.” Machine 60 includes applications in a common operating environment 72 (e.g., an operating system). These applications include a mail client 64 connected to mail server 56 for sending and receiving email communications that are not associated or linked to data or applications secured within the virtual environment. Machine 60 also includes a virtual machine 66 for accessing central intellectual property store 54. Virtual machine 66 includes a firewall policy module 68 and a mail client 70 for sending and receiving emails from virtual machine 66. A secure mail proxy 58 connects mail client 70 in virtual machine 66 to mail server 56 on the network. Machine 60 may also be configured with a USB drive 62.
  • In the implementation shown in FIG. 2, machine 60 may be operated by a user who is the head of research of the organization. System 50 may require authentication that the user is authorized to use machine 60 to access various resources within the network. Such an authentication could be performed by the operating system, where a unique user ID and password are validated. Once the user is properly authenticated, he/she may be allowed to access certain resources within the organization. For example, as the head of research, the user may be allowed to access central intellectual property store 54, but not central human resources system 52, as exemplified by the dashed lines connecting machine 60 to central human resources system 52 in FIG. 2. In an alternate embodiment, the user may be allowed to access central human resources system 52 for particular confidential data only, such as data corresponding to employees in the Research Department who report to the user. Allowing or blocking access to a particular resource or application may be accomplished through the operating system using the authentication mechanism described above. However, it is within the broad teachings of this disclosure to configure the system to perform authentication for access to a particular virtual machine wrapped application within its associated firewall policy module. Specifically a policy may be applied to a firewall policy module having selected criteria that is evaluated to determine whether the user is allowed to access the specific virtual machine wrapped application. If authorized, the user may access central intellectual property store 54 through virtual machine 66. Firewall policy module 68 associated with virtual machine 66 may be configured with a policy having selected criteria to control data transmissions from central intellectual property store 54. For example, the selected criteria may allow the user to access confidential data within central intellectual property store 54, but not allow the data to be copied and pasted, moved, exported, emailed or otherwise transmitted to another application. In the alternate embodiment described above, in which the user is given limited access to central human resources system 52, the selected criteria in the policy of associated firewall policy module 68 could only allow confidential data related to particular employees to be accessed by the user. The selected criteria may or may not allow the user to transmit the accessible data to other applications. As previously noted herein, it is within the broad teachings of this disclosure that the selected criteria can be configured to allow data transmission to certain applications and to prohibit data transmission to other applications.
  • In the particular example implementation shown in FIG. 2, the user is allowed access to email from within virtual machine 66. In this situation, any email being sent from virtual machine 66 is transmitted to secure mail proxy 58, before being sent to mail server 56. In secure mail proxy 58, the email may be screened for any confidential data protected by that particular application. Thus, the selected criteria of firewall policy module 68 would be applied to the content, attachments, and routing of the email. It is also within the broad teaching of this disclosure that a log be kept for recording entries corresponding to data that is allowed to be sent from secure mail proxy 58, thus allowing the organization to track particular data that is shared between applications and users in the organization. Finally, USB drive 62 is accessible to common operating environment 72 of machine 60, where firewall policy module 68 may include a policy with selected criteria that prevents virtual machine 66 from communicating with the USB port. This prevents users from copying protected data to a flash drive on USB drive 62, and it also protects the virtual machine wrapped application from communicating with any software application introduced to machine 60 through USB drive 62. This virtualization of individual applications with an associated firewall policy module is particularly useful for protecting data from infected software introduced to machine 60 through USB drive 62. The user of virtual machine 66 could, therefore, be limited to specific tasks within the virtual machine wrapped application in order to reduce the ability of obfuscating, or compromising confidential data.
  • Turning to FIG. 3, FIG. 3 is a simplified flowchart 100 illustrating a number of example steps associated with one implementation of a data loss prevention system. The flow may begin at step 110, where a request to access restricted data is received. At step 120, the query is answered as to whether the request to access restricted data is allowed. If the request to access restricted data is not authorized, then the flow moves to step 122 where the request is denied. If the request to access restricted data is authorized, the flow moves to step 124 where a query is made as to whether the central base is available for a master image check. If the central base is not available, the flow moves to step 126 where access will depend on the criteria of the policy, where the criteria was previously selected by the network administrator. For example, if the data is highly confidential, then the selected criteria might require the virtual machine to be disabled from operation until the central base is available for a master image check. However, if the data has a lesser degree of confidentiality, then the selected criteria may allow access to the virtual machine even without the central base checking the master image. If the central base is available for a master image check in step 124, the flow moves to step 130 where a query is made as to whether the client has an approved (i.e., a current version) virtual machine. This check is performed by searching the master image 38 to determine if the software is current, including, but not limited to, the application, the virtual machine, and the firewall policy module. If the client does not have an approved virtual machine, the flow passes to step 140 where the virtual machine is downloaded or updated to contain the correct software and the flow passes back to the query in step 130. If the client does have an approved virtual machine as queried in step 130, the flow passes to step 150 to allow access to the virtual machine. In the situation where the central base is not available for a master image check at step 124 but the selected criteria nevertheless allows access to the restricted data, then the next time the central base is available for a master image check during a request to access restricted data, the virtual machine wrapped application will be updated at step 140 if it is not current. In accordance with the teachings in this disclosure, as detailed above, the user's ability to transmit data may be restricted within the virtual machine depending upon the selected criteria in the policies of the particular firewall policy module associated with the virtual machine.
  • Software for configuring and maintaining the virtual machine wrapped applications and associated firewall policy modules can be provided at various locations (e.g., the central base or IT headquarters). In other embodiments, this software could be received or downloaded from a web server (e.g., in the context of purchasing individual end-user licenses for separate networks, devices, virtual machines, servers, etc.) in order to provide this system for preventing data loss using virtual machine wrapped applications. Software for controlling data transmission from within virtual machine wrapped applications in a network can also be provided at various locations (e.g., within firewall policy modules 34 a, 34 b, 34 c, and 34 d) once the virtual machine wrapped applications and associated firewall policy modules have been initially configured. In one example implementation, this software is resident in a computer sought to be protected from a security attack (or protected from unwanted, or unauthorized manipulations of data). In a more detailed configuration, this software is specifically resident in a security layer of a virtual machine and provides an interface between the virtual machine and the underlying operating system and between the virtual machine and other virtual machines within the system, which also may include (or otherwise interface with) the components depicted by FIG. 1.
  • In other examples, the data loss prevention software could involve a proprietary element (e.g., as part of a network security authentication solution), which could be provided in (or be proximate to) these identified elements, or be provided in any other device, server, network appliance, console, firewall, switch, information technology (IT) device, etc., or be provided as a complementary solution (e.g., in conjunction with a firewall), or provisioned somewhere in the network. As used herein in this Specification, the term ‘computer’ is meant to encompass these possible elements (VMMs, hypervisors, Xen devices, virtual machines or other devices, network appliances, routers, switches, gateways, processors, servers, loadbalancers, firewalls, or any other suitable device, machine, component, element, or object) operable to affect or process electronic information in a security environment. Moreover, this computer may include any suitable hardware, software, components, modules, interfaces, or objects that facilitate the operations thereof. This may be inclusive of appropriate algorithms and communication protocols that allow for the effective protection of data. In addition, the data loss prevention system can be consolidated in any suitable manner. Along similar design alternatives, any of the illustrated modules and components of FIGS. 1 and 2 may be combined in various possible configurations, all of which are clearly within the broad scope of this Specification.
  • In certain example implementations, the data loss prevention system outlined herein may be implemented by logic encoded in one or more tangible media (e.g., embedded logic provided in an application specific integrated circuit (ASIC), digital signal processor (DSP) instructions, software (potentially inclusive of object code and source code) to be executed by a processor, or other similar machine, etc.). In some of these instances, a memory element (as shown in FIG. 1) can store data used for the operations described herein. This includes the memory element being able to store software, logic, code, or processor instructions that are executed to carry out the activities described in this Specification. A processor can execute any type of instructions associated with the data to achieve the operations detailed herein in this Specification. In one example, the processor (as shown in FIG. 1) could transform an element or an article (e.g., data) from one state or thing to another state or thing. In another example, the activities outlined herein may be implemented with fixed logic or programmable logic (e.g., software/computer instructions executed by a processor) and the elements identified herein could be some type of a programmable processor, programmable digital logic (e.g., a field programmable gate array (FPGA), an erasable programmable read only memory (EPROM), an electrically erasable programmable read only memory (EEPROM)) or an ASIC that includes digital logic, software, code, electronic instructions, or any suitable combination thereof.
  • Any of these elements (e.g., a computer, a server, a network appliance, a firewall, a virtual machine monitor, any other type of virtual element, etc.) can include memory elements for storing information to be used in achieving the data loss prevention system operations as outlined herein. Additionally, each of these devices may include a processor that can execute software or an algorithm to perform the data loss prevention activities as discussed in this Specification. These devices may further keep information in any suitable memory element (random access memory (RAM), ROM, EPROM, EEPROM, ASIC, etc.), software, hardware, or in any other suitable component, device, element, or object where appropriate and based on particular needs. Any of the memory items discussed herein (e.g., data log, master image, etc.) should be construed as being encompassed within the broad term ‘memory element.’ Similarly, any of the potential processing elements, modules, and machines described in this Specification should be construed as being encompassed within the broad term ‘processor.’ Each of the computers, network appliances, virtual elements, etc. can also include suitable interfaces for receiving, transmitting, and/or otherwise communicating data or information in a secure environment.
  • FIG. 4 is a simplified flowchart 200 illustrating a number of example steps associated with another implementation of a data loss prevention system in which the application is a browser. In this particular example, an online institution asks users seeking access to the online institution to use the browser wrapped by a virtual machine. The flow may begin at step 210, where a user contacts an online institution, such as, for example, an online bank. In step 220, a query is made as to whether the user is using a virtual machine browser. If a virtual machine browser is being used, the flow passes to step 240. However, if it is determined that the user is not using a virtual machine browser, the flow passes to step 230 where a virtual machine browser is downloaded to the user, and flow then passes to 240. In step 240 a query is made to determine whether the virtual machine browser is current. If it is current, the flow passes to step 260. However, if the virtual machine browser is not current, then flow passes to step 250 where the virtual machine browser is updated or downloaded with the most current components. Flow then passes to step 260. In step 260, self-integrity checks are performed and if the user does not pass, then the session ends. However, if the user passes the self-integrity checks in step 260, the flow passes to step 270 and the user is allowed to connect to the online bank through the updated virtual machine wrapped browser.
  • Note that with the examples provided herein, interaction may be described in terms of two, three, four, or more network elements. However, this has been done for purposes of clarity and example only. In certain cases, it may be easier to describe one or more of the functionalities of a given set of flows by only referencing a limited number of components or network elements. It should be appreciated that the systems of FIGS. 1 and 2 (and their teachings) are readily scalable. System 10 can accommodate a large number of components, as well as more complicated or sophisticated arrangements and configurations. Accordingly, the examples provided should not limit the scope or inhibit the broad teachings of system 10 as potentially applied to a myriad of other architectures.
  • It is also important to note that the steps described with reference to the preceding FIGURES illustrate only some of the possible scenarios that may be executed by, or within, system 10. Some of these steps may be deleted or removed where appropriate, or these steps may be modified or changed considerably without departing from the scope of the discussed concepts. In addition, the timing of these operations may be altered considerably and still achieve the results taught in this disclosure. The preceding operational flows have been offered for purposes of example and discussion. Substantial flexibility is provided by system 10 in that any suitable arrangements, chronologies, configurations, and timing mechanisms may be provided without departing from the teachings of the discussed concepts.

Claims (21)

1-20. (canceled)
21. A method implemented by a system including an operating system and a virtual machine monitor, the method comprising:
downloading a browser wrapped in a virtual machine, based on a determination that the browser is not being used in an access to an institution;
updating the browser if the browser is determined to not be current; and
allowing a connection to the institution through the browser, the system including the browser, the operating system underlying the virtual machine.
22. The method of claim 21, further comprising:
determining whether the browser is allowed to share data, based on an evaluation of a firewall policy.
23. The method of claim 22, wherein the browser shares the data using a copy buffer or a paste buffer, and the operating system cannot access the copy buffer or the paste buffer.
24. The method of claim 21, further comprising:
evaluating a criterion of a policy to determine whether to permit access to the virtual machine, based on a determination that a master image is not available, the master image corresponding to a version of the browser or a version of the virtual machine.
25. The method of claim 21, further comprising:
comparing the browser to a master image, the master image corresponding to a version of the browser or a version of the virtual machine.
26. The method of claim 21, further comprising:
performing a self-integrity check, wherein the allowing is performed if the self-integrity check passes.
27. A system, comprising:
a memory element that stores instructions; and
a processor configured to execute a browser wrapped in a virtual machine, an operating system underlying the virtual machine, wherein the browser is downloaded based on a determination that the browser is not being used in an access to an institution, the browser is updated if the browser is determined to not be current, and a connection to the institution is allowed through the browser.
28. The system of claim 27, wherein the browser shares data, based on an evaluation of a firewall policy.
29. The system of claim 28, wherein the browser shares the data using a copy buffer or a paste buffer, and the operating system cannot access the copy buffer or the paste buffer.
30. The system of claim 27, wherein a criterion of a policy is evaluated to determine whether to permit access to the virtual machine, based on a determination that a master image is not available, the master image corresponding to a version of the browser or a version of the virtual machine.
31. The system of claim 27, wherein the browser is compared to a master image, the master image corresponding to a version of the browser or a version of the virtual machine.
32. The system of claim 27, wherein a self-integrity check is performed, and the connection is allowed if the self-integrity check passes.
33. The system of claim 27, wherein a policy prohibits accessing the virtual machine if a client device requests access to the virtual machine from an unsecured network environment.
34. A non-transitory computer readable storage medium, comprising:
instructions to download a browser wrapped in a virtual machine, based on a determination that the browser is not being used in an access to an institution, an operating system underlying the virtual machine;
instructions to update the browser if the browser is determined to not be current; and
instructions to allow a connection to the institution through the browser.
35. The medium of claim 34, further comprising:
instructions to determine whether the browser is allowed to share data, based on an evaluation of a firewall policy.
36. The medium of claim 35, wherein the browser shares the data using a copy buffer or a paste buffer, and the operating system cannot access the copy buffer or the paste buffer.
37. The medium of claim 34, further comprising:
instructions to evaluate a criterion of a policy to determine whether to permit access to the virtual machine, based on a determination that a master image is not available, the master image corresponding to a version of the browser or a version of the virtual machine.
38. The medium of claim 34, further comprising:
instructions to compare the browser to a master image, the master image corresponding to a version of the browser or a version of the virtual machine.
39. The medium of claim 34, further comprising:
instructions to perform a self-integrity check, wherein the connection is allowed if the self-integrity check passes.
40. The medium of claim 34, wherein a policy prohibits accessing the virtual machine if a client device requests access to the virtual machine from an unsecured network environment.
US15/412,337 2009-11-10 2017-01-23 System and method for preventing data loss using virtual machine wrapped applications Abandoned US20170134436A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/412,337 US20170134436A1 (en) 2009-11-10 2017-01-23 System and method for preventing data loss using virtual machine wrapped applications

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/615,521 US9552497B2 (en) 2009-11-10 2009-11-10 System and method for preventing data loss using virtual machine wrapped applications
US15/412,337 US20170134436A1 (en) 2009-11-10 2017-01-23 System and method for preventing data loss using virtual machine wrapped applications

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US12/615,521 Continuation US9552497B2 (en) 2009-11-10 2009-11-10 System and method for preventing data loss using virtual machine wrapped applications

Publications (1)

Publication Number Publication Date
US20170134436A1 true US20170134436A1 (en) 2017-05-11

Family

ID=43530372

Family Applications (2)

Application Number Title Priority Date Filing Date
US12/615,521 Active 2032-01-17 US9552497B2 (en) 2009-11-10 2009-11-10 System and method for preventing data loss using virtual machine wrapped applications
US15/412,337 Abandoned US20170134436A1 (en) 2009-11-10 2017-01-23 System and method for preventing data loss using virtual machine wrapped applications

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US12/615,521 Active 2032-01-17 US9552497B2 (en) 2009-11-10 2009-11-10 System and method for preventing data loss using virtual machine wrapped applications

Country Status (4)

Country Link
US (2) US9552497B2 (en)
EP (1) EP2499598B1 (en)
CN (1) CN102741853B (en)
WO (1) WO2011059877A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11122085B2 (en) * 2014-02-20 2021-09-14 Nicira, Inc. Method and apparatus for distributing firewall rules
US11310202B2 (en) 2019-03-13 2022-04-19 Vmware, Inc. Sharing of firewall rules among multiple workloads in a hypervisor
US11425095B2 (en) 2016-05-01 2022-08-23 Nicira, Inc. Fast ordering of firewall sections and rules

Families Citing this family (202)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7840968B1 (en) 2003-12-17 2010-11-23 Mcafee, Inc. Method and system for containment of usage of language interfaces
US7856661B1 (en) 2005-07-14 2010-12-21 Mcafee, Inc. Classification of software on networked systems
US7757269B1 (en) 2006-02-02 2010-07-13 Mcafee, Inc. Enforcing alignment of approved changes and deployed changes in the software change life-cycle
US7895573B1 (en) 2006-03-27 2011-02-22 Mcafee, Inc. Execution environment file inventory
US8555404B1 (en) 2006-05-18 2013-10-08 Mcafee, Inc. Connectivity-based authorization
US9424154B2 (en) 2007-01-10 2016-08-23 Mcafee, Inc. Method of and system for computer system state checks
US8332929B1 (en) 2007-01-10 2012-12-11 Mcafee, Inc. Method and apparatus for process enforced configuration management
US9569330B2 (en) 2007-06-22 2017-02-14 Red Hat, Inc. Performing dependency analysis on nodes of a business application service group
US9727440B2 (en) * 2007-06-22 2017-08-08 Red Hat, Inc. Automatic simulation of virtual machine performance
US9678803B2 (en) 2007-06-22 2017-06-13 Red Hat, Inc. Migration of network entities to a cloud infrastructure
US9354960B2 (en) 2010-12-27 2016-05-31 Red Hat, Inc. Assigning virtual machines to business application service groups based on ranking of the virtual machines
US9495152B2 (en) 2007-06-22 2016-11-15 Red Hat, Inc. Automatic baselining of business application service groups comprised of virtual machines
US7991910B2 (en) 2008-11-17 2011-08-02 Amazon Technologies, Inc. Updating routing information based on client location
US8028090B2 (en) 2008-11-17 2011-09-27 Amazon Technologies, Inc. Request routing utilizing client location information
US8515075B1 (en) 2008-01-31 2013-08-20 Mcafee, Inc. Method of and system for malicious software detection using critical address space protection
US8156243B2 (en) 2008-03-31 2012-04-10 Amazon Technologies, Inc. Request routing
US8447831B1 (en) 2008-03-31 2013-05-21 Amazon Technologies, Inc. Incentive driven content delivery
US8321568B2 (en) 2008-03-31 2012-11-27 Amazon Technologies, Inc. Content management
US7970820B1 (en) 2008-03-31 2011-06-28 Amazon Technologies, Inc. Locality based content distribution
US7962597B2 (en) 2008-03-31 2011-06-14 Amazon Technologies, Inc. Request routing based on class
US8601090B1 (en) 2008-03-31 2013-12-03 Amazon Technologies, Inc. Network resource identification
US8606996B2 (en) 2008-03-31 2013-12-10 Amazon Technologies, Inc. Cache optimization
US8533293B1 (en) 2008-03-31 2013-09-10 Amazon Technologies, Inc. Client side cache management
US9912740B2 (en) 2008-06-30 2018-03-06 Amazon Technologies, Inc. Latency measurement in resource requests
US9407681B1 (en) 2010-09-28 2016-08-02 Amazon Technologies, Inc. Latency measurement in resource requests
US7925782B2 (en) 2008-06-30 2011-04-12 Amazon Technologies, Inc. Request routing using network computing components
US8073940B1 (en) 2008-11-17 2011-12-06 Amazon Technologies, Inc. Managing content delivery network service providers
US8521880B1 (en) 2008-11-17 2013-08-27 Amazon Technologies, Inc. Managing content delivery network service providers
US8122098B1 (en) 2008-11-17 2012-02-21 Amazon Technologies, Inc. Managing content delivery network service providers by a content broker
US8732309B1 (en) 2008-11-17 2014-05-20 Amazon Technologies, Inc. Request routing utilizing cost information
US8060616B1 (en) 2008-11-17 2011-11-15 Amazon Technologies, Inc. Managing CDN registration by a storage provider
US8065417B1 (en) 2008-11-17 2011-11-22 Amazon Technologies, Inc. Service provider registration by a content broker
US8521851B1 (en) 2009-03-27 2013-08-27 Amazon Technologies, Inc. DNS query processing using resource identifiers specifying an application broker
US8412823B1 (en) 2009-03-27 2013-04-02 Amazon Technologies, Inc. Managing tracking information entries in resource cache components
US8688837B1 (en) 2009-03-27 2014-04-01 Amazon Technologies, Inc. Dynamically translating resource identifiers for request routing using popularity information
US8756341B1 (en) 2009-03-27 2014-06-17 Amazon Technologies, Inc. Request routing utilizing popularity information
US8782236B1 (en) 2009-06-16 2014-07-15 Amazon Technologies, Inc. Managing resources using resource expiration data
US8381284B2 (en) 2009-08-21 2013-02-19 Mcafee, Inc. System and method for enforcing security policies in a virtual environment
US8397073B1 (en) 2009-09-04 2013-03-12 Amazon Technologies, Inc. Managing secure content in a content delivery network
US8433771B1 (en) 2009-10-02 2013-04-30 Amazon Technologies, Inc. Distribution network with forward resource propagation
US9552497B2 (en) 2009-11-10 2017-01-24 Mcafee, Inc. System and method for preventing data loss using virtual machine wrapped applications
US9129052B2 (en) * 2009-12-03 2015-09-08 International Business Machines Corporation Metering resource usage in a cloud computing environment
US9684785B2 (en) * 2009-12-17 2017-06-20 Red Hat, Inc. Providing multiple isolated execution environments for securely accessing untrusted content
US9495338B1 (en) 2010-01-28 2016-11-15 Amazon Technologies, Inc. Content distribution network
US8756597B2 (en) * 2010-02-05 2014-06-17 Novell, Inc. Extending functionality of legacy services in computing system environment
US9355282B2 (en) * 2010-03-24 2016-05-31 Red Hat, Inc. Using multiple display servers to protect data
US9558051B1 (en) * 2010-05-28 2017-01-31 Bormium, Inc. Inter-process communication router within a virtualized environment
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
US8572677B2 (en) * 2010-07-14 2013-10-29 William G. Bartholomay Devices, systems, and methods for enabling reconfiguration of services supported by a network of devices
US9232046B2 (en) * 2010-07-21 2016-01-05 Tksn Holdings, Llc System and method for controlling mobile services using sensor information
US9210528B2 (en) 2010-07-21 2015-12-08 Tksn Holdings, Llc System and method for control and management of resources for consumers of information
US20120021770A1 (en) 2010-07-21 2012-01-26 Naqvi Shamim A System and method for control and management of resources for consumers of information
US8938800B2 (en) 2010-07-28 2015-01-20 Mcafee, Inc. System and method for network level protection against malicious software
US8925101B2 (en) 2010-07-28 2014-12-30 Mcafee, Inc. System and method for local protection against malicious software
US8549003B1 (en) 2010-09-12 2013-10-01 Mcafee, Inc. System and method for clustering host inventories
US10958501B1 (en) 2010-09-28 2021-03-23 Amazon Technologies, Inc. Request routing information based on client IP groupings
US8930513B1 (en) 2010-09-28 2015-01-06 Amazon Technologies, Inc. Latency measurement in resource requests
US8577992B1 (en) 2010-09-28 2013-11-05 Amazon Technologies, Inc. Request routing management based on network components
US8924528B1 (en) 2010-09-28 2014-12-30 Amazon Technologies, Inc. Latency measurement in resource requests
US8468247B1 (en) 2010-09-28 2013-06-18 Amazon Technologies, Inc. Point of presence management in request routing
US8565108B1 (en) 2010-09-28 2013-10-22 Amazon Technologies, Inc. Network data transmission analysis
US9712484B1 (en) 2010-09-28 2017-07-18 Amazon Technologies, Inc. Managing request routing information utilizing client identifiers
US8416709B1 (en) * 2010-09-28 2013-04-09 Amazon Technologies, Inc. Network data transmission analysis management
US8938526B1 (en) 2010-09-28 2015-01-20 Amazon Technologies, Inc. Request routing management based on network components
US8819283B2 (en) 2010-09-28 2014-08-26 Amazon Technologies, Inc. Request routing in a networked environment
US9003035B1 (en) 2010-09-28 2015-04-07 Amazon Technologies, Inc. Point of presence management in request routing
US10097398B1 (en) 2010-09-28 2018-10-09 Amazon Technologies, Inc. Point of presence management in request routing
US8555383B1 (en) 2010-09-28 2013-10-08 Amazon Technologies, Inc. Network data transmission auditing
US8452874B2 (en) 2010-11-22 2013-05-28 Amazon Technologies, Inc. Request routing processing
US9391949B1 (en) 2010-12-03 2016-07-12 Amazon Technologies, Inc. Request routing processing
US8849857B2 (en) * 2010-12-17 2014-09-30 International Business Machines Corporation Techniques for performing data loss prevention
US8931037B2 (en) * 2010-12-27 2015-01-06 Microsoft Corporation Policy-based access to virtualized applications
US9075993B2 (en) 2011-01-24 2015-07-07 Mcafee, Inc. System and method for selectively grouping and managing program files
US9386039B2 (en) * 2011-01-25 2016-07-05 Nec Corporation Security policy enforcement system and security policy enforcement method
US9027151B2 (en) 2011-02-17 2015-05-05 Red Hat, Inc. Inhibiting denial-of-service attacks using group controls
US9112830B2 (en) 2011-02-23 2015-08-18 Mcafee, Inc. System and method for interlocking a host and a gateway
US10467042B1 (en) 2011-04-27 2019-11-05 Amazon Technologies, Inc. Optimized deployment based upon customer locality
US8516241B2 (en) * 2011-07-12 2013-08-20 Cisco Technology, Inc. Zone-based firewall policy model for a virtualized data center
US9749291B2 (en) 2011-07-15 2017-08-29 International Business Machines Corporation Securing applications on public facing systems
US9594881B2 (en) 2011-09-09 2017-03-14 Mcafee, Inc. System and method for passive threat detection using virtual memory inspection
US8694738B2 (en) 2011-10-11 2014-04-08 Mcafee, Inc. System and method for critical address space protection in a hypervisor environment
US9069586B2 (en) 2011-10-13 2015-06-30 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US8973144B2 (en) 2011-10-13 2015-03-03 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US8800024B2 (en) 2011-10-17 2014-08-05 Mcafee, Inc. System and method for host-initiated firewall discovery in a network environment
US8713668B2 (en) 2011-10-17 2014-04-29 Mcafee, Inc. System and method for redirected firewall discovery in a network environment
US8904009B1 (en) 2012-02-10 2014-12-02 Amazon Technologies, Inc. Dynamic content delivery
US10021179B1 (en) 2012-02-21 2018-07-10 Amazon Technologies, Inc. Local resource delivery network
US9083743B1 (en) 2012-03-21 2015-07-14 Amazon Technologies, Inc. Managing request routing information utilizing performance information
US10623408B1 (en) 2012-04-02 2020-04-14 Amazon Technologies, Inc. Context sensitive object management
US8739272B1 (en) 2012-04-02 2014-05-27 Mcafee, Inc. System and method for interlocking a host and a gateway
US9286491B2 (en) 2012-06-07 2016-03-15 Amazon Technologies, Inc. Virtual service provider zones
US10075471B2 (en) 2012-06-07 2018-09-11 Amazon Technologies, Inc. Data loss prevention techniques
US10084818B1 (en) 2012-06-07 2018-09-25 Amazon Technologies, Inc. Flexibly configurable data modification services
US9154551B1 (en) 2012-06-11 2015-10-06 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
US9230096B2 (en) * 2012-07-02 2016-01-05 Symantec Corporation System and method for data loss prevention in a virtualized environment
US8972971B2 (en) * 2012-08-09 2015-03-03 International Business Machines Corporation Image instance mapping
US9525659B1 (en) 2012-09-04 2016-12-20 Amazon Technologies, Inc. Request routing utilizing point of presence load information
US9323577B2 (en) 2012-09-20 2016-04-26 Amazon Technologies, Inc. Automated profiling of resource usage
US9135048B2 (en) 2012-09-20 2015-09-15 Amazon Technologies, Inc. Automated profiling of resource usage
US10205698B1 (en) 2012-12-19 2019-02-12 Amazon Technologies, Inc. Source-dependent address resolution
US8973146B2 (en) 2012-12-27 2015-03-03 Mcafee, Inc. Herd based scan avoidance system in a network environment
US9165150B2 (en) * 2013-02-19 2015-10-20 Symantec Corporation Application and device control in a virtualized environment
US9294391B1 (en) 2013-06-04 2016-03-22 Amazon Technologies, Inc. Managing network computing components utilizing request routing
US9208310B2 (en) * 2013-06-26 2015-12-08 Cognizant Technology Solutions India Pvt. Ltd. System and method for securely managing enterprise related applications and data on portable communication devices
WO2015030746A1 (en) 2013-08-28 2015-03-05 Empire Technology Development, Llc Virtual machine exit analyzer
US8922590B1 (en) 2013-10-01 2014-12-30 Myth Innovations, Inc. Augmented reality interface and method of use
US10033693B2 (en) 2013-10-01 2018-07-24 Nicira, Inc. Distributed identity-based firewalls
EP3061030A4 (en) 2013-10-24 2017-04-19 McAfee, Inc. Agent assisted malicious application blocking in a network environment
US9258324B2 (en) 2013-11-26 2016-02-09 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for protecting a communication network against internet enabled cyber attacks through use of screen replication from controlled internet access points
US9503427B2 (en) 2014-03-31 2016-11-22 Nicira, Inc. Method and apparatus for integrating a service virtual machine
US9906494B2 (en) 2014-03-31 2018-02-27 Nicira, Inc. Configuring interactions with a firewall service virtual machine
US9215210B2 (en) 2014-03-31 2015-12-15 Nicira, Inc. Migrating firewall connection state for a firewall service virtual machine
US9959405B2 (en) * 2014-05-28 2018-05-01 Apple Inc. Sandboxing third party components
US9729512B2 (en) 2014-06-04 2017-08-08 Nicira, Inc. Use of stateless marking to speed up stateful firewall rule processing
US9825913B2 (en) 2014-06-04 2017-11-21 Nicira, Inc. Use of stateless marking to speed up stateful firewall rule processing
US9552587B2 (en) 2014-07-11 2017-01-24 Sensoriant, Inc. System and method for mediating representations with respect to preferences of a party not located in the environment
US10390289B2 (en) 2014-07-11 2019-08-20 Sensoriant, Inc. Systems and methods for mediating representations allowing control of devices located in an environment having broadcasting devices
US9300693B1 (en) * 2014-09-24 2016-03-29 Symantec Corporation Systems and methods for preventing data loss over virtualized networks
US9591018B1 (en) * 2014-11-20 2017-03-07 Amazon Technologies, Inc. Aggregation of network traffic source behavior data across network-based endpoints
US9692727B2 (en) 2014-12-02 2017-06-27 Nicira, Inc. Context-aware distributed firewall
US10097448B1 (en) 2014-12-18 2018-10-09 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10033627B1 (en) 2014-12-18 2018-07-24 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10091096B1 (en) 2014-12-18 2018-10-02 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US9891940B2 (en) 2014-12-29 2018-02-13 Nicira, Inc. Introspection method and apparatus for network access filtering
US9779240B2 (en) * 2015-01-30 2017-10-03 Vmware, Inc. System and method for hypervisor-based security
US10225326B1 (en) 2015-03-23 2019-03-05 Amazon Technologies, Inc. Point of presence based data uploading
US9887932B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9819567B1 (en) 2015-03-30 2017-11-14 Amazon Technologies, Inc. Traffic surge management for points of presence
US9887931B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9805218B2 (en) * 2015-03-31 2017-10-31 Symantec Corporation Technique for data loss prevention through clipboard operations
US9832141B1 (en) 2015-05-13 2017-11-28 Amazon Technologies, Inc. Routing based request correlation
US10616179B1 (en) 2015-06-25 2020-04-07 Amazon Technologies, Inc. Selective routing of domain name system (DNS) requests
US10691476B2 (en) * 2015-06-27 2020-06-23 Mcafee, Llc Protection of sensitive data
US9806948B2 (en) 2015-06-30 2017-10-31 Nicira, Inc. Providing firewall rules for workload spread across multiple data centers
US10277713B2 (en) * 2015-07-14 2019-04-30 Cisco Technology, Inc. Role-based access to shared resources
US10097566B1 (en) 2015-07-31 2018-10-09 Amazon Technologies, Inc. Identifying targets of network attacks
US9794281B1 (en) 2015-09-24 2017-10-17 Amazon Technologies, Inc. Identifying sources of network attacks
US9742795B1 (en) 2015-09-24 2017-08-22 Amazon Technologies, Inc. Mitigating network attacks
US9774619B1 (en) 2015-09-24 2017-09-26 Amazon Technologies, Inc. Mitigating network attacks
CN105608379A (en) * 2015-10-23 2016-05-25 浪潮(北京)电子信息产业有限公司 Reinforcement system and reinforcement method of virtual host under virtual environment
US10324746B2 (en) 2015-11-03 2019-06-18 Nicira, Inc. Extended context delivery for context-based authorization
US10270878B1 (en) 2015-11-10 2019-04-23 Amazon Technologies, Inc. Routing for origin-facing points of presence
US10049051B1 (en) 2015-12-11 2018-08-14 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10257307B1 (en) 2015-12-11 2019-04-09 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10348639B2 (en) 2015-12-18 2019-07-09 Amazon Technologies, Inc. Use of virtual endpoints to improve data transmission rates
CN108476127B (en) * 2016-01-19 2022-05-13 瑞典爱立信有限公司 Implicitly derived frequency synchronization from DMRS allocations
CN109076102B (en) * 2016-04-15 2021-11-05 瑞典爱立信有限公司 User equipment container and network slice
US10348685B2 (en) 2016-04-29 2019-07-09 Nicira, Inc. Priority allocation for distributed service rules
US10135727B2 (en) 2016-04-29 2018-11-20 Nicira, Inc. Address grouping for distributed service rules
US11171920B2 (en) 2016-05-01 2021-11-09 Nicira, Inc. Publication of firewall configuration
US11838299B2 (en) * 2019-03-25 2023-12-05 Zscaler, Inc. Cloud-based web content processing system providing client threat isolation and data integrity
US10171507B2 (en) * 2016-05-19 2019-01-01 Cisco Technology, Inc. Microsegmentation in heterogeneous software defined networking environments
US10075551B1 (en) 2016-06-06 2018-09-11 Amazon Technologies, Inc. Request management for hierarchical cache
US10162973B2 (en) 2016-06-28 2018-12-25 International Business Machines Corporation Dynamically provisioning virtual machines
US11258761B2 (en) 2016-06-29 2022-02-22 Nicira, Inc. Self-service firewall configuration
US10110694B1 (en) 2016-06-29 2018-10-23 Amazon Technologies, Inc. Adaptive transfer rate for retrieving content from a server
US11088990B2 (en) 2016-06-29 2021-08-10 Nicira, Inc. Translation cache for firewall configuration
US9992086B1 (en) 2016-08-23 2018-06-05 Amazon Technologies, Inc. External health checking of virtual private cloud network environments
US10033691B1 (en) 2016-08-24 2018-07-24 Amazon Technologies, Inc. Adaptive resolution of domain name requests in virtual private cloud network environments
US10938837B2 (en) 2016-08-30 2021-03-02 Nicira, Inc. Isolated network stack to manage security for virtual machines
US10333983B2 (en) 2016-08-30 2019-06-25 Nicira, Inc. Policy definition and enforcement for a network virtualization platform
US20190114630A1 (en) 2017-09-29 2019-04-18 Stratus Digital Systems Transient Transaction Server DNS Strategy
CN109792446A (en) * 2016-10-03 2019-05-21 斯特拉图斯数字系统公司 Transient state trading server
US10469513B2 (en) 2016-10-05 2019-11-05 Amazon Technologies, Inc. Encrypted network addresses
US10785311B2 (en) 2016-11-08 2020-09-22 Pearson Education, Inc. Secure cloud-managed content delivery computer ecosystem
US10375111B2 (en) 2016-11-12 2019-08-06 Microsoft Technology Licensing, Llc Anonymous containers
US20180137291A1 (en) * 2016-11-14 2018-05-17 Linkedin Corporation Securing files at rest in remote storage systems
US10193862B2 (en) 2016-11-29 2019-01-29 Vmware, Inc. Security policy analysis based on detecting new network port connections
US10715607B2 (en) 2016-12-06 2020-07-14 Nicira, Inc. Performing context-rich attribute-based services on a host
US10581960B2 (en) 2016-12-22 2020-03-03 Nicira, Inc. Performing context-rich attribute-based load balancing on a host
US10812451B2 (en) 2016-12-22 2020-10-20 Nicira, Inc. Performing appID based firewall services on a host
US10503536B2 (en) 2016-12-22 2019-12-10 Nicira, Inc. Collecting and storing threat level indicators for service rule processing
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
US10803173B2 (en) 2016-12-22 2020-10-13 Nicira, Inc. Performing context-rich attribute-based process control services on a host
US10805332B2 (en) 2017-07-25 2020-10-13 Nicira, Inc. Context engine model
US10372499B1 (en) 2016-12-27 2019-08-06 Amazon Technologies, Inc. Efficient region selection system for executing request-driven code
US10831549B1 (en) 2016-12-27 2020-11-10 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10699003B2 (en) * 2017-01-23 2020-06-30 Hysolate Ltd. Virtual air-gapped endpoint, and methods thereof
US10938884B1 (en) 2017-01-30 2021-03-02 Amazon Technologies, Inc. Origin server cloaking using virtual private cloud network environments
US10503613B1 (en) 2017-04-21 2019-12-10 Amazon Technologies, Inc. Efficient serving of resources during server unavailability
US11075987B1 (en) 2017-06-12 2021-07-27 Amazon Technologies, Inc. Load estimating content delivery network
US10447648B2 (en) 2017-06-19 2019-10-15 Amazon Technologies, Inc. Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP
US10742593B1 (en) 2017-09-25 2020-08-11 Amazon Technologies, Inc. Hybrid content request routing system
US10778651B2 (en) 2017-11-15 2020-09-15 Nicira, Inc. Performing context-rich attribute-based encryption on a host
US10862773B2 (en) 2018-01-26 2020-12-08 Nicira, Inc. Performing services on data messages associated with endpoint machines
US10802893B2 (en) 2018-01-26 2020-10-13 Nicira, Inc. Performing process control services on endpoint machines
US10592578B1 (en) 2018-03-07 2020-03-17 Amazon Technologies, Inc. Predictive content push-enabled content delivery network
EP3776194A4 (en) * 2018-04-11 2022-06-01 Cornell University Method and system for improving software container performance and isolation
CN108733452B (en) * 2018-04-16 2021-05-14 南京维拓科技股份有限公司 Cloud computing resource management system based on web
US11750654B2 (en) * 2018-04-25 2023-09-05 Dell Products, L.P. Integrity assurance of a secured virtual environment
US10862852B1 (en) 2018-11-16 2020-12-08 Amazon Technologies, Inc. Resolution of domain name requests in heterogeneous network environments
US11025747B1 (en) 2018-12-12 2021-06-01 Amazon Technologies, Inc. Content request pattern-based routing system
US11616787B1 (en) * 2019-06-28 2023-03-28 Amazon Technologies, Inc. Mechanism to manage group of resources using virtual resource containers
GB2588161B (en) * 2019-10-10 2021-12-22 Metaswitch Networks Ltd Processing traffic in a virtualised environment
US11539718B2 (en) 2020-01-10 2022-12-27 Vmware, Inc. Efficiently performing intrusion detection
US11704414B2 (en) 2020-04-29 2023-07-18 Jpmorgan Chase Bank, N.A. Systems and methods for managing vulnerability data
US11108728B1 (en) 2020-07-24 2021-08-31 Vmware, Inc. Fast distribution of port identifiers for rule processing
US11829793B2 (en) 2020-09-28 2023-11-28 Vmware, Inc. Unified management of virtual machines and bare metal computers
US11841971B2 (en) * 2020-09-29 2023-12-12 Oracle International Corporation Systems and methods for customer data handling
US11687644B2 (en) * 2021-08-19 2023-06-27 Venn Technology Corporation Secure visual and computational boundary for a subset of resources on a computing machine
US11928062B2 (en) 2022-06-21 2024-03-12 VMware LLC Accelerating data message classification with smart NICs
US11899594B2 (en) 2022-06-21 2024-02-13 VMware LLC Maintenance of data message classification cache on smart NIC

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050198303A1 (en) * 2004-01-02 2005-09-08 Robert Knauerhase Dynamic virtual machine service provider allocation
US20060075077A1 (en) * 2004-10-05 2006-04-06 Brookner George M System and method of secure updating of remote device software
US20060136910A1 (en) * 2004-12-17 2006-06-22 Intel Corporation Method, apparatus and system for improving security in a virtual machine host
US20070136579A1 (en) * 2005-12-09 2007-06-14 University Of Washington Web browser operating system
US20070271561A1 (en) * 2006-05-22 2007-11-22 Microsoft Corporation Updating virtual machine with patch or the like
US20080301770A1 (en) * 2007-05-31 2008-12-04 Kinder Nathan G Identity based virtual machine selector
US20090100418A1 (en) * 2007-10-12 2009-04-16 Microsoft Corporation Management of Software and Operating System Updates Required for the Process of Creating A Virtual Machine Facsimile Of An Existing Physical Or Virtual Machine
US20090249324A1 (en) * 2008-03-31 2009-10-01 Microsoft Corporation Virtualized application image patching
US20100281083A1 (en) * 2009-05-04 2010-11-04 Moka5, Inc. Policy-based layered filesystem management
US20110067105A1 (en) * 2009-09-11 2011-03-17 Andrew Wolfe Operating System Sandbox
US9088615B1 (en) * 2008-07-31 2015-07-21 Pulse Secure, Llc Determining a reduced set of remediation actions for endpoint integrity

Family Cites Families (225)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4982430A (en) 1985-04-24 1991-01-01 General Instrument Corporation Bootstrap channel security arrangement for communication network
US4688169A (en) 1985-05-30 1987-08-18 Joshi Bhagirath S Computer software security system
US5155847A (en) 1988-08-03 1992-10-13 Minicom Data Corporation Method and apparatus for updating software at remote locations
US5560008A (en) 1989-05-15 1996-09-24 International Business Machines Corporation Remote authentication and authorization in a distributed data processing system
CA2010591C (en) 1989-10-20 1999-01-26 Phillip M. Adams Kernels, description tables and device drivers
US5222134A (en) 1990-11-07 1993-06-22 Tau Systems Corporation Secure system for activating personal computer software at remote locations
US5390314A (en) 1992-10-09 1995-02-14 American Airlines, Inc. Method and apparatus for developing scripts that access mainframe resources that can be executed on various computer systems having different interface languages without modification
US5339261A (en) 1992-10-22 1994-08-16 Base 10 Systems, Inc. System for operating application software in a safety critical environment
US5584009A (en) 1993-10-18 1996-12-10 Cyrix Corporation System and method of retiring store data from a write buffer
JP3042341B2 (en) 1994-11-30 2000-05-15 日本電気株式会社 Local I / O Control Method for Cluster-Coupled Multiprocessor System
US6282712B1 (en) 1995-03-10 2001-08-28 Microsoft Corporation Automatic software installation on heterogeneous networked computer systems
US5699513A (en) 1995-03-31 1997-12-16 Motorola, Inc. Method for secure network access via message intercept
US5787427A (en) 1996-01-03 1998-07-28 International Business Machines Corporation Information handling system, method, and article of manufacture for efficient object security processing by grouping objects sharing common control access policies
US5842017A (en) 1996-01-29 1998-11-24 Digital Equipment Corporation Method and apparatus for forming a translation unit
US5907709A (en) 1996-02-08 1999-05-25 Inprise Corporation Development system with methods for detecting invalid use and management of resources and memory at runtime
US5907708A (en) 1996-06-03 1999-05-25 Sun Microsystems, Inc. System and method for facilitating avoidance of an exception of a predetermined type in a digital computer system by providing fix-up code for an instruction in response to detection of an exception condition resulting from execution thereof
US5787177A (en) 1996-08-01 1998-07-28 Harris Corporation Integrated network security access control system
US5926832A (en) 1996-09-26 1999-07-20 Transmeta Corporation Method and apparatus for aliasing memory data in an advanced microprocessor
US7516094B2 (en) * 1996-10-25 2009-04-07 Ipf, Inc. Internet-based system for managing and delivering consumer product information to consumers at web-based retailer store sites on the world wide web (WWW), using consumer product information (CPI) requesting and graphical user interface (GUI) display subsystems, driven by server-side components embodying universal product numbers (UPNs) and driven by UPN/URL links managed by product manufacturer team members and/or their agents
US5991881A (en) 1996-11-08 1999-11-23 Harris Corporation Network surveillance system
US5987611A (en) 1996-12-31 1999-11-16 Zone Labs, Inc. System and methodology for managing internet access on a per application basis for client computers connected to the internet
US6141698A (en) 1997-01-29 2000-10-31 Network Commerce Inc. Method and system for injecting new code into existing application code
US6587877B1 (en) 1997-03-25 2003-07-01 Lucent Technologies Inc. Management of time and expense when communicating between a host and a communication network
US6192475B1 (en) 1997-03-31 2001-02-20 David R. Wallace System and method for cloaking software
US6167522A (en) 1997-04-01 2000-12-26 Sun Microsystems, Inc. Method and apparatus for providing security for servers executing application programs received via a network
US6356957B2 (en) 1997-04-03 2002-03-12 Hewlett-Packard Company Method for emulating native object oriented foundation classes on a target object oriented programming system using a template library
US6073142A (en) 1997-06-23 2000-06-06 Park City Group Automated post office based rule analysis of e-mail messages and other data objects for controlled distribution in network environments
US6275938B1 (en) 1997-08-28 2001-08-14 Microsoft Corporation Security enhancement for untrusted executable code
US6192401B1 (en) 1997-10-21 2001-02-20 Sun Microsystems, Inc. System and method for determining cluster membership in a heterogeneous distributed system
US6393465B2 (en) 1997-11-25 2002-05-21 Nixmail Corporation Junk electronic mail detector and eliminator
US5987610A (en) 1998-02-12 1999-11-16 Ameritech Corporation Computer virus screening methods and systems
KR100621677B1 (en) 1998-05-06 2006-09-07 마츠시타 덴끼 산교 가부시키가이샤 Method and system for digital data transmission/reception
US6795966B1 (en) 1998-05-15 2004-09-21 Vmware, Inc. Mechanism for restoring, porting, replicating and checkpointing computer systems using state extraction
US6442686B1 (en) 1998-07-02 2002-08-27 Networks Associates Technology, Inc. System and methodology for messaging server-based management and enforcement of crypto policies
US6433794B1 (en) * 1998-07-31 2002-08-13 International Business Machines Corporation Method and apparatus for selecting a java virtual machine for use with a browser
US6338149B1 (en) 1998-07-31 2002-01-08 Westinghouse Electric Company Llc Change monitoring system for a computer system
US6546425B1 (en) 1998-10-09 2003-04-08 Netmotion Wireless, Inc. Method and apparatus for providing mobile and other intermittent connectivity in a computing environment
JP3753873B2 (en) 1998-11-11 2006-03-08 株式会社島津製作所 Spectrophotometer
US6969352B2 (en) 1999-06-22 2005-11-29 Teratech Corporation Ultrasound probe with integrated electronics
US6453468B1 (en) 1999-06-30 2002-09-17 B-Hub, Inc. Methods for improving reliability while upgrading software programs in a clustered computer system
US6567857B1 (en) 1999-07-29 2003-05-20 Sun Microsystems, Inc. Method and apparatus for dynamic proxy insertion in network traffic flow
US6256773B1 (en) 1999-08-31 2001-07-03 Accenture Llp System, method and article of manufacture for configuration management in a development architecture framework
US6990591B1 (en) 1999-11-18 2006-01-24 Secureworks, Inc. Method and system for remotely configuring and monitoring a communication device
US6321267B1 (en) 1999-11-23 2001-11-20 Escom Corporation Method and apparatus for filtering junk email
US6662219B1 (en) 1999-12-15 2003-12-09 Microsoft Corporation System for determining at subgroup of nodes relative weight to represent cluster by obtaining exclusive possession of quorum resource
US6460050B1 (en) 1999-12-22 2002-10-01 Mark Raymond Pace Distributed content identification system
US6769008B1 (en) 2000-01-10 2004-07-27 Sun Microsystems, Inc. Method and apparatus for dynamically altering configurations of clustered computer systems
US7082456B2 (en) 2000-03-17 2006-07-25 Filesx Ltd. Accelerating responses to requests made by users to an internet
US6748534B1 (en) 2000-03-31 2004-06-08 Networks Associates, Inc. System and method for partitioned distributed scanning of a large dataset for viruses and other malware
CA2305078A1 (en) 2000-04-12 2001-10-12 Cloakware Corporation Tamper resistant software - mass data encoding
US7325127B2 (en) 2000-04-25 2008-01-29 Secure Data In Motion, Inc. Security server system
IL152502A0 (en) 2000-04-28 2003-05-29 Internet Security Systems Inc Method and system for managing computer security information
US6769115B1 (en) 2000-05-01 2004-07-27 Emc Corporation Adaptive interface for a software development environment
US6847993B1 (en) 2000-05-31 2005-01-25 International Business Machines Corporation Method, system and program products for managing cluster configurations
US6934755B1 (en) 2000-06-02 2005-08-23 Sun Microsystems, Inc. System and method for migrating processes on a network
US6611925B1 (en) 2000-06-13 2003-08-26 Networks Associates Technology, Inc. Single point of entry/origination item scanning within an enterprise or workgroup
US6901519B1 (en) 2000-06-22 2005-05-31 Infobahn, Inc. E-mail virus protection system and method
US8204999B2 (en) 2000-07-10 2012-06-19 Oracle International Corporation Query string processing
US7093239B1 (en) 2000-07-14 2006-08-15 Internet Security Systems, Inc. Computer immune system and method for detecting unwanted code in a computer system
US7350204B2 (en) 2000-07-24 2008-03-25 Microsoft Corporation Policies for secure software execution
AU2001263929A1 (en) 2000-08-04 2002-02-18 Xtradyne Technologies Ag Method and system for session based authorization and access control for networked application objects
US7707305B2 (en) 2000-10-17 2010-04-27 Cisco Technology, Inc. Methods and apparatus for protecting against overload conditions on nodes of a distributed network
US7146305B2 (en) 2000-10-24 2006-12-05 Vcis, Inc. Analytical virtual machine
US7606898B1 (en) 2000-10-24 2009-10-20 Microsoft Corporation System and method for distributed management of shared computers
US6930985B1 (en) 2000-10-26 2005-08-16 Extreme Networks, Inc. Method and apparatus for management of configuration in a network
US6834301B1 (en) 2000-11-08 2004-12-21 Networks Associates Technology, Inc. System and method for configuration, management, and monitoring of a computer network using inheritance
US6766334B1 (en) 2000-11-21 2004-07-20 Microsoft Corporation Project-based configuration management method and apparatus
US20020069367A1 (en) 2000-12-06 2002-06-06 Glen Tindal Network operating system data directory
US6907600B2 (en) 2000-12-27 2005-06-14 Intel Corporation Virtual translation lookaside buffer
JP2002244898A (en) 2001-02-19 2002-08-30 Hitachi Ltd Database managing program and database system
US6918110B2 (en) 2001-04-11 2005-07-12 Hewlett-Packard Development Company, L.P. Dynamic instrumentation of an executable program by means of causing a breakpoint at the entry point of a function and providing instrumentation code
US6715050B2 (en) 2001-05-31 2004-03-30 Oracle International Corporation Storage access keys
US6988101B2 (en) 2001-05-31 2006-01-17 International Business Machines Corporation Method, system, and computer program product for providing an extensible file system for accessing a foreign file system from a local data processing system
US6988124B2 (en) 2001-06-06 2006-01-17 Microsoft Corporation Locating potentially identical objects across multiple computers based on stochastic partitioning of workload
US7290266B2 (en) 2001-06-14 2007-10-30 Cisco Technology, Inc. Access control by a real-time stateful reference monitor with a state collection training mode and a lockdown mode for detecting predetermined patterns of events indicative of requests for operating system resources resulting in a decision to allow or block activity identified in a sequence of events based on a rule set defining a processing policy
US7065767B2 (en) 2001-06-29 2006-06-20 Intel Corporation Managed hosting server auditing and change tracking
US7069330B1 (en) 2001-07-05 2006-06-27 Mcafee, Inc. Control of interaction between client computer applications and network resources
US20030023736A1 (en) 2001-07-12 2003-01-30 Kurt Abkemeier Method and system for filtering messages
US20030014667A1 (en) 2001-07-16 2003-01-16 Andrei Kolichtchak Buffer overflow attack detection and suppression
US6877088B2 (en) 2001-08-08 2005-04-05 Sun Microsystems, Inc. Methods and apparatus for controlling speculative execution of instructions based on a multiaccess memory condition
US7007302B1 (en) 2001-08-31 2006-02-28 Mcafee, Inc. Efficient management and blocking of malicious code and hacking attempts in a network environment
US7010796B1 (en) 2001-09-28 2006-03-07 Emc Corporation Methods and apparatus providing remote operation of an application programming interface
US20030093508A1 (en) * 2001-10-18 2003-05-15 Seiko Epson Corporation System for installing and launching network applications
US7177267B2 (en) 2001-11-09 2007-02-13 Adc Dsl Systems, Inc. Hardware monitoring and configuration management
US7346781B2 (en) 2001-12-06 2008-03-18 Mcafee, Inc. Initiating execution of a computer program from an encrypted version of a computer program
US7159036B2 (en) 2001-12-10 2007-01-02 Mcafee, Inc. Updating data from a source computer to groups of destination computers
US7039949B2 (en) 2001-12-10 2006-05-02 Brian Ross Cartmell Method and system for blocking unwanted communications
US10033700B2 (en) 2001-12-12 2018-07-24 Intellectual Ventures I Llc Dynamic evaluation of access rights
US7690023B2 (en) 2001-12-13 2010-03-30 Japan Science And Technology Agency Software safety execution system
US7398389B2 (en) 2001-12-20 2008-07-08 Coretrace Corporation Kernel-based network security infrastructure
JP3906356B2 (en) 2001-12-27 2007-04-18 独立行政法人情報通信研究機構 Syntax analysis method and apparatus
US7743415B2 (en) 2002-01-31 2010-06-22 Riverbed Technology, Inc. Denial of service attacks characterization
US20030167399A1 (en) 2002-03-01 2003-09-04 Yves Audebert Method and system for performing post issuance configuration and data changes to a personal security device using a communications pipe
US6941449B2 (en) 2002-03-04 2005-09-06 Hewlett-Packard Development Company, L.P. Method and apparatus for performing critical tasks using speculative operations
US7600021B2 (en) 2002-04-03 2009-10-06 Microsoft Corporation Delta replication of source files and packages across networked resources
US20070253430A1 (en) 2002-04-23 2007-11-01 Minami John S Gigabit Ethernet Adapter
US7370360B2 (en) 2002-05-13 2008-05-06 International Business Machines Corporation Computer immune system and method for detecting unwanted code in a P-code or partially compiled native-code program executing within a virtual machine
US20030221190A1 (en) 2002-05-22 2003-11-27 Sun Microsystems, Inc. System and method for performing patch installation on multiple devices
US7823148B2 (en) 2002-05-22 2010-10-26 Oracle America, Inc. System and method for performing patch installation via a graphical user interface
US7024404B1 (en) 2002-05-28 2006-04-04 The State University Rutgers Retrieval and display of data objects using a cross-group ranking metric
US7512977B2 (en) 2003-06-11 2009-03-31 Symantec Corporation Intrustion protection system utilizing layers
US7823203B2 (en) 2002-06-17 2010-10-26 At&T Intellectual Property Ii, L.P. Method and device for detecting computer network intrusions
US7139916B2 (en) 2002-06-28 2006-11-21 Ebay, Inc. Method and system for monitoring user interaction with a computer
US8924484B2 (en) 2002-07-16 2014-12-30 Sonicwall, Inc. Active e-mail filter with challenge-response
US7522906B2 (en) 2002-08-09 2009-04-21 Wavelink Corporation Mobile unit configuration management for WLANs
US7624347B2 (en) 2002-09-17 2009-11-24 At&T Intellectual Property I, L.P. System and method for forwarding full header information in email messages
US7546333B2 (en) 2002-10-23 2009-06-09 Netapp, Inc. Methods and systems for predictive change management for access paths in networks
US7353501B2 (en) 2002-11-18 2008-04-01 Microsoft Corporation Generic wrapper scheme
US7865931B1 (en) 2002-11-25 2011-01-04 Accenture Global Services Limited Universal authorization and access control security measure for applications
US20040143749A1 (en) 2003-01-16 2004-07-22 Platformlogic, Inc. Behavior-based host-based intrusion prevention system
US20040167906A1 (en) 2003-02-25 2004-08-26 Smith Randolph C. System consolidation tool and method for patching multiple servers
US7024548B1 (en) 2003-03-10 2006-04-04 Cisco Technology, Inc. Methods and apparatus for auditing and tracking changes to an existing configuration of a computerized device
US7529754B2 (en) 2003-03-14 2009-05-05 Websense, Inc. System and method of monitoring and controlling application files
US20060133223A1 (en) 2003-03-28 2006-06-22 Matsusuhita Electric Industrial Co., Ltd. Recording medium, recording device usint the same, and reproduction device
US7607010B2 (en) 2003-04-12 2009-10-20 Deep Nines, Inc. System and method for network edge data protection
US20050108516A1 (en) 2003-04-17 2005-05-19 Robert Balzer By-pass and tampering protection for application wrappers
US20040230963A1 (en) 2003-05-12 2004-11-18 Rothman Michael A. Method for updating firmware in an operating system agnostic manner
DE10324189A1 (en) 2003-05-28 2004-12-16 Robert Bosch Gmbh Method for controlling access to a resource of an application in a data processing device
US7657599B2 (en) 2003-05-29 2010-02-02 Mindshare Design, Inc. Systems and methods for automatically updating electronic mail access lists
US20050108562A1 (en) 2003-06-18 2005-05-19 Khazan Roger I. Technique for detecting executable malicious code using a combination of static and dynamic analyses
US7283517B2 (en) 2003-07-22 2007-10-16 Innomedia Pte Stand alone multi-media terminal adapter with network address translation and port partitioning
US7886093B1 (en) 2003-07-31 2011-02-08 Hewlett-Packard Development Company, L.P. Electronic device network supporting compression and decompression in electronic devices
US7464408B1 (en) 2003-08-29 2008-12-09 Solidcore Systems, Inc. Damage containment by translation
US7290129B2 (en) 2003-09-16 2007-10-30 At&T Bls Intellectual Property, Inc. Remote administration of computer access settings
US20050114672A1 (en) 2003-11-20 2005-05-26 Encryptx Corporation Data rights management of digital information in a portable software permission wrapper
US7600219B2 (en) 2003-12-10 2009-10-06 Sap Ag Method and system to monitor software interface updates and assess backward compatibility
US7546594B2 (en) 2003-12-15 2009-06-09 Microsoft Corporation System and method for updating installation components using an installation component delta patch in a networked environment
US7272654B1 (en) 2004-03-04 2007-09-18 Sandbox Networks, Inc. Virtualizing network-attached-storage (NAS) with a compact table that stores lossy hashes of file names and parent handles rather than full names
US7783735B1 (en) 2004-03-22 2010-08-24 Mcafee, Inc. Containment of network communication
EP1745342A2 (en) 2004-04-19 2007-01-24 Securewave S.A. On-line centralized and local authorization of executable files
US20060004875A1 (en) 2004-05-11 2006-01-05 Microsoft Corporation CMDB schema
US7890946B2 (en) 2004-05-11 2011-02-15 Microsoft Corporation Efficient patching
DE602005018213D1 (en) 2004-05-24 2010-01-21 Computer Ass Think Inc SYSTEM AND METHOD FOR AUTOMATIC CONFIGURATION OF A MOBILE DEVICE
US7818377B2 (en) 2004-05-24 2010-10-19 Microsoft Corporation Extended message rule architecture
US7506170B2 (en) 2004-05-28 2009-03-17 Microsoft Corporation Method for secure access to multiple secure networks
US20050273858A1 (en) 2004-06-07 2005-12-08 Erez Zadok Stackable file systems and methods thereof
JP4341517B2 (en) 2004-06-21 2009-10-07 日本電気株式会社 Security policy management system, security policy management method and program
US20050289538A1 (en) 2004-06-23 2005-12-29 International Business Machines Corporation Deploying an application software on a virtual deployment target
US7203864B2 (en) 2004-06-25 2007-04-10 Hewlett-Packard Development Company, L.P. Method and system for clustering computers into peer groups and comparing individual computers to their peers
US7908653B2 (en) * 2004-06-29 2011-03-15 Intel Corporation Method of improving computer security through sandboxing
US20060015501A1 (en) 2004-07-19 2006-01-19 International Business Machines Corporation System, method and program product to determine a time interval at which to check conditions to permit access to a file
US7937455B2 (en) 2004-07-28 2011-05-03 Oracle International Corporation Methods and systems for modifying nodes in a cluster environment
US7703090B2 (en) 2004-08-31 2010-04-20 Microsoft Corporation Patch un-installation
US7506364B2 (en) 2004-10-01 2009-03-17 Microsoft Corporation Integrated access authorization
US20060080656A1 (en) 2004-10-12 2006-04-13 Microsoft Corporation Methods and instructions for patch management
US9329905B2 (en) 2004-10-15 2016-05-03 Emc Corporation Method and apparatus for configuring, monitoring and/or managing resource groups including a virtual machine
US7765538B2 (en) 2004-10-29 2010-07-27 Hewlett-Packard Development Company, L.P. Method and apparatus for determining which program patches to recommend for installation
US20060101277A1 (en) 2004-11-10 2006-05-11 Meenan Patrick A Detecting and remedying unauthorized computer programs
WO2006101549A2 (en) 2004-12-03 2006-09-28 Whitecell Software, Inc. Secure system for allowing the execution of authorized computer program code
US8479193B2 (en) * 2004-12-17 2013-07-02 Intel Corporation Method, apparatus and system for enhancing the usability of virtual machines
US7607170B2 (en) 2004-12-22 2009-10-20 Radware Ltd. Stateful attack protection
US7302558B2 (en) 2005-01-25 2007-11-27 Goldman Sachs & Co. Systems and methods to facilitate the creation and configuration management of computing systems
US8056138B2 (en) 2005-02-26 2011-11-08 International Business Machines Corporation System, method, and service for detecting improper manipulation of an application
US7836504B2 (en) 2005-03-01 2010-11-16 Microsoft Corporation On-access scan of memory for malware
US7685635B2 (en) 2005-03-11 2010-03-23 Microsoft Corporation Systems and methods for multi-level intercept processing in a virtual machine environment
TW200707417A (en) 2005-03-18 2007-02-16 Sony Corp Reproducing apparatus, reproducing method, program, program storage medium, data delivery system, data structure, and manufacturing method of recording medium
US7552479B1 (en) 2005-03-22 2009-06-23 Symantec Corporation Detecting shellcode that modifies IAT entries
US7770151B2 (en) 2005-04-07 2010-08-03 International Business Machines Corporation Automatic generation of solution deployment descriptors
US8590044B2 (en) 2005-04-14 2013-11-19 International Business Machines Corporation Selective virus scanning system and method
US7349931B2 (en) 2005-04-14 2008-03-25 Webroot Software, Inc. System and method for scanning obfuscated files for pestware
US7363463B2 (en) 2005-05-13 2008-04-22 Microsoft Corporation Method and system for caching address translations from multiple address spaces in virtual machines
WO2006137057A2 (en) 2005-06-21 2006-12-28 Onigma Ltd. A method and a system for providing comprehensive protection against leakage of sensitive information assets using host based agents, content- meta-data and rules-based policies
US8839450B2 (en) 2007-08-02 2014-09-16 Intel Corporation Secure vault service for software components within an execution environment
US7739721B2 (en) 2005-07-11 2010-06-15 Microsoft Corporation Per-user and system granular audit policy implementation
US7856661B1 (en) 2005-07-14 2010-12-21 Mcafee, Inc. Classification of software on networked systems
US7895651B2 (en) 2005-07-29 2011-02-22 Bit 9, Inc. Content tracking in a network security system
US7962616B2 (en) 2005-08-11 2011-06-14 Micro Focus (Us), Inc. Real-time activity monitoring and reporting
US8327353B2 (en) 2005-08-30 2012-12-04 Microsoft Corporation Hierarchical virtualization with a multi-level virtualization mechanism
US7340574B2 (en) 2005-08-30 2008-03-04 Rockwell Automation Technologies, Inc. Method and apparatus for synchronizing an industrial controller with a redundant controller
US20070074199A1 (en) 2005-09-27 2007-03-29 Sebastian Schoenberg Method and apparatus for delivering microcode updates through virtual machine operations
US8131825B2 (en) 2005-10-07 2012-03-06 Citrix Systems, Inc. Method and a system for responding locally to requests for file metadata associated with files stored remotely
US7725737B2 (en) 2005-10-14 2010-05-25 Check Point Software Technologies, Inc. System and methodology providing secure workspace environment
US20070169079A1 (en) 2005-11-08 2007-07-19 Microsoft Corporation Software update management
US7856538B2 (en) 2005-12-12 2010-12-21 Systex, Inc. Methods, systems and computer readable medium for detecting memory overflow conditions
US20070143851A1 (en) 2005-12-21 2007-06-21 Fiberlink Method and systems for controlling access to computing resources based on known security vulnerabilities
US20070174429A1 (en) 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US7757269B1 (en) 2006-02-02 2010-07-13 Mcafee, Inc. Enforcing alignment of approved changes and deployed changes in the software change life-cycle
US8185724B2 (en) 2006-03-03 2012-05-22 Arm Limited Monitoring values of signals within an integrated circuit
US8621433B2 (en) 2006-03-20 2013-12-31 Microsoft Corporation Managing version information for software components
US7895573B1 (en) 2006-03-27 2011-02-22 Mcafee, Inc. Execution environment file inventory
US7752233B2 (en) 2006-03-29 2010-07-06 Massachusetts Institute Of Technology Techniques for clustering a set of objects
US7870387B1 (en) 2006-04-07 2011-01-11 Mcafee, Inc. Program-based authorization
US8015563B2 (en) * 2006-04-14 2011-09-06 Microsoft Corporation Managing virtual machines with system-wide policies
US7966659B1 (en) 2006-04-18 2011-06-21 Rockwell Automation Technologies, Inc. Distributed learn mode for configuring a firewall, security authority, intrusion detection/prevention devices, and the like
US8458673B2 (en) 2006-04-26 2013-06-04 Flexera Software Llc Computer-implemented method and system for binding digital rights management executable code to a software application
US7849502B1 (en) 2006-04-29 2010-12-07 Ironport Systems, Inc. Apparatus for monitoring network traffic
US7761912B2 (en) 2006-06-06 2010-07-20 Microsoft Corporation Reputation driven firewall
US7809704B2 (en) 2006-06-15 2010-10-05 Microsoft Corporation Combining spectral and probabilistic clustering
US20070300215A1 (en) 2006-06-26 2007-12-27 Bardsley Jeffrey S Methods, systems, and computer program products for obtaining and utilizing a score indicative of an overall performance effect of a software update on a software host
US8468526B2 (en) 2006-06-30 2013-06-18 Intel Corporation Concurrent thread execution using user-level asynchronous signaling
US8365294B2 (en) 2006-06-30 2013-01-29 Intel Corporation Hardware platform authentication and multi-platform validation
US8572721B2 (en) 2006-08-03 2013-10-29 Citrix Systems, Inc. Methods and systems for routing packets in a VPN-client-to-VPN-client connection via an SSL/VPN network appliance
US8015388B1 (en) 2006-08-04 2011-09-06 Vmware, Inc. Bypassing guest page table walk for shadow page table entries not present in guest page table
US8161475B2 (en) 2006-09-29 2012-04-17 Microsoft Corporation Automatic load and balancing for virtual machines to meet resource requirements
US9697019B1 (en) 2006-10-17 2017-07-04 Manageiq, Inc. Adapt a virtual machine to comply with system enforced policies and derive an optimized variant of the adapted virtual machine
US7689817B2 (en) 2006-11-16 2010-03-30 Intel Corporation Methods and apparatus for defeating malware
US8091127B2 (en) 2006-12-11 2012-01-03 International Business Machines Corporation Heuristic malware detection
US8336046B2 (en) 2006-12-29 2012-12-18 Intel Corporation Dynamic VM cloning on request from application based on mapping of virtual hardware configuration to the identified physical hardware resources
US7996836B1 (en) 2006-12-29 2011-08-09 Symantec Corporation Using a hypervisor to provide computer security
US8381209B2 (en) 2007-01-03 2013-02-19 International Business Machines Corporation Moveable access control list (ACL) mechanisms for hypervisors and virtual machines and virtual port firewalls
US8254568B2 (en) 2007-01-07 2012-08-28 Apple Inc. Secure booting a computing device
US8380987B2 (en) 2007-01-25 2013-02-19 Microsoft Corporation Protection agents and privilege modes
US8276201B2 (en) 2007-03-22 2012-09-25 International Business Machines Corporation Integrity protection in data processing systems
US7930327B2 (en) 2007-05-21 2011-04-19 International Business Machines Corporation Method and apparatus for obtaining the absolute path name of an open file system object from its file descriptor
US20090007100A1 (en) 2007-06-28 2009-01-01 Microsoft Corporation Suspending a Running Operating System to Enable Security Scanning
US8763115B2 (en) 2007-08-08 2014-06-24 Vmware, Inc. Impeding progress of malicious guest software
WO2009032711A1 (en) 2007-08-29 2009-03-12 Nirvanix, Inc. Policy-based file management for a storage delivery network
US8250641B2 (en) 2007-09-17 2012-08-21 Intel Corporation Method and apparatus for dynamic switching and real time security control on virtualized systems
US20090113111A1 (en) 2007-10-30 2009-04-30 Vmware, Inc. Secure identification of execution contexts
JP5238235B2 (en) 2007-12-07 2013-07-17 株式会社日立製作所 Management apparatus and management method
US8336094B2 (en) * 2008-03-27 2012-12-18 Juniper Networks, Inc. Hierarchical firewalls
US8321931B2 (en) 2008-03-31 2012-11-27 Intel Corporation Method and apparatus for sequential hypervisor invocation
WO2010016904A2 (en) 2008-08-07 2010-02-11 Serge Nabutovsky Link exchange system and method
US8065714B2 (en) 2008-09-12 2011-11-22 Hytrust, Inc. Methods and systems for securely managing virtualization platform
US9141381B2 (en) * 2008-10-27 2015-09-22 Vmware, Inc. Version control environment for virtual machines
US8060722B2 (en) 2009-03-27 2011-11-15 Vmware, Inc. Hardware assistance for shadow page table coherence with guest page mappings
US8359422B2 (en) 2009-06-26 2013-01-22 Vmware, Inc. System and method to reduce trace faults in software MMU virtualization
US8341627B2 (en) 2009-08-21 2012-12-25 Mcafee, Inc. Method and system for providing user space address protection from writable memory area in a virtual environment
US8381284B2 (en) 2009-08-21 2013-02-19 Mcafee, Inc. System and method for enforcing security policies in a virtual environment
US9552497B2 (en) 2009-11-10 2017-01-24 Mcafee, Inc. System and method for preventing data loss using virtual machine wrapped applications
US8938800B2 (en) 2010-07-28 2015-01-20 Mcafee, Inc. System and method for network level protection against malicious software
US8925101B2 (en) 2010-07-28 2014-12-30 Mcafee, Inc. System and method for local protection against malicious software
US8694738B2 (en) 2011-10-11 2014-04-08 Mcafee, Inc. System and method for critical address space protection in a hypervisor environment
US9069586B2 (en) 2011-10-13 2015-06-30 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US8973144B2 (en) 2011-10-13 2015-03-03 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050198303A1 (en) * 2004-01-02 2005-09-08 Robert Knauerhase Dynamic virtual machine service provider allocation
US20060075077A1 (en) * 2004-10-05 2006-04-06 Brookner George M System and method of secure updating of remote device software
US20060136910A1 (en) * 2004-12-17 2006-06-22 Intel Corporation Method, apparatus and system for improving security in a virtual machine host
US20070136579A1 (en) * 2005-12-09 2007-06-14 University Of Washington Web browser operating system
US20070271561A1 (en) * 2006-05-22 2007-11-22 Microsoft Corporation Updating virtual machine with patch or the like
US20080301770A1 (en) * 2007-05-31 2008-12-04 Kinder Nathan G Identity based virtual machine selector
US20090100418A1 (en) * 2007-10-12 2009-04-16 Microsoft Corporation Management of Software and Operating System Updates Required for the Process of Creating A Virtual Machine Facsimile Of An Existing Physical Or Virtual Machine
US20090249324A1 (en) * 2008-03-31 2009-10-01 Microsoft Corporation Virtualized application image patching
US9088615B1 (en) * 2008-07-31 2015-07-21 Pulse Secure, Llc Determining a reduced set of remediation actions for endpoint integrity
US20100281083A1 (en) * 2009-05-04 2010-11-04 Moka5, Inc. Policy-based layered filesystem management
US20110067105A1 (en) * 2009-09-11 2011-03-17 Andrew Wolfe Operating System Sandbox

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11122085B2 (en) * 2014-02-20 2021-09-14 Nicira, Inc. Method and apparatus for distributing firewall rules
US11425095B2 (en) 2016-05-01 2022-08-23 Nicira, Inc. Fast ordering of firewall sections and rules
US11310202B2 (en) 2019-03-13 2022-04-19 Vmware, Inc. Sharing of firewall rules among multiple workloads in a hypervisor

Also Published As

Publication number Publication date
US9552497B2 (en) 2017-01-24
CN102741853A (en) 2012-10-17
CN102741853B (en) 2015-12-09
WO2011059877A1 (en) 2011-05-19
US20110113467A1 (en) 2011-05-12
EP2499598B1 (en) 2018-05-16
EP2499598A1 (en) 2012-09-19

Similar Documents

Publication Publication Date Title
US20170134436A1 (en) System and method for preventing data loss using virtual machine wrapped applications
US10979449B2 (en) Key throttling to mitigate unauthorized file access
US10834061B2 (en) Perimeter enforcement of encryption rules
US10931648B2 (en) Perimeter encryption
US10657277B2 (en) Behavioral-based control of access to encrypted content by a process
US10691824B2 (en) Behavioral-based control of access to encrypted content by a process
US11132459B1 (en) Protecting documents with centralized and discretionary policies
US10686827B2 (en) Intermediate encryption for exposed content
US10628597B2 (en) Just-in-time encryption
Hashizume et al. An analysis of security issues for cloud computing
Parno et al. CLAMP: Practical prevention of large-scale data leaks
EP2599027B1 (en) Protecting documents using policies and encryption
US10263966B2 (en) Perimeter enforcement of encryption rules
GB2565185B (en) Encryption techniques
Swimmer et al. Untangling the Web of Cloud Security Threats
Udaykumar Design And Deploy Secure Azure Environment
Mookhey et al. Linux: Security, Audit and Control Features
Bahekar et al. Study: Issues in Cloud Computing
Badger et al. Guide to Securing Apple OS X 10.10 Systems for IT Professionals
Lau et al. Accessing Trusted Web Sites from Low-Integrity Systems without End-Host Snooping

Legal Events

Date Code Title Description
AS Assignment

Owner name: MCAFEE, LLC, CALIFORNIA

Free format text: CHANGE OF NAME AND ENTITY CONVERSION;ASSIGNOR:MCAFEE, INC.;REEL/FRAME:043665/0918

Effective date: 20161220

AS Assignment

Owner name: JPMORGAN CHASE BANK, N.A., NEW YORK

Free format text: SECURITY INTEREST;ASSIGNOR:MCAFEE, LLC;REEL/FRAME:045055/0786

Effective date: 20170929

Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND

Free format text: SECURITY INTEREST;ASSIGNOR:MCAFEE, LLC;REEL/FRAME:045056/0676

Effective date: 20170929

STCV Information on status: appeal procedure

Free format text: NOTICE OF APPEAL FILED

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND

Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST;ASSIGNOR:MCAFEE, LLC;REEL/FRAME:054206/0593

Effective date: 20170929

Owner name: JPMORGAN CHASE BANK, N.A., NEW YORK

Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST;ASSIGNOR:MCAFEE, LLC;REEL/FRAME:055854/0047

Effective date: 20170929

AS Assignment

Owner name: MCAFEE, LLC, CALIFORNIA

Free format text: RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:054238/0001

Effective date: 20201026

AS Assignment

Owner name: MCAFEE, LLC, CALIFORNIA

Free format text: RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT;REEL/FRAME:059354/0213

Effective date: 20220301