Know Your Enemy:
Honeynets

What a honeynet is, its value, and risk/issues involved.

honeynet Project
http://www.honeynet.org/
Last Modified: 12 May, 2005

One of the primary tools used by the Honeynet Project to capture information is the honeynet. The purpose of this paper is to discuss what a honeynet is, its value, an overview of how it works, and the risks/issues involved. This paper is not a technical blueprint on how a honeynet works. For technical deployment details, refer to the paper Know Your Enemy: Gen2 Honeynets. However, it is highly recommended you read this paper first. It is critical you understand the concepts, risks and issues of a honeynet before deploying such a technology.

Honeynet Overview
Traditionally, information security has been primarily defensive. Firewalls, Intrusion Detection Systems, encryption; all of these mechanisms are used defensively to protect one's resources. The strategy is to defend one's organization as best as possible, detect any failures in the defense, and then react to those failures. The problem with this approach is it purely defensive, the enemy has the initiative. Honeynets attempt to change that. The primary purpose of a honeynet is to gather information about threats. This information is used to better understand threats, how they are evolving and changing, and how to best counter those threats. New tools can be discovered, attack patterns can be determined, and attacker motives studied. Examples include the papers KYE: Tracking Botnets, KYE: Motives, and KYE: Automated Credit Card Fraud.

