This application is a non-provisional of U.S. Provisional Application No. 62/172,251, entitled SYSTEM AND METHOD FOR CREATION, DEPLOYMENT AND MANAGEMENT OF AUGMENTED ATTACKER MAP, and filed on Jun. 8, 2015 by inventors Shlomo Touboul, Hanan Levin, Stephane Roubach, Assaf Mischari, Itai Ben David, Itay Avraham, Adi Ozer, Chen Kazaz, Ofer Israeli, Olga Vingurt, Liad Gareh, Israel Grimberg, Cobby Cohen and Sharon Sultan, the contents of which are hereby incorporated herein in their entirety.
This application is a non-provisional of U.S. Provisional Application No. 62/172,253, entitled SYSTEM AND METHOD FOR MULTI-LEVEL DECEPTION MANAGEMENT AND DECEPTION SYSTEM FOR MALICIOUS ACTIONS IN A COMPUTER NETWORK, and filed on Jun. 8, 2015 by inventors Shlomo Touboul, Hanan Levin, Stephane Roubach, Assaf Mischari, Itai Ben David, Itay Avraham, Adi Ozer, Chen Kazaz, Ofer Israeli, Olga Vingurt, Liad Gareh, Israel Grimberg, Cobby Cohen and Sharon Sultan, the contents of which are hereby incorporated herein in their entirety.
This application is a non-provisional of U.S. Provisional Application No. 62/172,255, entitled METHODS AND SYSTEMS TO DETECT, PREDICT AND/OR PREVENT AN ATTACKER'S NEXT ACTION IN A COMPROMISED NETWORK, and filed on Jun. 8, 2015 by inventors Shlomo Touboul, Hanan Levin, Stephane Roubach, Assaf Mischari, Itai Ben David, Itay Avraham, Adi Ozer, Chen Kazaz, Ofer Israeli, Olga Vingurt, Liad Gareh, Israel Grimberg, Cobby Cohen and Sharon Sultan, the contents of which are hereby incorporated herein in their entirety.
This application is a non-provisional of U.S. Provisional Application No. 62/172,259, entitled MANAGING DYNAMIC DECEPTIVE ENVIRONMENTS, and filed on Jun. 8, 2015 by inventors Shlomo Touboul, Hanan Levin, Stephane Roubach, Assaf Mischari, Itai Ben David, Itay Avraham, Adi Ozer, Chen Kazaz, Ofer Israeli, Olga Vingurt, Liad Gareh, Israel Grimberg, Cobby Cohen and Sharon Sultan, the contents of which are hereby incorporated herein in their entirety.
This application is a non-provisional of U.S. Provisional Application No. 62/172,261, entitled SYSTEMS AND METHODS FOR AUTOMATICALLY GENERATING NETWORK ENTITY GROUPS BASED ON ATTACK PARAMETERS AND/OR ASSIGNMENT OF AUTOMATICALLY GENERATED SECURITY POLICIES, and filed on Jun. 8, 2015 by inventors Shlomo Touboul, Hanan Levin, Stephane Roubach, Assaf Mischari, Itai Ben David, Itay Avraham, Adi Ozer, Chen Kazaz, Ofer Israeli, Olga Vingurt, Liad Gareh, Israel Grimberg, Cobby Cohen and Sharon Sultan, the contents of which are hereby incorporated herein in their entirety.
The present invention relates to cyber security, and in particular to computer network surveillance.
Reference is made to
Access to computers 110 and servers 120 in network 100 may optionally be governed by an access governor 150, such as a directory service, that authorizes users to access computers 110 and servers 120 based on “credentials” and other methods of authentication. Access governor 150 may be a name directory, such as ACTIVE DIRECTORY® developed by Microsoft Corporation of Redmond, Wash., for WINDOWS® environments. Background information about ACTIVE DIRECTORY® is available at Wikipedia. Other access governors for WINDOWS and non-WINDOWS environments include inter alia Lightweight Directory Access Protocol (LDAP), Remote Authentication Dial-In User Service (RADIUS), and Apple Filing Protocol (AFP), formerly APPLETALK®, developed by Apple Inc. of Cupertino, Calif. Background information about LDAP, RADIUS and AFP is available at Wikipedia.
Access governor 150 may be one or more local machine access controllers. For networks that do not include an access governor, authentication may be performed by other servers 120. Alternatively, in lieu of access governor 150, resources of network 100 determine their local access rights.
Credentials for accessing computers 110 and servers 120 include inter alia server account credentials such as <address> <username> <password> for an FTP server, a database server, or an SSH server. Credentials for accessing computers 110 and servers 120 also include user login credentials <username> <password>, or <username> <ticket>, where “ticket” is an authentication ticket, such as a ticket for the Kerberos authentication protocol or NTLM hash used by Microsoft Corp., or login credentials via certificates or via another method of authentication. Background information about the Kerberos protocol and LM hashes is available at Wikipedia.
Access governor 150 may maintain a directory of computers 110, servers 120 and their users. Access governor 150 authorizes users and computers, assigns and enforces security policies, and installs and updates software.
Computers 110 may run a local or remote security service, which is an operating system process that verifies users logging in to computers and to other single sign-on systems and to other credential storage systems.
Network 100 may include a security information and event management (SIEM) server 160, which provides real-time analysis of security alerts generated by network hardware and applications. Background information about SIEM is available at Wikipedia.
Network 100 may include a domain name system (DNS) server 170, or such other name service system, for translating domain names to IP addresses. Background information about DNS is available at Wikipedia.
Network 100 may include a firewall 180 located within a gateway between enterprise network 100 and external internet 10. Firewall 180 controls incoming and outgoing traffic for network 100. Background information about firewalls is available at Wikipedia.
One of the most prominent threats that organizations face is a targeted attack; i.e., an individual or group of individuals that attacks the organization for a specific purpose, such as stealing data, using data and systems, modifying data and systems, and sabotaging data and systems. Targeted attacks are carried out in multiple stages, typically including inter alia reconnaissance, penetration, lateral movement and payload. Lateral movement involves orientation, movement and propagation, and includes establishing a foothold within the organization and expanding that foothold to additional systems within the organization.
In order to carry out the lateral movement stage, an attacker, whether a human being who is operating tools within the organization's network, or a tool with “learning” capabilities, learns information about the environment it is operating in, such as network topology, network devices and organization structure, learns “where can I go from my current location” and “how can I go from my current location to another location (privilege required)”, learns implemented security solutions, learns applications that he can leverage, and then operates in accordance with that data.
An advanced attacker may use different attack techniques to enter a corporate network and to move laterally within the network in order to obtain his resource goals. The advanced attacker may begin with a workstation, server or any other network entity to start his lateral movement. He uses different methods to enter the network, including inter alia social engineering, existing exploit and/or vulnerability, and a Trojan horse or any other malware allowing him to control a first node or nodes.
Once an attacker has taken control of a first node in a corporate network, he uses different advanced attack techniques for orientation and propagation and discovery of additional ways to reach other network nodes in the corporate network. Attacker movement from node to node is performed via an “attack vector”, which is an object discovered by the attacker, including inter alia an object in memory or storage of a first computer that may be used to access or discover a second computer.
Exemplary attack vectors include inter alia credentials of users with escalated privileges, existing share names on different servers and workstations, and details including address and credentials of an FTP server, an email server, a database server or an SSH server. Attack vectors are often available to an attacker because a user did not log off of his workstation, did not log out of an application, or did not clear his cache. E.g., if a user contacted a help desk and gave a help desk administrator remote access to his workstation and if the help desk administrator did not properly log off from the remote access session to the users workstation, then the help desk access credentials may still be stored in the user's local cache and available to the attacker. Similarly, if the user accessed a server, e.g., an FTP server, then the FTP account login parameters may be stored in the user's local cache or profile and available to the attacker.
Attack vectors enable inter alia a move from workstation A→server B based on a shared server host name and its credentials, connection to a different workstation using local admin credentials that reside on a current workstation, and connection to an FTP server using specific access credentials.
Whereas IT “sees” the logical and physical network topology, an attacker that lands on a first network node “sees” attack vectors that depart from that node and move laterally to other nodes. The attacker can move to such nodes and then follow “attack paths” by successively discovering attack vectors from node to node.
When the attacker implements such a discovery process on all nodes in the network, he will be able to “see” all attack vectors of the corporate network and generate a “complete attack map”. Before the attacker discovers all attack vectors on network nodes and completes the discovery process, he generates a “current attack map” that is currently available to him.
An objective of the attacker is to discover an attack path that leads him to a target network node. The target may be a bank authorized server that is used by the corporation for ordering bank account transfers of money, it may be an FTP server that updates the image of all corporate points of sale, it may be a server or workstation that stores confidential information such as source code and secret formulas of the corporation, or it may be any other network nodes that are of value to the attacker and are his “attack goal nodes”.
When the attacker lands on the first node, but does not know how to reach the attack goal node, he generates a current attack map that leads to the attack goal node.
One method to defend against such attacks, termed “honeypots”, is to plant and to monitor bait resources, with the objective that the attacker discover their existence and then consume the bait resources, and to notify an administrator of the malicious activity. Background information about honeypots is available at Wikipedia.
Conventional honeypot systems operate by monitoring access to a supervised element in a computer network, the supervised element being a fake server or a fake service. Access monitoring generates many false alerts, caused by non-malicious access from automatic monitoring systems and by user mistakes. Conventional systems try to mitigate this problem by adding a level of interactivity to the honeypot, and by performing behavioral analysis of suspected malware if it has infected the honeypot itself.
One of the drawbacks with conventional security systems based on attack parameters, is that security policy creation and assignment require manual intervention.
In distinction to conventional honeypot systems that employ bait resources and react to suspicious interaction with those resources, embodiments of the present invention plant deceptions in the form of decoy attack vectors, as described herein, which proactively lure an attacker to make specific lateral moves within an enterprise network.
Embodiments of the present invention automatically create network entity groups and security policies based on data gathered from organizational network machines and other knowledge bases, including inter alia firewall logs, in addition to data from directory services, including inter alia Active Directory. As such, these embodiments provide automated and more suitable security policy distribution of deceptions over the organization's machines.
There is thus provided in accordance with an embodiment of the present invention a cyber security system to detect attackers within a network of resources, including a network data collector collecting data regarding an enterprise network, the data including network resources and their operating systems, users and their privileges, installed applications, open ports, previous logged on users, browser histories, vault content and shares, from data sources including a directory service, the network resources, knowledge bases including firewall logs, and in/out ports of machines, a learning module analyzing the data collected by the network data collector, determining therefrom groupings of the network resources into at least two groups, and assigning a customized decoy policy to each group of resources, wherein a decoy policy for a group of resources includes one or more decoy attack vectors, and one or more resources in the group in which the one or more decoy attack vectors are to be planted, and wherein an attack vector is an object of a first resource that may be used to access or to discover a second resource, and a decoy deployer planting, for each group of resources, one or more decoy attack vectors in one or more resources in that group, in accordance with the decoy policy for that group.
There is additionally provided in accordance with an embodiment of the present invention a cyber security method for detecting attackers within a network of resources, including collecting data regarding an enterprise network, the data including network resources and their operating systems, users and their privileges, installed applications, open ports, previous logged on users, browser histories, vault content and shares, from data sources including a directory service, the network resources, knowledge bases including firewall logs, and in/out ports of machines, analyzing the data collected by the collecting data, determining groupings of the network resources into at least two groups, assigning a customized decoy policy to each group of resources, wherein a decoy policy for a group of resources comprises one or more decoy attack vectors, and one or more resources in the group in which the one or more decoy attack vectors are to be planted, and wherein an attack vector is an object of a first resource that may be used to access or to discover a second resource, and planting, for each group of resources, one or more decoy attack vectors in one or more resources in that group, in accordance with the decoy policy for that group.
The present invention will be more fully understood and appreciated from the following detailed description, taken in conjunction with the drawings in which:
For reference to the figures, the following index of elements and their numerals is provided. Similarly numbered elements represent elements of the same type, but they need not be identical elements.
Elements numbered in the 1000's are operations of flow charts.
In accordance with embodiments of the present invention, systems and methods are provided for dynamically managing decoy policies for an enterprise network, which adapt to changes that occur in the network environment.
Reference is made to
Database 220 stores attack vectors that fake movement and access to computers 110, servers 120 and other resources in network 200. Each decoy attack vector in database 220 may point to (i) a real resource that exists within network 200, e.g., an FTP server, (ii) a decoy resource that exists within network 200, e.g., a trap server, or (iii) a resource that does not exist. In the latter case, when an attacker attempts to access a resource that does not exist, access governor 150 recognizes a pointer to a resource that is non-existent. Access governor 150 responds by notifying management server 210, or by re-directing the pointer to a resource that does exist in order to survey the attacker's moves, or both.
Decoy attack vectors proactively lure an attacker to make specific lateral moves within network 200. Attack vectors include inter alia:
The attack vectors stored in database 220 are categorized by families, such as inter alia
Credentials for a computer B that reside on a computer A, or even an address pointer to computer B that resides on computer A, provide an attack vector for an attacker from computer A→computer B.
Database 220 communicates with an update server 260, which updates database 220 as new types of attack vectors for accessing, manipulating and hopping to computers evolve over time. Update server 260 may be a separate server, or a part of management server 210.
Policy database 230 stores policies for planting decoy attack vectors in computers of network 200. Each policy specifies decoy attack vectors that are planted on the computers, in accordance with attack vectors stored in database 220. For user credentials, the decoy attack vectors planted on a computer lead to another resource in the network. For attack vectors to access an FTP or other server, the decoy attack vectors planted on a computer lead to a decoy server 240.
It will be appreciated by those skilled in the art the databases 220 and 230 may be combined into a single database, or distributed over multiple databases.
Management server 210 includes a policy manager 211, a deployment module 212, a forensic application 213, a data collector 214 and a learning module 215. Policy manager 211 defines a decoy and response policy. The decoy and response policy defines different decoy types, different decoy combinations, response procedures, notification services, and assignments of policies to specific network nodes, network users, groups of nodes or users or both. Once policies are defined, they are stored in policy database 230 with the defined assignments.
Management server 210 obtains the policies and their assignments from policy database 230, and delivers them to appropriate nodes and groups. It than launches deployment module 212 to plant decoys on end points, servers, applications, routers, switches, relays and other entities in the network. Deployment module 212 plants each decoy, based on its type, in memory (RAM), disk, or in any other data or information storage area, as appropriate. Deployment module 212 plants the decoy attack vectors in such a way that the chances of a valid user accessing the decoy attack vectors are low. Deployment module 212 may or may not stay resident.
Forensic application 213 is a real-time application that is transmitted to a destination computer in the network, when a decoy attack vector is accessed by a computer 110. When forensic application 213 is launched on the destination computer, it identifies a process running within that computer 110 that accessed that decoy attack vector, logs the activities performed by the thus-identified process in a forensic report, and transmits the forensic report to management server 210.
Once an attacker is detected, a “response procedure” is launched. The response procedure includes inter alia various notifications to various addresses, and actions on a decoy server such as launching an investigation process, and isolating, shutting down and re-imaging one or more network nodes. The response procedure collects information available on one or more nodes that may help in identifying the attacker's attack acts, intention and progress.
Each decoy server 240 includes a forensic alert module 242, which alerts management system 210 that an attacker is accessing the decoy server via a computer 110 of the network, and causes management server 210 to send forensic application 213 to the computer that is accessing the decoy server. In an alternative embodiment of the present invention, decoy server 240 may store forensic application 213, in which case decoy server 240 may transmit forensic application 213 directly to the computer that is accessing the decoy server. In another alternative embodiment of the present invention, management server 210 or decoy server 240 may transmit forensic application 213 to a destination computer other than the computer that is accessing the decoy server. Access governor 150 also activates a forensic alert module 252, which alerts management server 210 that an attacker is attempting to use a decoy credential.
Notification servers (not shown) are notified when an attacker uses a decoy. The notification servers may discover this by themselves, or by using information stored on access governor 150 and SIEM 160. The notification servers forward notifications, or results of processing multiple notifications, to create notification time lines or such other analytics.
As shown in
Data collector 214 collects data regarding network 200: (i) from access governor 150, the collected data comprising network resources and their operating systems, and users and their privileges, (ii) from the network resources, the collected data comprising installed applications, open ports, previous logged on users, browser histories, vault content and shares, (iii) from knowledge bases comprising firewall logs, the collected data including other network data, and (iv) from in/out ports of machines, the collected data including other network data.
Learning module 215 analyzes the data collected by data collector 214, determines groupings of computers, G1, G2, . . . , and assigns a decoy policy to each thus-determined group of computers.
Reference is made to
Learning module 215 analyzes the data collected by data collector 214, and generates virtual groups G1, G2, . . . , and customized attack vectors for each virtual group.
Reference is made to
Reference is made to
Reference is made to
In the foregoing specification, the invention has been described with reference to specific exemplary embodiments thereof. It will, however, be evident that various modifications and changes may be made to the specific exemplary embodiments without departing from the broader spirit and scope of the invention. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.
Number | Name | Date | Kind |
---|---|---|---|
6363489 | Comay et al. | Mar 2002 | B1 |
6618709 | Sneeringer | Sep 2003 | B1 |
7089589 | Chefalas et al. | Aug 2006 | B2 |
7093291 | Bailey | Aug 2006 | B2 |
7574741 | Aviani et al. | Aug 2009 | B2 |
7636944 | Raikar | Dec 2009 | B2 |
7665134 | Hernacki et al. | Feb 2010 | B1 |
7694339 | Blake et al. | Apr 2010 | B2 |
7725937 | Levy | May 2010 | B1 |
7752664 | Satish et al. | Jul 2010 | B1 |
8015284 | Isenberg | Sep 2011 | B1 |
8181249 | Chow et al. | May 2012 | B2 |
8181250 | Rafalovich et al. | May 2012 | B2 |
8375447 | Amoroso et al. | Feb 2013 | B2 |
8499348 | Rubin | Jul 2013 | B1 |
8528091 | Bowen et al. | Sep 2013 | B2 |
8549642 | Lee | Oct 2013 | B2 |
8549643 | Shou | Oct 2013 | B1 |
8719938 | Chasko et al. | May 2014 | B2 |
8739281 | Wang et al. | May 2014 | B2 |
8769684 | Stolfo et al. | Jul 2014 | B2 |
8819825 | Keromytis et al. | Aug 2014 | B2 |
8856928 | Rivner et al. | Oct 2014 | B1 |
9009829 | Stolfo et al. | Apr 2015 | B2 |
9043905 | Allen | May 2015 | B1 |
9152808 | Ramalingam | Oct 2015 | B1 |
20020066034 | Schlossberg et al. | May 2002 | A1 |
20030084349 | Friedrichs et al. | May 2003 | A1 |
20030145224 | Bailey | Jul 2003 | A1 |
20040160903 | Gai et al. | Aug 2004 | A1 |
20040172557 | Nakae | Sep 2004 | A1 |
20040255155 | Stading | Dec 2004 | A1 |
20060224677 | Ishikawa et al. | Oct 2006 | A1 |
20070028301 | Shull et al. | Feb 2007 | A1 |
20070192853 | Shraim et al. | Aug 2007 | A1 |
20080016570 | Capalik | Jan 2008 | A1 |
20080086773 | Tuvell et al. | Apr 2008 | A1 |
20080155693 | Mikan | Jun 2008 | A1 |
20090019547 | Palliyil et al. | Jan 2009 | A1 |
20090222920 | Chow | Sep 2009 | A1 |
20090241191 | Keromytis et al. | Sep 2009 | A1 |
20090241196 | Troyansky et al. | Sep 2009 | A1 |
20100058456 | Jajodia | Mar 2010 | A1 |
20100077483 | Stolfo | Mar 2010 | A1 |
20100269175 | Stolfo | Oct 2010 | A1 |
20110016527 | Yanovsky | Jan 2011 | A1 |
20110214182 | Adams et al. | Sep 2011 | A1 |
20110258705 | Vestergaard | Oct 2011 | A1 |
20120084866 | Stolfo | Apr 2012 | A1 |
20120167208 | Buford et al. | Jun 2012 | A1 |
20120269807 | Pardridge | Oct 2012 | A1 |
20120311703 | Yanovsky | Dec 2012 | A1 |
20130212644 | Hughes et al. | Aug 2013 | A1 |
20130227697 | Zandani | Aug 2013 | A1 |
20140101724 | Wick | Apr 2014 | A1 |
20140115706 | Silva et al. | Apr 2014 | A1 |
20140201836 | Amsler | Jul 2014 | A1 |
20140208401 | Balakrishnan et al. | Jul 2014 | A1 |
20140359708 | Schwartz | Dec 2014 | A1 |
20150047032 | Hannis | Feb 2015 | A1 |
20150074750 | Pearcy et al. | Mar 2015 | A1 |
20150096048 | Zhang et al. | Apr 2015 | A1 |
20150128246 | Feghali et al. | May 2015 | A1 |
20160019395 | Ramalingam | Jan 2016 | A1 |
20160080414 | Kolton | Mar 2016 | A1 |
20160212167 | Dotan | Jul 2016 | A1 |
20160323316 | Kolton | Nov 2016 | A1 |
Number | Date | Country |
---|---|---|
2006131124 | Dec 2006 | WO |
Entry |
---|
Ashar Aziz, Security in Knowledge the evaluation of cyber attacks and next generation threat protection, 2003, RSAconference2013, pp. 1-29. |
Wikipedia, Active Directory, https://en.wikipedia.org/wiki/Active—Directory, Jun. 24, 2015. |
Wikpedia, Apple Filing Protocol, https://en.wikipedia.org/wiki/Apple—Filing—Protocol, Aug. 14, 2015. |
Wikipedia, DMZ (computing), https://en.wikipedia.org/wiki/DMZ—(computing), Jun. 17, 2015. |
Wikipedia, Domain Name System, https://en.wikipedia.org/wiki/Domain—Name—System, Jul. 14, 2015. |
Wikipedia, Firewall (computing), https://en.wikipedia.org/wiki/Firewall—(computing), Jul. 14, 2015. |
Wikipedia, Honeypot (computing), https://en.wikipedia.org/wiki/Honeypot—(computing), Jun. 21, 2015. |
Wikipedia, Kerberos (protocol), https://en.wikipedia.org/wiki/Kerberos—(protocol), Jun. 30, 2015. |
Wikipedia, Lightweight Directory Access Protocol, https://en.wikipedia.org/wiki/Lightweight—Directory—Access—Protocol, Aug. 15, 2015. |
Wikipedia, LM hash, https://en.wikipedia.org/wiki/LM—hash, Jun. 8, 2015. |
Wikipedia, RADIUS, https://en.wikipedia.org/wiki/RADIUS, Aug. 16, 2015. |
Wikipedia, Rainbow table, https://en.wikipedia.org/wiki/Rainbow—table, Jul. 14, 2015. |
Wikipedia, Secure Shell, https://en.wikipedia.org/wiki/Honeypot—(computing), Jul. 12, 2015. |
Wikipedia, Security Information and Event Management, https://en.wikipedia.org/wiki/Security—information—and—event—management, Jun. 23, 2015. |
Wikipedia, Tarpit (networking), https://en.wikipedia.org/wiki/Tarpit—(networking), Jul. 3, 2014. |
PCT Application No. PCT/IL16/50103, International Search Report and Written Opinion, May 26, 2016, 9 pages. |
U.S. Appl. No. 15/004,904, Office Action, May 27, 2016, 16 pages. |
PCT/IL2016/050579, International Search Report and Written Opinion, Sep. 30, 2016, 10 pages. |
Number | Date | Country | |
---|---|---|---|
20160359905 A1 | Dec 2016 | US |
Number | Date | Country | |
---|---|---|---|
62172251 | Jun 2015 | US | |
62172253 | Jun 2015 | US | |
62172255 | Jun 2015 | US | |
62172259 | Jun 2015 | US | |
62172261 | Jun 2015 | US |