REACTIVE AND PREVENTIVE SECURITY SYSTEM FOR THE PROTECTION OF COMPUTER NETWORKS AND SYSTEMS
Patent Information
- Application Number
- DE602017087405
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2016-02-23
- Filing Date
- 2017-02-14
- Publication Date
- 2025-01-15
- Estimated Expiration
- 2037-02-14
AI Technical Summary
Current intrusion detection and prevention systems (IDPS) face inefficiencies in monitoring and responding to attacker behavior, requiring complex and time-consuming processes to update response strategies and lack effective communication and data transfer for enhanced protection across networks.
A centralized database managed by a data manager that shares attacker signatures and profiles across multiple users, enabling identification and response to current attackers while inoculating against potential threats, using a choice theory-based system with virtual honeypots and dynamic configuration to redirect attacker traffic.
This solution enhances protection by simplifying response processes, improving communication and data transfer, allowing for swift and efficient detection, prevention, and response to attacks across computer-based devices and networks, thereby improving overall security and data protection.
Description
Technical Field
[0001] The present disclosure relates to computer network security, intrusion detection and intrusion protection. The invention is particularly suited for use in the monitoring, detection, response to and / or prevention of unauthorised access or misuse of computer-based devices or systems. Embodiments of the invention may relate to profiling attackers, and / or the use of computer-based decoys (honeypots / honeynets).Background
[0002] Intrusion detection systems (IDS) are used to monitor network activities for attackers. Reports are generated and alerts signalled to the owner or manager of the specific network. An intrusion detection system that responds to an attack, for example by blocking traffic using a firewall, may be referred to as an intrusion prevention system (IPS) or an intrusion detection and prevention system (IDPS). In some implementations, attacker traffic is detected by and / or routed to one or more honeypots.
[0003] Honeypots are network decoys that attract attackers with the aim of distracting the attackers from more valuable production machines on a network. Honeypots are often deployed within a network using unallocated addresses, and providing services and / or data to engage attackers. Because a honeypot has no production value and typically sits at an unallocated address, every attempt to contact a honeypot is suspect. This means that honeypots can be used to identify attacks, and consequently honeypots also enable the gathering of information about attacker behaviour and attacker identification while an attacker is exploiting a honeypot. Attackers, in turn, try to avoid honeypots by looking at behaviour (such as the services provided) to assess the likelihood of a target in a network being a honeypot.
[0004] Physical honeypots are real machines with their own IP addresses, and are therefore expensive to implement. Virtual honeypots, on the other hand, require fewer physical machines thereby reducing the cost. The operating system and services provided by a honeypot are configured according to the activity on the network and the intended purpose of the particular honeypot at that time. Because it is challenging, complex and time consuming to configure honeypots, dynamic virtual honeypots are used to automate configuration processes. Dynamic honeypots are able to discover the network (e.g. by fingerprinting), decide what honeypot configuration to use and then create and configure the honeypots.
[0005] Multiple honeypots can be combined to form a "honeynet" - a decoy network set up with intentional vulnerabilities. As with individual honeypots, the honeynet enables the owner / manager to observe and analyse an attacker's activities and use the gleaned information to strengthen the system's security mechanisms.
[0006] Background material relating in general to the technical field can be found in WO2012 / 011070 A1, US2015 / 0229656 A1, US8661102, US20060242701 US2007271614, US2007192863, US2011214182, US2013152199, US2015106889, US2016080414, US2016065614, US2006212942, JP2005004617, US20040128543 and US2010269175.
[0007] US 2013 / 305357 A1 describes a method involving monitoring behavior of at least one node, associated with at least one user, in a network to generate a behavior profile for the user(s).
[0008] WO 02 / 23805 A2 describes a system for analysing network traffic, particularly to detect suspect packets and identify attacks or potential attacks.
[0009] US 2007 / 067841 A1 describes monitoring of malicious network traffic attaches to unused addresses and monitoring communications with an active responder that has constrained-state awareness.
[0010] Any discussion of documents, acts, materials, devices, articles or the like which has been included in the present specification is not to be taken as an admission that any or all of these matters form part of the prior art base or were common general knowledge in the field relevant to the present disclosure as it existed before the priority date of each claim of this application.Summary
[0011] According to an aspect, there is provided a method according to claim 1. Further features according to embodiments are set out in the dependent claims.
[0012] With every new attacker or modified attacker behaviour, an IDPS will monitor attacker behaviour, update the logged data regarding the attacker, and also update a response strategy. For example, a certain attacker profile may result in a virtual honeypot being created for that attacker. The process is repeated for each new attacker, and may also be repeated if the attacker's behaviour or some aspect of the profile changes. This is a complex and time consuming process. It would be advantageous to have a simplified process of responding and updating a response to a detected attacker. By simplifying the process, security measures can be deployed more swiftly and in a more efficient manner. Moreover, there is a need for improved communications and transfer of data in respect of intruder detection systems. Such improvements would give rise to more effective protection systems which are better equipped to detect, prevent and respond to attacks.
[0013] Various aspects and embodiments of the invention provide such an improved security solution, resulting in enhanced protection for computer-based devices and networks, and also the data which is stored thereon. The invention may provide a reactive and pre-emptive security system. The system may be based on choice theory. It may be arranged for the protection of computing devices, networks and their associated data.
[0014] Throughout this specification the word "comprise", or variations such as "comprises" or "comprising", will be understood to imply the inclusion of a stated element, integer or step, or group of elements, integers or steps, but not the exclusion of any other element, integer or step, or group of elements, integers or steps.Brief Description of Drawings
[0015] Embodiments of the disclosure are now described by way of example with reference to the accompanying drawings in which:- Figure 1 is a schematic representation of an embodiment of an intrusion detection and protection system (IDPS). Figure 2 illustrates an example computer system for traffic data management. Figure 3 is a schematic representation of an embodiment of an implementation of an IDPS. Figure 4 is a flow diagram describing an embodiment of a method for providing an IDPS. Figure 5 is a flow diagram describing an embodiment of a method of using an intrusion detection and protection system.
[0016] In the drawings, like reference numerals designate similar parts.Description of Illustrative Embodiments
[0017] When a computer system or network is attacked, a typical response is to block the attack using a firewall, or in some instances to connect the attacker to a honeypot. The details of these attacks are not shared with other parties, so that every attack that is performed is handled independently. No information is shared with other groups, and this lack of sharing makes it simple and economical for attackers to implement the same attack strategy across multiple networks in order to find a vulnerable target.
[0018] Thus, there is a need for an improved security solution which provides enhanced protection for computer-based devices and networks, and also the data which is stored thereon.
[0019] Figure 1 shows an intrusion detection and protection system (IDPS) 100 that addresses this shortcoming by providing a centralised database 102, managed by a data manager 104. Multiple users 106, 108, 110 communicate with the data manager 104, for example via a network 112. The centralised database 102 provides information, such as attacker signatures, to the individual systems of users 106, 108, 110 that are thereby able to match traffic on their networks with attacker profiles. Implementing a shared database with mutually beneficial information enables the subscribing users 106, 108, 110 to not only identify and respond to a current attacker, but also to effectively inoculate themselves against potential attackers based on data gathered by the other users.
[0020] The data manager 104 may be a single computing device, or may be computing network that includes multiple computing devices or processors to allow for distributed computing, grid computing or cloud computing.
[0021] The database 102 is shown in Figure 1 as being connected to the data manager 104 via a communication link. However, the database 102 may be part of the data manager 104 to reduce data process time. In other examples, the database 102 may be connected to the data manager 104 via the communication network 112 without departing from the scope of the present disclosure.
[0022] The centralised database 102 operates according to a database management system (DBMS) running on the database 102. The DBMS may include Microsoft SQL, Oracle, Sybase, IBM DB2, MySQL, or Orient DB. The centralised database 102 may include multiple sub-databases that operate based on different DBMSes.
[0023] The communication network 112 is typically a wide area network (WAN), and may be implemented using any suitable type of network, such as a wireline network, a cellular communication network, a wireless local area network (WLAN), an optical communication network, etc. The communication network 112 may be a combination of the suitable networks, for example, the Internet. The communication network 112 can also be a private communication network that is built specifically for the IDPS 100.
[0024] Figure 2 illustrates an example computer system 120 for data management according to the present disclosure. The computer system 120 represents an example structure of the data manager104 described above.
[0025] The computer system 120 includes a storage device 126, a memory device 124, a communication interface 128, and a processor 122. The computer 120 further includes a bus 130 that connects the storage device 126, the memory device 124, the communication interface 128, and the processor 122.
[0026] The storage device 126 is configured to store traffic data, the traffic data including normal user and attacker traffic data received from multiple users. Although the storage device 126 is shown as part of the computer system 120, the storage device 126 may be a separate entity that is connected to the computer system 120, for example, the centralised database 102 shown in Figure 1.
[0027] The memory device 124 is configured to store instructions in relation to the operation of the data manager 104, as described elsewhere herein with reference to Figures 4 and 5. These instructions are implemented as machine-readable instructions included in a computer software program, when executed by the processor 122, causes the processor 122 to perform these methods of operating and using an IDPS.
[0028] The communication interface 128 is configured to connect to a communication network, particularly, the communication network 102 as shown in Figure 1, via the link between the computer system 120 and the communication network 110.
[0029] The processor 122 is connected to the memory device 124, the storage device 126, and the communication interface 128. The processor 122 is configured to obtain the instructions from the memory device 124 in operating and using an IDPS.
[0030] In the example shown in Figure 2, the storage device 126, the memory device 124 and the processor 122 are configured to operate according to a computer operating system, for example, Windows Server, Mac OS X Server, Linux, Unix, Windows, and Mac OS.
[0031] The processor 122 may be a general purpose Central Processing Unit (CPU), and the instructions stored in the memory device 124 are defined by one or more of the following programming languages: HyperText Markup Language (HTML), HTML5, JavaScript, and JQuery. The instructions may also be defined by one or more of the following programming languages: JAVA, Python, and PHP. The instructions may also be defined by one or more of the following programming languages: Objective-C, C++, C, and Swift.
[0032] Figure 3 shows an example of a computer network 200 that uses an IDPS service as described above with reference to Figure 1. In this example, user requests received from a network 202 pass via a server protection system (SPS) 204 to the computer network 200 where a real server 206 provides access to a production database 208. Of course many different types of networks offering different types of services can make use of an SPS in communication with an IDPS.
[0033] The SPS 204 may be implemented on a computer system like the example computer system 120 described above with reference to Figure 2. The memory device 124 is then configured to store instructions in relation to the operation of the SPS 204. These instructions are implemented as machine-readable instructions included in a computer software program, when executed by the processor 122, causes the processor 122 to implement the SPS 204 as described below.
[0034] The SPS 204 has access to information from the centralised database 102. As indicated in Figure 3, the centralised database 102 is updated using data from a community of users 210 as described above. The traffic pattern data from the database 102 is used by the SPS 204 to determine whether user requests received are from normal users or from attackers. If a user request is from an attacker, then the SPS 204 generates a virtual honeypot 212 and a transformed database 214, and directs the attacker to this honeypot 212 and a false database 214 that appears to be real.
[0035] Where more than one attacker is identified, more than one honeypot 216, 218 and respective transformed database 220, 222 may be generated. The parameters used to create and / or configure the honeypots may be determined locally by the SPS, based on attacker information received from the database 102. Alternatively or additionally honeypot parameters may be obtained from the database 102 together with the other attacker profile data.
[0036] The SPS 204 may communicate directly with the database 102 in order to retrieve information as required, as shown in the example illustrated in Figure 3. In the example shown in Figure 5 (described in more detail elsewhere herein), communication between the database 102 and the SPS 204 is via the data manager 104, and the data manager 104 manages the content and format in which information is provided to the SPS 204. One way of managing the services provided to the SPS 204 is according to a subscription service profile that the subscribing user (SPS owner) is associated with.
[0037] Figure 4 is a flow diagram describing an example of a method 300 for providing an IDPS as shown in Figure 1. At step 302 the data manager 104 receives a connection request from an authorised user, for example a subscribing SPS that is identified and authorised when the connection is made.
[0038] The data manager 104 manages the centralised database 102 by providing a number of services that include: (1) Receiving, processing and logging network traffic data received from users of the IDPS, and updating the centralised database with the network traffic data to form a single data resource sourced from multiple users' traffic data; (2) Determining protection parameters, for example in the form of a honeypot configuration appropriate for a particular attacker; and (3) Providing users with access to the shared information on the centralised database 102, enabling the users to identify attackers and also to implement appropriate protection parameters.
[0039] At step 304, the data manager 104 determines whether the connection request from the authorised user relates to a request for traffic profile data 306, or whether traffic data is being provided for processing and logging 308.
[0040] At step 310 raw traffic data 312 is received by the data manager 104. This raw data may be logged as is, but this data is also processed to determine a number of things.
[0041] Firstly, the data is analysed in order to classify the traffic as relating to normal user traffic or attacker traffic. Intrusion detection systems may rely on any number of detection methods and tools, including signature-based or anomaly-based detection, stateful detection and application-level detection. Anomaly-based detection may rely on thresholds selected to describe the local network environment, e.g. relating to network traffic volume, packet count, IP fragments, IPID, IP options, IP header information etc. For example, a typical indicator of attacker traffic is if the traffic is directed to an IP address that is not used or is restricted, or if a service is requested that is restricted or not provided by the targeted network. Other information extracted from the traffic data to determine whether the source is from an attacker may include one or more of the following: an IP address known from an IP address blacklist, code signatures associated with attackers, and network scan behaviour.
[0042] If it is determined that traffic is associated with an attacker, in some implementations it may also be possible to further analyse the data to ascertain the type or classification of an attacker. The classification may be a risk or severity classification associated with the sophistication of the attacker. For example, certain behaviour may be associated with a reduced threat attacker (e.g. a script kiddie if a vulnerability known to the owner is not exploited by the attacker), whereas more sophisticated behaviour may be associated with a more dangerous attacker (e.g. skilled hackers that uncover hidden indicators such as code signatures).
[0043] Determining the attacker classification may include classifying the type of traffic generated, or the type of attacker depending on a threshold associated with the attacker's behaviour, for example where the threshold is based on which services are requested by the attacker.
[0044] Additionally or alternatively, the risk characteristics of a particular computing system or local network may be determined from the network traffic, i.e. the risk of an attack given the system / network configuration in view of the network traffic characteristics.
[0045] Classification may be rule based, or may be done by processing the raw traffic data with a learning method such as a neural network, perceptrons, or a tree learning method e.g. using a random forest algorithm. For example, when using supervised learning pattern recognition based on a perceptron based neural network (e.g. multi-layer perceptrons MLP), an input layer with one neuron for each input is used to map for IP Options, Malware and Buffer overflow conditions, selected attacks etc. The system of perceptrons is processed using a hidden neuron layer in which each neuron represents combinations of inputs and calculates a response based on current data coupled with expected future data, a prior data and external systems data. Data processed at this level feeds into an output layer. The result of the neural network supplies the output, e.g. as a risk function. The perceptron is the computational workhorse in this system, and can be used to model the selected risk factors for the system and calculate a base risk that is trained and updated over time.
[0046] When monitoring the operation of a system or the actions of users, thresholds are characteristically defined above or below which alerting, alarms, and exceptions are not reported. This range of activity is regarded as baseline or routine activity. In this way, a risk function can be created that not only calculates data based on existing and known variables, but also updates automatically using external sources and trends. In this example, external sources refers to data gathered from the community of users 210 that provides external trending and correlation points.
[0047] Secondly, at step 310, in addition to determining the source of the traffic data (normal data vs. attacker data), the data manager 104 also determines an appropriate response, e.g. using a lookup table based on known features of the attacker behaviour. In some implementations the response includes the creation and / or configuration of a honeypot so that attacker traffic can be redirected thereby protecting the production network, and also providing an opportunity to extract more information about the particular attacker. At step 314, honeypot configuration parameters are stored in the database 316 together with the attacker profiles.
[0048] Profiles for normal users are also stored, providing reference traffic data for bona fide users.
[0049] If the connection request from the authorised user relates to a request for traffic profile data 306, then at step 318 the profile data is retrieved from the database 316 and a profile package 320 is provided to the authorised user.
[0050] The content of the profile package 320 depends on the information rights or requirements of the authorised user, as managed by the data manager 104. The profile package may be a comprehensive compilation of traffic data on the database 316, in which case direct access to all the information on the database may be provided to the user. Alternatively, the profile package may include only a portion of the traffic data depending on the relevance to or requirements of the particular user. For example, in one implementation, the data request may be for a particular attacker's profile (e.g. based on an originating IP address) and information associated with that attacker. For such a request, the profile package 320 includes information relating to the attacker identity (e.g. an attacker behaviour profile, attacker classification, code signatures etc.) and also includes attack prevention information (e.g. honeypot configuration parameters).
[0051] The data provided to the authorised user may also include other information available from the database, for example normal user profiles or attacker profiles in different formats (e.g. a specific attacker's profile or a group of attackers' profiles).
[0052] Figure 5 shows a flow diagram of an example method 400 of implementing the IDPS 100. Locally, an SPS 204 is responsible for interfacing between a user system (for example users 106, 108 and 110 as shown in Figure 1) and the data manager 104 of the IDPS 100. At step 402 the SPS 204 monitors the traffic, and based on the data 320 received from the IDPS determines the source of the traffic (normal user vs. attacker) at step 404. The IDPS data received is one or more profile packages as described above with reference to Figure 4 so that if an attacker is identified at step 406, a protection response is implemented at step 408, based on information in the profile packages. The information includes, for example, honeypot configuration parameters provided by the IDPS. Once the honeypot has been created, configured and / or reconfigured the attacker's traffic is sent to the honeypot at step 410.
[0053] At step 412 the traffic data describing the attacker behaviour is logged by providing raw traffic data 312 to the IDPS. Similarly, if the source of the traffic is determined to be a normal user (and not an attacker), then this normal traffic data is logged at step 414. At step 416 the normal traffic is forwarded to the real server (e.g. real server 206 in Figure 3).
[0054] Providing a central resource of shared traffic data improves the response time and efficiency of computer systems to attackers when compared to stand-alone systems reliant on a single source of information about attackers (i.e. their own network traffic).
[0055] The present embodiments are, therefore, to be considered in all respects as illustrative and not restrictive.
Claims
1. An intrusion detection and protection system (100) comprising: a database (102), the database storing: a plurality of profiles of legitimate users; a plurality of profiles relating to known attackers; attacker classification data; and attack prevention data comprising honeypot configuration parameters; and a data manager (104) configured to communicate with the database and a plurality of users (106, 108, 110) via a network (112), the data manager providing services comprising: receiving, processing and logging network traffic data received at the data manager from the plurality of users of the intrusion detection and protection system, and updating the database with network traffic data to form a single data resource sourced from the users' traffic data; determining protection parameters in the form of a honeypot configuration appropriate for a particular attacker; and providing legitimate users with access to shared information on the database, enabling the users to identify attackers and implement the honeypot configuration.
2. The intrusion detection and protection system of claim 1, wherein the data manager is a single computing device or a computing network that includes multiple computing devices or processors to allow for distributed computing, grid computing or cloud computing.
3. The intrusion detection and protection system of claim 1 or claim 2, wherein the database is part of the data manager.
4. The intrusion detection and protection system of any preceding claim, wherein the data manager determines whether a request from an authorised user relates to a request for traffic profile data, or whether the purpose of the request is to provide traffic data for processing and logging.
5. The intrusion detection and protection system of any preceding claim, wherein raw traffic data is received by the data manager, wherein the raw traffic data is processed in order to classify the traffic as relating to normal user traffic or attacker traffic.
6. The intrusion detection and protection system of claim 5, wherein determining the classification comprises supervised learning pattern recognition.
7. The intrusion detection and protection system of claim 6, wherein the supervised learning pattern recognition comprises using multi-layer perceptrons.
8. The intrusion detection and protection system of any preceding claim, further comprising a system protection system arranged to determine whether an incoming request originates from a legitimate user or an attacker.
9. The intrusion detection and protection system of claim 8, wherein if a request is determined to be from an attacker, generating a virtual honeypot and / or honeynet and a false database.
10. The intrusion detection and protection system of claim 9, wherein the false database contains data which is not commercially or confidentially sensitive data and / or comprises randomised data.