A honeynet is a type of honeypot. Specifically, it is a high-interaction honeypot designed to capture extensive information on threats. High-interaction means a honeynet provides real systems, applications, and services for attackers to interact with (as opposed to low-interaction honeypots such as Honeyd which provide emulated services and operating systems. It is through this extensive interaction we gain information on threats, both external and internal to an organization. What makes a honeynet different from most honeypots is that it is an entire network of systems. Instead of a single computer, a honeynet is a network of systems desinged for attackers to interact with. These victim systems (honeypots within the honeynet) can be any type of system, service, or information you want to provide. If you want to create Oracle databases on Solaris servers, not a problem. If you want to create a e-commerce site using IIS webserver on Windows 2003, not a problem. You can run everything from VAX systems to Cisco routers. Its is this flexibility that gives honeynets their true power.

Conceptually honeynets are very simple. They are simply a network that contains one or more honeypots. Since honeypots are not production systems, the honeynet itself has no production activity, no authorized services. As a result, any interaction with a honeynet implies malicious or unauthorized activity. Any connections intiated inbound to your honeynet are most likely a probe, scan, or attack. Almost any outbound connections from your honeynet imply someone has compromised a system and has initiated outbound activity. This makes analyzing activity within your honeynet very simple. With traditional security technologies, such as firewall logs or IDS sensors, you have to sift through gigabytes of data, or thousands of alerts. A great deal of time and effort is spent looking through this information, attempting to identify attacks or unauthorized activty. In many ways, its the classic needle in the haystack problem, as you attempt to find the critical incident amongst volumes of information. Since a honeynet is nothing more than a network of honeypots, all captured activity is assumed to be unauthorized or malicious. All you are doing is capturing needles. Its up to you to prioritize which of those needles has the greatest value to you, then analyze them in great detail.

Honeynets are not a product, you don't simply install software on a computer. Instead, they are an architecture. This architecture creates a highly controlled network, one that you can control and monitor all activity that happens within it. You then place your target systems within that architecture. In many ways a honeynet is like a fishbowl. You create an environment where you can watch everything happening inside it. However, instead of putting rocks, coral, and sea weed in your fish bowl, you put Linux DNS servers, HP printers, and Juniper routers in your honeynet architecture. Just as a fish interacts with the elements in your fishbowl, intruders interact with the systems within your honeynet. You can see a diagram of a GenII Honeynet.

One final challenge with honeynets is deployment. Once you have created the architecture, how do you deploy the honeynet to attract hostile activity? Traditionally, honeynets have simply been nothing more then default installations of commonly used operating systems, deployed on external networks. These systems have no perceived value, no one aware of their existance. As a result, these type of deployment attract only common script kiddies, or automated attacks such as worms, botnets or auto-rooters, attacks that depend on highly active and random scanning. The vast majority of the honeynets deployed by the honeynet Project have followed this pattern. To date, very few honeynets have captured advanced attacker activity. How you deploy your honeynet will determine the type of attacker (or activity) you capture. The more perceived value your honeynet has, the more likely you will capture advanced activity. This is extremely challenging to do, a problem that has yet to be easily solved.

Architecture Requirements
As we stated earlier, honeynets are nothing more than an architecture. To succesfully deploy a honeynet, you must correctly deploy the honeynet architecture. There is no single rule on how you must deploy this architecture. The details and technology are left up to you. However, the problem with honeynets is that they are complex. If not properly deployed, you most likely will fail to capture the attackers activities, or even worse, expose yourself or others to great risk. To help you deploy a honeynet, there are two critical requirements for a success; Data Control and Data Capture. All honeynet deployments should satisfy these two requiements. Data Control defines how activity is contained with the honeynet, without an attacker knowing it. Its purpose is to minimize risk. Data Capture is capturing all of the attacker's activity, without the attacker knowing it. Of the two, Data Control is the more important. Data Control always takes priority over Data Capture.

Data Control is the containment of activity. It is what mitigates risk. By risk, we mean there is always the potential of an attacker using a honeynet to attack or harm non-honeynet systems. We want to make every effort possible to ensure that once an attacker is within our honeynet, they cannot accidentally or purposefully harm other non-honeynet systems. This is more challenging then it seems. First, we have to allow the attackers some degree of freedom to act. The more activity we allow the attackers to perform, the more we can potentially learn about them. However, the more freedom you allow an attacker, the more risk there is they will circumvent Data Control and harm other non-honeynet systems. The balance of how much freedom to give the attacker vs. how much you restrict their activity is a decision every organization has to make themselves. Each organization will have different requirements and risk thresholds. Second, we have to control the attacker's activity without them knowing their actions are being controlled. One of the best ways to approach Data Control is not to rely on a single mechanism with which to implement it. Instead, implement Data Control using layers, such as counting outbound connections, intrusion prevention gateways, or bandwidth restrictions. The combination of several different mechanisms help protect against a single point of failure, especially when dealing with new or unknown attacks. Also, Data Control should operate in a fail closed manner. This means if there is a failure in your mechanisms (a process dying, hard drive full, misconfigured rules) the honeynet architecture should block all outbound activity, as opposed to allowing it. One thing to consider with Data Control, it can only minimize risk. We can never entirely eliminate the potential of an attacker using a honeynet to harm non-honeynet systems. Different technologies and approaches to Data Control have different levels of risk, but none eliminate risk entirely. We discuss risk in greater detail later in the paper.

Data Capture is the monitoring and logging of all of the blackhat's activities within the honeynet. It is this captured data that is then analyzed to learn the tools, tactics, and motives of members of the blackhat community. The challenge is to capture as much data as possible, without the blackhat detecting the process. As with Data Control, one of the primary lessons learned for Data Capture has been the use of layers. It is critical to use multiple mechanisms for capturing activity. Not only does the combination of layers help piece together all of the attacker's actions, but it prevents having a single point of failure. The more layers of information that are captured, at both the network and host level, the more that can be learned. One of the challenges with Data Capture is that a large portion of attacker activity happens over encrypted channels (such as IPSec, SSH, SSL, etc). Data Capture mechanisms must take encryption into consideration. Also, just as with Data Control, we have to minimize the ability of attackers to detect our capture mechanisms. This is done several ways. First, make as few modifications to the honeypots as possible. The more modifications you make, the greater the chance of detection. Second it is best that captured data not be stored locally on the honeypots themselves. Not only could this data be detected by attackers, but it could also be modified or deleted. As such, captured data must be logged and stored on a seperate, secured system. Just as with Data Control, there are no guarantees with Data Capture. Attackers may identify ways to detect Data Capture mechanisms, and develop methods to bypass or disable them. We discuss these issues in greater detail later in this paper.

There is a third requirement, Data Collection, but this only applies to organizations that have multiple honeynets in distributed environments. Many organizations will have only one single honeynet, so all they need to do is both Control and Capture data. However, organizations that have multiple honeynets logically or physically distributed around the world, such as the Honeynet Research Alliance have to collect all of the captured data and store it in a central location. This way the captured data can be combined, exponentially increasing its value. Refer to Figure 1 to see an example of how the Honeynet Research Alliance has achieved this. The Data Collection requirement provides the secure means of centrally collecting all of the captured information from distributed honeynets.

The Honeynet Project has created a document that defines these three requirement in greater detail. The purpose of the document is to give organizations the flexibility to build a honeynet tailored to their environment and goals. However, the document ensures that the honeynets are effectively and securely deployed, allowing different honeynets to interoperate. Any organization considering deploying their own honeynets are encouraged to follow these requirements. We recommend you take a momment and review them.

honeynet Definitions, Requirements, and Standards

Risk
Honeynets can be a powerful tool. They allow you to collect extensive information on a variety of threats. To obtain this information, you have to allow attackers access -- potentially privileged access -- to your systems and applications. As a result, the price you pay for this capability is risk. Any technology developed by man (or woman) can also be defeated by man (or woman.) Risk means different things to different organizations. You will have to identify what risks are important to you. Also, organizations have different thresholds for risk. We cannot determine what is right and wrong for you. Your organization will have to make those decisions for itself. All we can do is help make you aware of the risks. Also, we will not address legal issues of honeypots, or specifically honeynets. That is beyond the scope of this paper, and is specific to your country and organization. If you are interested in legal issues of honeypots, a good place to start is the legal chapter (which is freely available to the public) from our book Know Your Enemy: 2nd Edition. We also recommend you seek your organization's legal counsel for more information, especially in reference to privacy or liability issues. In reference to risk, there are four general areas we will cover; harm, detection, disabling, and violation.

In all four cases, there are two steps you can take to help mitigate these risks, human monitoring and customization. By human monitoring, we mean you have a trained professional monitoring and analyzing your honeynet in real time. Anytime you suspect an attacker has successfully gained (or attempting to gain) access to one of your honeypots (such as detection of outbound connections, frequent established inbound connections, increased inbound traffic, transfer of files, unusual system activity, etc) a security professional should be monitoring and analyzing all captured data. This helps prevent the risk of an attacker detecting or disabling a honeynet, and attempting to harm other non-honeynet systems. By having a human analyzing honeynet activity, instead of just depending on automated techniques, you help protect yourself against new or unknown attacks or honeynet countermeasures. In a worse case scenario, you can always shut down the honeynet down if the attacker has exceeded your organizations threshold for risk. Second, customization is critical. This paper and all honeynet technologies are OpenSource and publicly available. This means that anyone has access to this information, including the blackhat community, which we can assume are actively reading this and developing countermeasures. For you to successfully deploy a honeynet, you need to customize or modify your honeynet, so it is different as possible from what we dicsussed. Do not use default settings, modify current or add additional techniques (such as bandwidth limiting for Data Control) and customize your honeynet environment. A simple default installation that has no purpose or system activity is in itself a give away of a honeypot. Ideally, you will use customized and random configuration, layering, some kind of dynamism, or other creative means to make detection and counter measures of the honeynet as difficult as possible to accomplish. Honeynet technologies help mitigate risk. However, its critical that you understand that risk is not eliminated, and that you understand these issues

Conclusion
Honeynets are a form of a high-interaction honeypot. Their primary advantage is their ability to gather extensive information on threats. A honeynet is an architecture, similar to a fishbowl. Within this architecture you can deploy any type of system or application you desire. The two critical requirements for this architecture are Data Control and Data Capture, with Data Control taking the priority. While very powerful, honeynets present unique risks. Mechanisms can be put in place to mitigate these risks, but there is no way to eliminate all risk, it is crtical you understand this. If you are interested in deploying a honeynet, you can learn more about the technical details at Know Your Enemy: Gen2 Honeynets.


The Honeynet Project