Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS20060010492 A9
Publication typeApplication
Application numberUS 10/170,088
Publication dateJan 12, 2006
Filing dateJun 10, 2002
Priority dateJul 30, 2001
Also published asUS8001594, US20030229808
Publication number10170088, 170088, US 2006/0010492 A9, US 2006/010492 A9, US 20060010492 A9, US 20060010492A9, US 2006010492 A9, US 2006010492A9, US-A9-20060010492, US-A9-2006010492, US2006/0010492A9, US2006/010492A9, US20060010492 A9, US20060010492A9, US2006010492 A9, US2006010492A9
InventorsRobert Heintz, Jeffrey Christy
Original AssigneeAxcelerant, Inc.
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Method and apparatus for monitoring computer network security enforcement
US 20060010492 A9
Abstract
Methods and systems are disclosed for monitoring activity of a user on a network component, such as an end user computer, in a virtual private network for adherence to a security enforcement provision or policy utilized in the virtual private network. A method of determining whether a security provision in a computer network has been violated is described. It is determined whether the network component has violated, modified or circumvented a security enforcement provision of the computer network. If the detection is affirmative, the network component, such as an end user system, is modified in a manner in which the computer network operates at a level appropriate to the degree of the violation, modification, or circumvention of the security enforcement provision. If instructed to do so, a third party operating the virtual private network is notified of the violation and access to the network by the network component is restricted or terminated. A security enforcement distributed system consists of an agent module on the end user computer and a collector module for receiving data from the agent on a security server computer coupled to a data repository. Also on the security serer are a policy inspector for checking compliance with a security provision and a notifier and access control module for informing the network operator of a violation and restricting access by the end user system to the security server.
Images(16)
Previous page
Next page
Claims(17)
1. A method of monitoring abidance of a network component by a security enforcement provision utilized in a computer network, the method comprising:
detecting whether the network component has one of violated, modified or circumvented the security enforcement provision of the computer network; and
if the detection is positive, acting on the network component in a manner in which the computer network operates at a level appropriate to the degree of the violation, modification, or circumvention of the security enforcement provision.
2. A method of monitoring abidance of a network component by a security enforcement provision utilized in a computer network, the method comprising:
detecting whether the network component has one of violated, modified or circumvented the security enforcement provision of the computer network;
detecting whether an enforcement provision monitoring module has been one of violated, modified or circumvented; and
if either detection is positive, acting on the network component in a manner in which the computer network operates at a level appropriate to the degree of the violation, modification, or circumvention of the security enforcement provision.
3. A method as recited in claim 2 further comprising storing security enforcement data within the enforcement provision monitoring module whereby operating system and related files of the network component do not contain security enforcement related data.
4. A method as recited in claim 2 further comprising relegating the enforcement provision monitoring module to a background process on the network component.
5. A method as recited in claim 2 further comprising initializing a secure connection between the enforcement provision monitoring module and a security server computer over a public network.
6. A method as recited in claim 5 further comprising closing the secure connection after a profile record has been transmitted.
7. A method as recited in claim 5 further comprising invoking a collector module on the security server computer to collect data from the enforcement provision monitoring module.
8. A method as recited in claim 5 further comprising instructing the enforcement provision monitoring module when to send a next profile record to the security server computer.
9. A method of monitoring abidance of a network component by a security enforcement provision utilized in a computer network, the method comprising:
detecting whether the network component has one of violated, modified or circumvented the security enforcement provision of the computer network by comparing a profile record of the network component to a rule set defining a security policy;
detecting whether an enforcement provision monitoring module on the network component has been one of violated, modified or circumvented;
if either detection is positive, acting on the network component in a manner in which the network operates at a level appropriate to the degree of the violation, modification, or circumvention of the security enforcement provision; and
notifying an operator of the computer network of the positive detection.
10. A method as recited in claim 9 further comprising:
receiving from the network component the profile record at a security data repository under control of a security monitoring service provider;
validating a user associated with the network component;
checking for a class rule set associated with the network component; and
generating a host identifier transmitted to the network component.
11. A method as recited in claim 9 further comprising:
determining whether the enforcement provision monitoring module has been executing continually since boot up of the network component;
retrieving one or more rule sets corresponding to the profile record; and
applying the one or more rule sets to the profile record.
12. A method as recited in claim 9 further comprising detecting whether a network perimeter security device has been violated, modified, or circumvented.
13. A method as recited in claim 12 wherein the network perimeter security device is a managed service unit or a software firewall.
14. A method of monitoring abidance of a network component by a security enforcement provision utilized in a computer network, the method comprising:
gathering network component data related to the network component and storing the data in a profile record;
detecting whether the network component has one of violated, modified or circumvented the security enforcement provision of the network by comparing the profile record to a rule set defining a security policy;
detecting whether an enforcement provision monitoring module has been one of violated, modified or circumvented;
if either detection is positive, acting on the component in a manner in which the network operates at a level appropriate to the degree of the violation, modification, or circumvention of the security enforcement provision; and
notifying an operator of the network of the positive detection.
15. A system for monitoring abidance by a network security provision present in a network, the system comprising:
an agent module residing on an end user system;
a security server containing a plurality of components for collecting and inspecting data;
a security database containing end user system data and security rule data, wherein the security server and the security database are in communication; and
a notification module on the security server capable of notifying a third party of a security violation.
16. A system for monitoring abidance by a network security provision present in a network, the system comprising:
an agent module residing on an end user system;
a security server containing a plurality of components for collecting and inspecting data;
a security database containing end user system data and security rule data, wherein the security server and the security database are in communication; and
a virtual private network through which data is transmitted between the end user system and the security server.
17. A system for monitoring security activity in a computer network comprising:
an agent module having a data collection component and a server session control component;
a collector module having a session control listener and a preprocessor;
a policy inspector having a host information validation module and a new user set up module;
a notifier module having an exception log processor; and
an access control module for processing access control requests.
Description
    BACKGROUND OF THE INVENTION
  • [0001]
    1. Field of the Invention
  • [0002]
    The present invention relates generally to computer network security software. More specifically, it relates to distributed software and network components for monitoring user actions effecting measures taken for computer network security enforcement.
  • [0003]
    2. Discussion of Related Art
  • [0004]
    With the advent of the Internet and rapid growth of “telecommuting” and working while traveling, computer network and data security has become increasingly important. Consequences of violations of an entity's network security policies can be catastrophic. Huge amounts of data, including highly sensitive data, can be exposed to the public and especially individuals looking for loopholes in a company's network security.
  • [0005]
    It is common practice now for a company, entity or organization to have some type of network security enforcement if the company allows its employees to work from home, use laptops while traveling, working from satellite offices, or simply using a desktop computer on the company's premises. For example, a firewall program typically runs on a server that checks data coming in and out of a company's internal network. Typically, companies are concerned with external entities entering their private network and corrupting or exposing sensitive data. There are a large number of programs and tools a company can employ to secure its network.
  • [0006]
    A specific category or type of network is a virtual private network or VPN. A VPN is made up of computer workstations that are physically located outside a company's network. The most common example is a workstation located at an employee's home office. This workstation, for example a PC or Mac, may be the property of the employee and is being used for work and to access company resources in addition to normal home use. However, because it is being used for work and is using a public network, such as the Internet, to access company resources, the company requires that the computer execute network security enforcement software. It is crucial that this enforcement software, whether it is a single program or a bundle of programs, operate when expected and not be modified, adjusted, by-passed or shut down. In many cases the user may not be aware of the network security software installed on the computer by the company, for example with company laptops and desktop computers. As such, in some instances, a user may not be aware that he or she is violating a company security policy or somehow effecting the operation of a security program. Such inadvertent or unintentional violations can be as dangerous as intentional or malicious violations.
  • [0007]
    As mentioned, the number of security enforcement programs available for workstations on a VPN and other types of networks has grown considerably. As a result, monitoring whether security programs on a particular workstation are operating and actually enforcing security policies have become an important aspect of a company's network security scheme. Some workstations can have numerous separate programs for enforcing security and all need to be functioning when the computer is in use. A company needs to know whether any of the security enforcement programs have been shut off, modified or simply not functioning properly. However, there are no effective tools to allow a company to effectively manage and monitor its VPN or computer network security enforcement policy, typically implemented through specific network security software programs. In addition, other computer network security devices, such as by Info Express and Sygate, are not functional if not connected to a network or VPN Thus, they cannot ensure that security provisions are abided by when they are not connected to a VPN.
  • [0008]
    Therefore, what is needed is a method and system for allowing an entity to effectively monitor and manage its computer network security policy. In addition, such a method and system should alert the entity when a network security policy has been violated and take certain actions when violations occur.
  • SUMMARY OF THE PREFERRED EMBODIMENTS
  • [0009]
    To achieve the foregoing, methods and systems are disclosed for monitoring the activity of a user on a network component in a virtual private network for abidance by a security enforcement provision utilized in virtual private network. In one aspect of the present invention, a method of determining whether a security provision in a computer network has been violated is described. It is determined whether a network component has violated, modified or circumvented a security enforcement provision of the computer network. If the detection is affirmative, the network component, such as an end user system, operates at a level that is appropriate to the severity or level of the violation, modification, or circumvention as determined by the computer network operator.
  • [0010]
    In another aspect of the present invention, a method of monitoring abidance of a network component by a security enforcement provision utilized in a computer network includes detecting whether the network component has violated, modified or circumvented the security enforcement provision of the computer network. It is then determined whether an enforcement provision monitoring module has been violated, modified or circumvented. If either detection is affirmative, the network component is acted upon in a manner appropriate given the level or severity of the violation or modification as determined by a network operator. The method also includes comparing a profile record containing information on the network component to a rule set defining a security policy and notifying an operator of the computer network if either detection is affirmative.
  • [0011]
    In another aspect of the present invention, a system for monitoring abidance by a network security provision present in a network is described. The system includes an agent module residing on an end user system which collects data on the system and transmits it to a security server. The security server, under control of a security service provider, contains multiple components for receiving and inspecting data. Also under control of a security service provider is a security database containing end user system data and security rule data, wherein the security server and the security database are in direct communication. Also contained on the security server is a notification module capable of notifying a third party of a security violation. The notification can also include restricting access of the end user system to other components in the network.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • [0012]
    FIG. 1 is an illustration of the various network components and resources for monitoring a workstation in a network in accordance with one embodiment of the present invention.
  • [0013]
    FIGS. 2A and 2B are flow diagrams of an installation process for the monitoring client module on an end-user system in accordance with one embodiment of the present invention.
  • [0014]
    FIGS. 3A and 3B are flow diagrams of a process of creating an entry for a new end user on the server in accordance with one embodiment of the present invention.
  • [0015]
    FIGS. 4A and 4B are flow diagrams of a process of collecting and reporting end user system information on the client module in accordance with one embodiment of the present invention.
  • [0016]
    FIG. 5 is a flow diagram of a process of a collector module on the server receiving data from the client agent in accordance with one embodiment of the present invention.
  • [0017]
    FIGS. 6A and 6B are flow diagrams of a process of the policy inspector determining rule set violations by the end-user system in accordance with one embodiment of the present invention.
  • [0018]
    FIGS. 7A and 7B are flow diagrams of a “watch dog” process in the server that monitors the database for scheduled updates by agents in accordance with one embodiment of the present invention.
  • [0019]
    FIG. 8 is a flow diagram of a process of the notifier handling and transmitting violation notifications to customers in accordance with one embodiment of the present invention.
  • [0020]
    FIG. 9 is a flow diagram of a process in which end-user disconnection requests by the notifier are handled in accordance with one embodiment of the present invention.
  • [0021]
    FIG. 10 is a block/flow diagram showing the various functional components of the security monitoring system of the present invention.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • [0022]
    Reference will now be made in detail to a preferred embodiment of the invention. An example of the preferred embodiment is illustrated in the accompanying drawings. While the invention will be described in conjunction with a preferred embodiment, it will be understood that it is not intended to limit the invention to one preferred embodiment. To the contrary, it is intended to cover alternatives, modifications, and equivalents as may be included within the spirit and scope of the invention as defined by the appended claims.
  • [0023]
    A method of monitoring workstations in a network, for example, a virtual private network (VPN), for security violations is described in the various figures. An entity may have a computer network security policy for its workstations that includes security software programs A, B and C and company security rules X and Y. The entity can adequately safeguard its network, such as a VPN, if employees abide by this computer network security policy. Programs A, B and C must be operational and unmodified and the user must be aware of and abide by security rules X and Y for the security policy to be effective. The present invention allows the company to monitor whether the programs and rules, that is, the company's security policy is in effect. The invention monitors and can notify appropriate parties in the entity of any policy violation and take certain automatic actions, such as denying any further access if appropriate. In addition, the invention will notify the entity when the monitoring software itself is modified or shut down.
  • [0024]
    FIG. 1 is an illustration of the various network components and resources for monitoring a workstation in a network in accordance with one embodiment of the present invention. A client or workstation 102 contains data belonging to an employer and is connected to the internet 104 through an end user LAN 103. A LAN is not necessary, for example if being used from a home office. Workstation 102 can be at an employee's house or be a laptop computer used by an employee while traveling. Agent software 106 resides on workstation 102, installed typically by the employee or employer. Agent 106 causes client 102 to send certain data, described below, to a server 108 under the control of a third-party service provider. Before that, data traffic goes through a managed service unit (MSU) 105 and some type of customer premise equipment (CPE) 107. With respect to MSU 105 or any other type of network perimeter security device or provision, such as a software firewall, the present invention ensures that such a device or provision is installed and operational. Proper installation and non-tampering are treated as rules that must be followed or that are considered to be part of a network security program. If the network perimeter security device or firewall is not installed and operational, this is indicated in a report, described below, and appropriate action is taken.
  • [0025]
    Server 108 has numerous components or modules, including, but not limited to: collector 110, policy inspector 112, notifier 114 and access control 116. Also under the control of the service provider is a data repository 118 holding various types of data including, but not limited to, agent data collection sets or report data 120, exception log 122, rule sets 124, exception notification groups 126, customer information 128 and activity history data 130. The third-party service provider provides security monitoring and management services to customers (e.g., an employer) having workstations on a public network or using a public network to implement a VPN. Notifier component 114 causes server 108 to send a notification to an employer having an interest in the security enforcement of workstation 102. A notification can be sent via email or other means to employer server 132 or premises. A proactive monitor 134 also resides on service provider server 108 and is able to detect when an agent does not send collected data at a scheduled time which is considered a security violation. In a preferred embodiment, there is also a connection to a customer corporate network which has a firewall 136, a VPN head-end 138 and a customer's network, such as an Ethernet network 140.
  • [0026]
    FIGS. 2A and 2B are flow diagrams of an installation process for a monitoring module on an end-user system in accordance with one embodiment of the present invention. At step 202 the client module is downloaded from a service provider website. The module can also be placed directly onto the end-user system from a CD-ROM or other source by the employer without the employee's knowledge. At step 204 an installer program in the client module is executed. Again, this can be executed by the employer or directly by the employee. At step 206 the install program receives data from the person installing the module such as company name, end-user name, and end-user order number. In a preferred embodiment, this information plus other information is sent as a package of data to service provider server 108 via the Internet at step 208. At step 210 of FIG. 2B the service provider server creates a database entry described in FIG. 3. At step 212 the installer program waits for a host ID from the server which uniquely identifies the end-user system. At step 214 the client checks whether a host ID was received. If one was not received, the installer prints an error on the client and the process is aborted at step 216.
  • [0027]
    If a host ID is received, at step 218 the installer program patches the host ID and the necessary binary files into the client and at step 220 places the files and binaries into the appropriate location in the end-user system. In a preferred embodiment, no data is stored on the end-user system outside the client module. The host ID and other data is rewritten into the client module. This enables the monitor module to be invoked when the end-user system boots up. Finally, at step 222 the installer program updates the system settings such as operating system registers and system boot up and the installer then launches the monitor module.
  • [0028]
    FIGS. 3A and 3B are flow diagrams of a process of creating an entry for a new end user on the server in accordance with one embodiment of the present invention. At step 302 the service provider server receives the data package or packet from the new installer program described above. The server obtains the end user order number from the packet at step 304. At step 306 the server validates the end-user, company, and email address obtained from a user data repository that maintains data on all end users and companies. In a preferred embodiment, this data is contained in an operational support system (OSS), a core system that tracks all new installations and customers. At step 308 the server determines whether the end user and company are valid. A class name designation for the end user is retrieved by the server from the user/company data repository 128 at step 308. The class name identifies one or more rule sets to be applied to the end user, described below. For example, an end user may be part of an Accounting Group or an Engineering Group which has its own set of rules. The end user class name identifies the rule sets. At step 310 the server generates a host ID. In a preferred embodiment the host ID is 32 bits long. The server also creates a host entry in the service provider database. At step 312 of FIG. 3B the server checks for a class rule set for the host entry. If one does not exist the server allocates a default rule set to the host entry at step 314. If one does exist, the server allocates the class rule set to the host entry at step 316 and at step 318 the server sends the host ID to the installer program. In a preferred embodiment, the workstation's IP address can be used to apply different rule sets depending on the IP address space allocated for that workstation.
  • [0029]
    FIGS. 4A and 4B are flow diagrams of a process of collecting and reporting end user system information on the client module in accordance with one embodiment of the present invention. At step 402 the module or agent on the client is initialized by system start up. At step 404 the agent collects static data or data that only needs to be collected once after the computer is booted up, such as uptime. At step 406 the agent daemonizes or becomes a background process. At step 408 the agent collects report information that is particular to a period of time while the computer is running and can change from one time frame to the next. At step 410 the agent initializes a Secure Socket Layer (SSL) connection to the collector. The agent then receives the next update time for the next report from the collector at step 412 of FIG. 4B. In a preferred embodiment, this also acts as a confirmation that the previous report was received. At step 414 the agent sends the data package containing the static and report information to the collector. The server then determines whether the end-user system was shutdown during the agent sleep time (time between sending reports) at step 416. If the system was not shut down during the agent sleep the agent awakens at the designated time at step 418 and control returns to step 408 where the agent collects report information. If the system was shut down, at step 420 the agent collects static and other report information as described in step 404 and 408 above and sends the data to the server after opening an SSL connection.
  • [0030]
    FIG. 5 is a flow diagram of a process of a collector module on the server receiving data from the client agent in accordance with one embodiment of the present invention. It describes steps from FIGS. 4A and 4B, however, from the perspective of the security service provider, that is, from the server perspective. At step 502 a collector on the server is invoked or called by the agent or monitoring module on the client. At step 504 the collector negotiates an SSL connection with the agent. The collector then sends the next update time to the agent at step 506 and then receives the data packet from the agent at step 508. After validating the packet, the collector generates a unique report ID number for the data package and posts the report information and the report ID number to the database at step 510. At step 512 the collector invokes the policy inspector and transmits the report ID. At step 514 the collector closes the SSL session with the end user system.
  • [0031]
    FIGS. 6A and 6B are flow diagrams of a process of the policy inspector determining rule set violations by the end user system in accordance with one embodiment of the present invention. After being invoked by the collector and receiving and validating a report ID, the policy inspector retrieves an end user host ID from the database using the report ID at step 602. At step 604 the policy inspector accesses one or more rule sets assigned to the end user host ID. At step 606 the policy inspector evaluates the last agent reset. The inspector determines the reason the agent module was last reset such as termination, reset by user or any other reason. The goal being to determine if anything unusual was done to reset the agent. At step 608 the inspector determines whether the agent has been continually running since the end user system was booted up. If the monitor module or agent has not been running continually since the client booted up, a security violation has occurred. Thus, at step 610, if the policy inspector has not been running continually the violation is recorded in the server. If the module has been running continually the policy inspector applies a group rule set at step 612. A group rule set applies to all end users in a particular group, such as a division in a company or an entire company.
  • [0032]
    It is then determined if a violation occurred based on the group rule set at step 614 of FIG. 6B. If there is a violation the policy inspector records the violation at step 616. Control then goes to step 618 where the policy inspector applies a host rule set which contains security rules that are more specific and may be “customized” to the particular end user. If a violation is detected at step 618 the policy inspector records the violation at step 620. Control then goes to step 622 where the policy inspector determines whether there were any violations based on either the group rule set or the host rule set. If there are none, the process is complete. If there are violations, the policy inspector logs the violations and invokes the notifier at step 624 and the process is complete.
  • [0033]
    FIGS. 7A and 7B are flow diagrams of a “watch dogs” process in the server that monitors the database for scheduled updates by agents in accordance with one embodiment of the present invention. At step 702 a watch monitor scans the database for the next expected report from any of the agents currently running. At step 704 the watch monitor determines whether there are any late reports from any of the agents. If there are no late reports, the watch monitor schedules its own sleep duration as the amount of time before the next report is due from any of the agents plus an additional length of time, such as five seconds in a preferred embodiment at step 706. At step 708 the watch monitor wakes up at its scheduled time and returns to step 702.
  • [0034]
    If there is a late report from a particular agent, at step 710 the watch monitor retrieves the last report ID for that particular agent or end user. At step 712 the watch monitor appends the notice of the security violation, i.e., the late report, to the last report from that agent. At step 714 the IP address of the end user is obtained from the last report and is used to ping the end user for the agent, namely workstation 102. At step 716 the watch monitor determines whether the IP address responds to the ping. If it does, the client is still running and the late report is therefore confirmed as a late report from an active agent. This violation is then recorded by the watch monitor in the database at step 718 and the notifier is invoked or spawned. The watch monitor then schedules its sleep duration as described above and the scan process is repeated.
  • [0035]
    If the IP address does not respond to the ping, at step 720 the watch monitor records the non-response in the database. The watch monitor then logs the IP address in a ping monitoring system in the server which monitors the IP address continuously by performing pings. At step 722 the watch monitor schedules its sleep duration as described above and returns to the beginning of the scanning process when it wakes up.
  • [0036]
    FIG. 8 is a flow diagram of a process of the notifier handling and transmitting violation notifications to customers in accordance with one embodiment of the present invention. At step 802 the notifier is spawned by the watch monitor or the policy inspector as described above. At step 804 the notifier receives and verifies the particular report ID given by the monitor or the inspector. From the report ID, the notifier retrieves the host ID and host information at step 806. At step 808 the notifier retrieves the security violation event information, such as severity of the violation, violation description, end user order number, time, company and IP address. At step 810 the notifier obtains customer notification information from a notification information table in the database. This table contains details on how to contact the appropriate people at the service provider and customer company when a security violation occurs. As will be described below, there can be different levels of notification. For example, if a first group of notification is made and not responded to, a second group of people to notify is contacted. This process is referred to as escalation. At step 812 the notifier logs the security violation event in a violation event table in the database. Finally, at step 814 the notifier causes the actual notification of the appropriate people at the customer company of the violation based on information in the notification table. In a preferred embodiment, the notification can be done by email, page or by creating a trouble ticket, described below. At this stage the process is complete.
  • [0037]
    FIG. 9 is a flow diagram of a process in which end-user disconnection requests by the notifier are handled in accordance with one embodiment of the present invention. At step 902 an access control module is spawned by the notifier. This is done when the notifier determines that the security violation requires that the end user system be disconnected from the network. When this action should be done is determined by the customer and can vary. In some cases it is done at the first sign of any type of security violation while in other cases it is done as a last resort when a violation is egregious. At step 904 the access control module receives end user information from an application program interface (API) such as information on the security violation, the end user order number, end user name and company name. At step 906 the access control module retrieves end user system configuration information from the database. From this information, the module can determine the type of VPN or network the user is on, the address of the remote user, and a security profile indicator or SPI to access the VPN head-end or other appropriate network component. At step 908 the access control module disables the end user VPN service or disconnects the end user from the company network and the process is complete.
  • [0038]
    As mentioned above, the notifier can alert a second group of employees or single employee if the first notification of a security violation did not get a response. This is referred to as escalation. For example, when a security violation occurs, a trouble ticket can be created. If the notifier determines that the trouble ticket is unacknowledged after a certain time frame, a second notification group is notified. The same concept applies to email or pages that have not been responded to. If the trouble ticket is acknowledged, the database is updated accordingly by the escalator component of the notifier. If the trouble ticket is not acknowledged within a certain time frame (i.e., a timeout value has been reached), the escalator component escalates the event level in the database and performs the next level of notification.
  • [0039]
    Event acknowledgements can also be received and recorded by an acknowledger component of the notifier. For responses to email notifications, a system function monitors and captures any replies to email notifications. For example, the subject line or header of an email response is read to determine which report ID or security violation the email is in response to. The acknowledger then retrieves the security violation report from the database and determines whether the report has been previously acknowledged. If it has, the report status is changed to acknowledged. If not, the acknowledger updates the response time to reflect the email notification.
  • [0040]
    Similarly, a response to a security violation can be through entering an acknowledgement through a website or specific web page. The acknowledger determines the report ID from the website records in the database and accesses the appropriate report ID. If the report has been previously acknowledged, the status of the report and other information are changed to reflect this. If the report has not been acknowledged, the acknowledger either updates the response time to reflect the web notification or it does not alter the record.
  • [0041]
    FIG. 10 is a block/flow diagram showing the various functional components of the security monitoring system of the present invention. A box 1002 represents data collection and box 1004 is for server session control, both under an agent component 1006. Agent data collector 1006 collects numerous items of data as shown in box 1002. It collects a unique host id for workstation 102 such as a disk serial number, drive ID and the like, that uniquely identifies the workstation. Also gathered is data about network interfaces, MAC addresses, IP addresses, routing tables, user accounts, network services, such as ports opened, network environment, CPU time, agent uptime and agent confirmation data. This data is collected initially when the workstation is first booted up or turned on and then performed at certain time intervals which may be random or predetermined. If the agent is not invoked on time, the security service provider can detect this by using the CPU uptime and agent uptime data items in box 1002.
  • [0042]
    Server session control 1004 opens or creates a secure socket layer or SSL/TCP channel over a public network, such as the Internet, between the end user system and server 108 under control of the third-party service provider. Server session control 1004 also packages the data and transmits the data to collector module on server 108. Server session control 1004 receives the next update time, that is, the next time data collection is to take place on workstation 102. This update time is used as a confirmation that the collector received the previous data packets.
  • [0043]
    Collector 110 has two functional components as shown in FIG. 10: session control listener 1008 and preprocessor 1010. Listener 1008 receives the collected data from the agent and after receiving all the data, listener 1008 closes the SSL/TCP session.
  • [0044]
    Pre-processor 1010 receives the data from session control listener 1008 and creates a record or report having a unique report_id. The report created has fields or columns closely resembling the data fields gathered by agent data collection module 1002. Preprocessor 1010 posts the report, or record, to data repository 118 and is stored in data collection set area 120 of FIG. 1. This record contains the basic agent monitoring data used to track security policy enforcement. The data can be stored in various formats, for example, a relational database. The preprocessor 1010 signals or spawns the policy inspector.
  • [0045]
    The policy inspector 112 has three functional components: process data module 1012, validate host data module 1014 and new user setup component 1016. If a host_id is new, control goes to new user setup component 1016 which invokes notifier 114 of FIG. 1 and the validate host data component 1014 examines the host information as contained in the record pulled from the data repository 118. Notifier 114 has a process exception logs component 1018 that verifies notification groups and performs notifications. As described, a particular company can have numerous rule sets for a particular workstation. Validate host data module 1014 retrieves all of them and performs a comparison of each rule set with the data in the record. Access control component 116 can be one “member” in a notification group and is used to typically shutdown or deny access to the workstation. In a preferred embodiment access control 116 has a process access control component 1020 containing logic for verifying a requested action and performing the access control event.
  • [0046]
    Each rule set has an identifier and belongs to a particular category such as process identifier, network-based, user accounts and so on. A rule is generally divided up into three parts: Allow, Deny and Require. Under Allow are all items or functions that are allowed by the workstation, such as processes A through D and G. The Deny section of a rule set lists all the programs or processes that are to be denied execution on the workstation. The Require section lists all the programs that are required by the security policy for the workstation, such as a firewall program. If a rule set does not match a particular process that is running, an exception is logged. For example, if process A is running but there is no rule set for process A or, more specifically, the Deny section of any rule set includes process A, an exception is logged.
  • [0047]
    The agent code described can be resident on a firewall or on a workstation. The agent software can function from a firewall that services numerous PCs such as in a home network or on a firewall that services only the workstation. In any scenario, the agent functions in the same manner and contacts the collector of the third-party service provider. The functions of the service provider can be performed at the customer site.
  • [0048]
    Although the foregoing invention has been described in some detail for purposes of clarity of understanding, it will be apparent that certain changes and modifications may be practiced within the scope of the appended claims. Furthermore, it should be noted that there are alternative ways of implementing both the process and apparatus of the present invention. For example, while a VPN is used to describe a preferred embodiment, the present invention is not restricted to VPNs and can be used with other types of computer networks. Accordingly, the present embodiments are to be considered as illustrative and not restrictive, and the invention is not to be limited to the details given herein, but may be modified within the scope and equivalents of the appended claims.
Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
US4130874 *Jun 13, 1977Dec 19, 1978Westinghouse Electric Corp.Load management terminal having plural selectable address formats for a power line communication system
US4138718 *Nov 14, 1977Feb 6, 1979Allen-Bradley CompanyNumerical control system with downloading capability
US4335426 *Mar 10, 1980Jun 15, 1982International Business Machines CorporationRemote processor initialization in a multi-station peer-to-peer intercommunication system
US5111384 *Feb 16, 1990May 5, 1992Bull Hn Information Systems Inc.System for performing dump analysis
US5146568 *Sep 6, 1988Sep 8, 1992Digital Equipment CorporationRemote bootstrapping a node over communication link by initially requesting remote storage access program which emulates local disk to load other programs
US5165017 *Feb 23, 1990Nov 17, 1992Smith & Nephew Richards, Inc.Automatic gain control circuit in a feed forward configuration
US5247683 *Jun 19, 1991Sep 21, 1993International Business Machines CorporationSystem and method for installing software and updating configuration files
US5291543 *Jun 24, 1992Mar 1, 1994Subscriber Computing, Inc.Cellular telephone real time account administration system
US5321840 *Aug 12, 1993Jun 14, 1994Transaction Technology, Inc.Distributed-intelligence computer system including remotely reconfigurable, telephone-type user terminal
US5421009 *Dec 22, 1993May 30, 1995Hewlett-Packard CompanyMethod of remotely installing software directly from a central computer
US5465206 *Nov 1, 1993Nov 7, 1995Visa InternationalElectronic bill pay system
US5483445 *Oct 21, 1993Jan 9, 1996American Express TrsAutomated billing consolidation system and method
US5491791 *Jan 13, 1995Feb 13, 1996International Business Machines CorporationSystem and method for remote workstation monitoring within a distributed computing environment
US5517549 *Dec 3, 1993May 14, 1996Telefonaktiebolaget L M EriccsonCall logging in cellular subscriber stations
US5517555 *Sep 21, 1994May 14, 1996Cellular Technical Services Company, Inc.Real time information system for cellular telephones
US5596643 *Jan 3, 1996Jan 21, 1997Electronic Payment Services, Inc.Network settlement performed on consolidated information
US5596723 *Jun 23, 1994Jan 21, 1997Dell Usa, LpMethod and apparatus for automatically detecting the available network services in a network system
US5603038 *Sep 7, 1994Feb 11, 1997International Business Machines CorporationAutomatic restoration of user options after power loss
US5606497 *Feb 16, 1996Feb 25, 1997Cramer; Milton L.Method and apparatus for recording billable time and services
US5615351 *Jul 7, 1995Mar 25, 1997Bell Communications Research, Inc.Method and system for correlating usage data in a distributed architecture
US5633919 *Jun 6, 1995May 27, 1997Linkusa CorporationReal-time billing system for a call processing system
US5649187 *Sep 29, 1995Jul 15, 1997Softel, Inc.Method and apparatus for remotely controlling and monitoring the use of computer software
US5659601 *May 9, 1995Aug 19, 1997Motorola, Inc.Method of selecting a cost effective service plan
US5666107 *Sep 20, 1995Sep 9, 1997Motorola, Inc.Method and apparatus for efficient roaming among communication system
US5701417 *Mar 27, 1991Dec 23, 1997Microstar LaboratoriesMethod and apparatus for providing initial instructions through a communications interface in a multiple computer system
US5727002 *Jan 16, 1996Mar 10, 1998Starburst Communications CorporationMethods for transmitting data
US5732127 *Dec 21, 1995Mar 24, 1998Erricson, Inc.Real-time network for distributed telecommunication accounting systems
US5768521 *Feb 2, 1996Jun 16, 1998Intel CorporationGeneral purpose metering mechanism for distribution of electronic information
US5787347 *Dec 11, 1995Jul 28, 1998Gte Laboratories IncorporatedMethod and apparatus for selecting a cellular system for communication with a cellular telephone in a roaming area
US5793762 *Jul 6, 1995Aug 11, 1998U S West Technologies, Inc.System and method for providing packet data and voice services to mobile subscribers
US5794221 *Jul 7, 1995Aug 11, 1998Egendorf; AndrewInternet billing method
US5797097 *Nov 2, 1995Aug 18, 1998Bellsouth CorporationMethod and apparatus for identifying the location of a roaming pager
US5826000 *Feb 29, 1996Oct 20, 1998Sun Microsystems, Inc.System and method for automatic configuration of home network computers
US5838907 *Feb 20, 1996Nov 17, 1998Compaq Computer CorporationConfiguration manager for network devices and an associated method for providing configuration information thereto
US5842011 *Sep 12, 1995Nov 24, 1998Digital Equipment CorporationGeneric remote boot for networked workstations by creating local bootable code image
US5852722 *Dec 8, 1997Dec 22, 1998Sun Microsystems, Inc.System and method for automatic configuration of home network computers
US5852812 *Aug 23, 1995Dec 22, 1998Microsoft CorporationBilling system for a network
US5867494 *Nov 18, 1996Feb 2, 1999Mci Communication CorporationSystem, method and article of manufacture with integrated video conferencing billing in a communication system architecture
US5867495 *Nov 18, 1996Feb 2, 1999Mci Communications CorporationsSystem, method and article of manufacture for communications utilizing calling, plans in a hybrid network
US5867661 *Feb 15, 1996Feb 2, 1999International Business Machines CorporationMethod and apparatus of using virtual sockets for reducing data transmitted over a wireless communication link between a client web browser and a host web server using a standard TCP protocol
US5893077 *Aug 23, 1995Apr 6, 1999Microsoft CorporationMethod and apparatus for generating and collecting a billing event object within an on-line network
US5898780 *Oct 9, 1996Apr 27, 1999Gric Communications, Inc.Method and apparatus for authorizing remote internet access
US5909544 *Aug 23, 1995Jun 1, 1999Novell Inc.Automated test harness
US5920821 *Dec 4, 1995Jul 6, 1999Bell Atlantic Network Services, Inc.Use of cellular digital packet data (CDPD) communications to convey system identification list data to roaming cellular subscriber stations
US5922050 *Jul 2, 1996Jul 13, 1999Sun Microsystems, Inc.Method and apparatus for controlling a device on a network
US5970126 *Jun 3, 1997Oct 19, 1999International Business Machines CorporationCommunication method and system
US5980078 *Feb 14, 1997Nov 9, 1999Fisher-Rosemount Systems, Inc.Process control system including automatic sensing and automatic configuration of devices
US6006090 *Apr 28, 1993Dec 21, 1999Proxim, Inc.Providing roaming capability for mobile computers in a standard network
US6012088 *Dec 10, 1996Jan 4, 2000International Business Machines CorporationAutomatic configuration for internet access device
US6014659 *Jun 7, 1995Jan 11, 2000Cabletron Systems, Inc.Compressed prefix matching database searching
US6047327 *Feb 16, 1996Apr 4, 2000Intel CorporationSystem for distributing electronic information to a targeted group of users
US6049826 *Feb 4, 1998Apr 11, 20003Com CorporationMethod and system for cable modem initialization using dynamic servers
US6069890 *Jun 26, 1996May 30, 2000Bell Atlantic Network Services, Inc.Internet telephone service
US6073172 *Jul 14, 1997Jun 6, 2000Freegate CorporationInitializing and reconfiguring a secure network interface
US6078582 *Dec 18, 1996Jun 20, 2000Bell Atlantic Network Services, Inc.Internet long distance telephone service
US6098098 *Nov 14, 1997Aug 1, 2000Enhanced Messaging Systems, Inc.System for managing the configuration of multiple computer devices
US6128729 *Dec 16, 1997Oct 3, 2000Hewlett-Packard CompanyMethod and system for automatic configuration of network links to attached devices
US6137805 *Feb 10, 1997Oct 24, 2000International Business Machines CorporationMethod and apparatus to remotely configure a data processing system
US6141684 *Sep 12, 1997Oct 31, 2000Nortel Networks LimitedMultimedia public communication services distribution method and apparatus with distribution of configuration files
US6157648 *Sep 16, 1997Dec 5, 2000Bell Atlantic Network Services, Inc.Network session management
US6161133 *Oct 19, 1998Dec 12, 2000Lexton Systems, Inc.Method and apparatus for configuration of an internet appliance
US6178468 *Jun 19, 1998Jan 23, 2001Hewlett-Packard CompanyReal time supply PF plug-and-play installation resources
US6195694 *Nov 19, 1997Feb 27, 2001International Business Machines CorporationServer for reconfiguring control of a subset of devices on one or more kiosks
US6202157 *Dec 8, 1997Mar 13, 2001Entrust Technologies LimitedComputer network security system and method having unilateral enforceable security policy provision
US6212558 *Dec 24, 1997Apr 3, 2001Anand K. AnturMethod and apparatus for configuring and managing firewalls and security devices
US6229804 *Nov 17, 1998May 8, 20013Com CorporationGatekeeper election methods for internet telephony
US6243815 *Dec 24, 1997Jun 5, 2001Anand K. AnturMethod and apparatus for reconfiguring and managing firewalls and security devices
US6286038 *Aug 3, 1998Sep 4, 2001Nortel Networks LimitedMethod and apparatus for remotely configuring a network device
US6295556 *Nov 18, 1997Sep 25, 2001Microsoft CorporationMethod and system for configuring computers to connect to networks using network connection objects
US6301012 *Apr 24, 1998Oct 9, 2001Hewlett-Packard CompanyAutomatic configuration of a network printer
US6301612 *Aug 12, 1998Oct 9, 2001Microsoft CorporationEstablishing one computer as a replacement for another computer
US6314459 *Aug 13, 1998Nov 6, 2001U.S. Philips CorporationHome-network autoconfiguration
US6334147 *Nov 30, 1998Dec 25, 2001International Business Machines CorporationData processing system and method for remotely accessing a client computer systems's individual initialization settings while the client is powered off
US6345294 *Apr 19, 1999Feb 5, 2002Cisco Technology, Inc.Methods and apparatus for remote configuration of an appliance on a network
US6370141 *Apr 29, 1998Apr 9, 2002Cisco Technology, Inc.Method and apparatus for configuring an internet appliance
US6385648 *Nov 2, 1998May 7, 2002Nortel Networks LimitedMethod for initializing a box on a data communications network
US6408334 *Jan 13, 1999Jun 18, 2002Dell Usa, L.P.Communications system for multiple computer system management circuits
US6412025 *Mar 31, 1999Jun 25, 2002International Business Machines CorporationApparatus and method for automatic configuration of a personal computer system when reconnected to a network
US6434611 *Dec 20, 1996Aug 13, 2002Mci Communications CorporationSystem and method for message-based real-time reconfiguration of a network by broadcasting an activation signal to activate a new connection configuration
US6449642 *Sep 15, 1998Sep 10, 2002Microsoft CorporationMethod and system for integrating a client computer into a computer network
US6530024 *Nov 20, 1998Mar 4, 2003Centrax CorporationAdaptive feedback security system and method
US6711693 *Aug 31, 2000Mar 23, 2004Hewlett-Packard Development Company, L.P.Method for synchronizing plurality of time of year clocks in partitioned plurality of processors where each partition having a microprocessor configured as a multiprocessor backplane manager
US6735701 *Jun 25, 1998May 11, 2004Macarthur Investments, LlcNetwork policy management and effectiveness system
US6854010 *Jun 25, 2001Feb 8, 2005Bluecube Software, Inc.Multi-location management system
US6874087 *Jul 13, 1999Mar 29, 2005International Business Machines CorporationIntegrity checking an executable module and associated protected service provider module
US6990591 *Dec 22, 1999Jan 24, 2006Secureworks, Inc.Method and system for remotely configuring and monitoring a communication device
US7213068 *Nov 9, 2000May 1, 2007Lucent Technologies Inc.Policy management system
US20020002706 *Apr 6, 2001Jan 3, 2002Sprunk Eric J.Authentication and authorization epochs
US20020078382 *May 15, 2001Jun 20, 2002Ali SheikhScalable system for monitoring network system and components and methodology therefore
US20020095591 *Jan 12, 2001Jul 18, 2002Daniell William T.System and method for protecting a security profile of a computer system
US20020099958 *Jan 25, 2001Jul 25, 2002Michael HrabikMethod and apparatus for verifying the integrity of computer networks and implementation of counter measures
US20020112182 *Dec 15, 2000Aug 15, 2002Ching-Jye ChangMethod and system for network management with adaptive monitoring and discovery of computer systems based on user login
US20030014658 *Jul 11, 2001Jan 16, 2003Walker Philip M.System and method of verifying system attributes
Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US7380267 *Oct 17, 2003May 27, 2008Hitachi, Ltd.Policy setting support tool
US7551073Jan 10, 2007Jun 23, 2009International Business Machines CorporationMethod, system and program product for alerting an information technology support organization of a security event
US7747730 *Jun 28, 2002Jun 29, 2010Netfuel, Inc.Managing computer network resources
US8116317 *Jan 31, 2006Feb 14, 2012Microsoft CorporationPreventing quality of service policy abuse in a network
US8131851May 27, 2010Mar 6, 2012Netfuel IncManaging computer network resources
US8201223 *Nov 2, 2007Jun 12, 2012Joanne WalkerSystems and methods for computer implemented treatment of behavorial disorders
US8281019Sep 27, 2007Oct 2, 2012Symantec CorporationMethod and system for scanning network devices
US8438609May 7, 2013The Invention Science Fund I, LlcResource authorizations dependent on emulation environment isolation policies
US8495708Mar 22, 2007Jul 23, 2013The Invention Science Fund I, LlcResource authorizations dependent on emulation environment isolation policies
US8522304Sep 8, 2006Aug 27, 2013Ibahn General Holdings CorporationMonitoring and reporting policy compliance of home networks
US8561154 *Dec 22, 2003Oct 15, 2013International Business Machines CorporationMethod for providing network perimeter security assessment
US8814691Mar 16, 2011Aug 26, 2014Microsoft CorporationSystem and method for social networking gaming with an augmented reality
US8874425Jun 28, 2007Oct 28, 2014The Invention Science Fund I, LlcImplementing performance-dependent transfer or execution decisions from service emulation indications
US9069599 *Jan 19, 2012Jun 30, 2015Servicemesh, Inc.System and method for a cloud computing abstraction layer with security zone facilities
US9071646Sep 13, 2013Jun 30, 2015International Business Machines CorporationMethod, apparatus and program storage device for providing network perimeter security assessment
US9091851Jan 25, 2012Jul 28, 2015Microsoft Technology Licensing, LlcLight control in head mounted displays
US9097890Mar 25, 2012Aug 4, 2015Microsoft Technology Licensing, LlcGrating in a light transmissive illumination system for see-through near-eye display glasses
US9097891Mar 26, 2012Aug 4, 2015Microsoft Technology Licensing, LlcSee-through near-eye display glasses including an auto-brightness control for the display brightness based on the brightness in the environment
US9106681 *Dec 17, 2012Aug 11, 2015Hewlett-Packard Development Company, L.P.Reputation of network address
US9128281Sep 14, 2011Sep 8, 2015Microsoft Technology Licensing, LlcEyepiece with uniformly illuminated reflective display
US9129295Mar 26, 2012Sep 8, 2015Microsoft Technology Licensing, LlcSee-through near-eye display glasses with a fast response photochromic film system for quick transition from dark to clear
US9134534Mar 26, 2012Sep 15, 2015Microsoft Technology Licensing, LlcSee-through near-eye display glasses including a modular image source
US9182596Mar 26, 2012Nov 10, 2015Microsoft Technology Licensing, LlcSee-through near-eye display glasses with the optical assembly including absorptive polarizers or anti-reflective coatings to reduce stray light
US9223134Mar 25, 2012Dec 29, 2015Microsoft Technology Licensing, LlcOptical imperfections in a light transmissive illumination system for see-through near-eye display glasses
US9229227Mar 25, 2012Jan 5, 2016Microsoft Technology Licensing, LlcSee-through near-eye display glasses with a light transmissive wedge shaped illumination system
US9285589Jan 3, 2012Mar 15, 2016Microsoft Technology Licensing, LlcAR glasses with event and sensor triggered control of AR eyepiece applications
US9325799Jun 10, 2014Apr 26, 2016Joanne WalkerSystems and methods for computer implemented treatment of behavioral disorders
US9329689Mar 16, 2011May 3, 2016Microsoft Technology Licensing, LlcMethod and apparatus for biometric data capture
US9341843Mar 26, 2012May 17, 2016Microsoft Technology Licensing, LlcSee-through near-eye display glasses with a small scale image source
US9366862Mar 26, 2012Jun 14, 2016Microsoft Technology Licensing, LlcSystem and method for delivering content to a group of see-through near eye display eyepieces
US20040193606 *Oct 17, 2003Sep 30, 2004Hitachi, Ltd.Policy setting support tool
US20050097199 *Oct 10, 2003May 5, 2005Keith WoodardMethod and system for scanning network devices
US20050177746 *Dec 22, 2003Aug 11, 2005International Business Machines CorporationMethod for providing network perimeter security assessment
US20060203736 *Mar 10, 2005Sep 14, 2006Stsn General Holdings Inc.Real-time mobile user network operations center
US20070177610 *Jan 31, 2006Aug 2, 2007Microsoft CorporationPreventing Quality Of Service Policy Abuse In A Network
US20080059123 *Aug 29, 2006Mar 6, 2008Microsoft CorporationManagement of host compliance evaluation
US20080066145 *Sep 8, 2006Mar 13, 2008Ibahn General Holdings, Inc.Monitoring and reporting policy compliance of home networks
US20080077663 *Nov 29, 2007Mar 27, 2008Lehman Brothers Inc.Method and System For Identifying And Conducting Inventory Of Computer Assets On A Network
US20080109872 *Nov 2, 2007May 8, 2008Joanne WalkerSystems and methods for computer implemented treatment of behavorial disorders
US20080168531 *Jan 10, 2007Jul 10, 2008International Business Machines CorporationMethod, system and program product for alerting an information technology support organization of a security event
US20080234999 *Mar 22, 2007Sep 25, 2008Searete Llc, A Limited Liability Corporation Of The State Of DelawareImplementing performance-dependent transfer or execution decisions from service emulation indications
US20080235000 *Mar 22, 2007Sep 25, 2008Searete Llc, A Limited Liability Corporation Of The State Of DelawareImplementing security control practice omission decisions from service emulation indications
US20080235001 *Mar 22, 2007Sep 25, 2008Searete Llc, A Limited Liability Corporation Of The State Of DelawareImplementing emulation decisions in response to software evaluations or the like
US20080235002 *Jun 28, 2007Sep 25, 2008Searete LlcImplementing performance-dependent transfer or execution decisions from service emulation indications
US20080235711 *Mar 22, 2007Sep 25, 2008Searete Llc, A Limited Liability Corporation Of The State Of DelawareCoordinating instances of a thread or other service in emulation
US20080235756 *Jun 28, 2007Sep 25, 2008Searete Llc, A Limited Liability Corporation Of The State Of DelawareResource authorizations dependent on emulation environment isolation policies
US20080235764 *Mar 22, 2007Sep 25, 2008Searete Llc, A Limited Liability Corporation Of The State Of DelawareResource authorizations dependent on emulation environment isolation policies
US20100332630 *May 27, 2010Dec 30, 2010Netfuel,IncManaging Computer Network Resources
US20110221657 *Sep 15, 2011Osterhout Group, Inc.Optical stabilization of displayed content with a variable lens
US20120185913 *Jan 19, 2012Jul 19, 2012Servicemesh, Inc.System and method for a cloud computing abstraction layer with security zone facilities
US20140173723 *Dec 17, 2012Jun 19, 2014Hewlett-Packard Development Company, L.P.Reputation of network address
Classifications
U.S. Classification726/23
International ClassificationH04L29/06, G06F11/30
Cooperative ClassificationH04L63/0272, H04L63/20, H04L63/14, H04L63/102, H04L63/166
European ClassificationH04L63/20, H04L63/10B, H04L63/02C
Legal Events
DateCodeEventDescription
Jun 10, 2002ASAssignment
Owner name: AXCELERANT, INC., CALIFORNIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HEINTZ, ROBERT;CHRISTY, JEFFREY A.;REEL/FRAME:013002/0753;SIGNING DATES FROM 20020602 TO 20020603
Owner name: AXCELERANT, INC., CALIFORNIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HEINTZ, ROBERT;CHRISTY, JEFFREY A.;SIGNING DATES FROM 20020602 TO 20020603;REEL/FRAME:013002/0753
Jan 18, 2007ASAssignment
Owner name: GOREMOTE INTERNET COMMUNICATIONS, INC. (F/K/A GRIC
Free format text: MERGER;ASSIGNOR:AXCELERANT, INC.;REEL/FRAME:018784/0577
Effective date: 20030813
Owner name: GOREMOTE INTERNET COMMUNICATIONS, INC. (A WHOLLY O
Free format text: MERGER;ASSIGNOR:GOREMOTE INTERNET COMMUNICATIONS, INC. (F/K/A GRIC COMMUNICATIONS, INC.);REEL/FRAME:018784/0756
Effective date: 20060215
Jul 23, 2012ASAssignment
Owner name: IPASS INC., CALIFORNIA
Free format text: MERGER;ASSIGNOR:GOREMOTE INTERNET COMMUNICATIONS, INC.;REEL/FRAME:028612/0163
Effective date: 20120718
Feb 4, 2015FPAYFee payment
Year of fee payment: 4