A Generic Proxy Mechanism for Secure Middlebox Traversal

A Generic Proxy Mechanism for Secure Middlebox Traversal

A Generic Proxy Mechanism for Secure Middlebox Traversal Sechang Son, Matthew Farrellee, and Miron Livny Computer Science Department, University of Wisconsin {sschang, matt, miron}@cs.wisc.edu Abstract communications. Due to this connectivity problem, many applications break or become inefficient. The Firewalls/NATs have brought significant Grid [2] may be one of the most damaged areas connectivity problems along with their benefits, because it generally requires bi-directional and many- causing many applications to break or become to-many connectivity among geographically distributed inefficient. Due to its bi-directional communication, organizations. Client-server applications can get huge scale, and multi-organizational nature, the Grid around the asymmetry problem by placing servers in may be one of the areas damaged most by the publicly accessible places such as a DMZ. This connectivity problem. Several ideas to deal with the approach does not work for the Grid because a node connectivity problem were investigated and many may act both as a client and a server. In grids, the systems are available. However, many issues still connectivity problem generally results in the waste of remain unanswered. Most systems are firewall/NAT resources because researchers may not harness unfriendly and are considered harmful to network resources separated from their networks by security; the tussle between these devices trying to middleboxes. Computing jobs cannot be staged from investigate payloads and applications trying to protect the public network into a network behind a middlebox, their content from observation and modification must and vice versa [4] [5]; data placement cannot be be reconciled. This paper discusses how a simple completed because data cannot move into or out of a relay-based system, called XRAY (middleboX traversal network behind a middlebox. by RelAYing), deals with these issues and provides Middleware approaches are very attractive for other benefits such as flexible traffic control. This dealing with the connectivity problem. They are easy paper also discusses how relay-based traversal to deploy because neither the Internet nor operating systems can help applications to communicate over systems need be changed, and many applications can firewalls/NATs and also complement firewall/NAT benefit from them. Especially middleware providing operations to help network security. APIs similar to the Berkeley socket API is desirable for easy deployment because it is well understood and is used by many network applications. Many middleware 1. Introduction traversal mechanisms were studied or are under investigation for dealing with the connectivity problem. Firewalls and NATs [1] (collectively called However, we still have many problems and issues left 1 middleboxes in this paper) provide many benefits such unanswered: as easy address planning, network protection, and a Middlebox friendly? Some traversal systems, solution to the IPv4 address shortage. However, these often ironically called firewall-friendly [17], have devices come at a price, notably non-universal adverse effects to network security. Some systems, connectivity of the Internet. In general, two endpoints notably in P2P file sharing systems, disguise their separated by one or more middleboxes cannot traffic to deceive middleboxes (or administrators). communicate with each other. The Internet has become Other systems such as GCB [10], STUN [11], and asymmetric because most middleboxes allow outbound TURN [12] exploit common middlebox behavior or (to the world) but block inbound (from the world) configuration to the extent that network administrators never intended. For this reason, network administrators generally consider middlebox 1 Though IETF uses "middleboxes" to refer to more traversal systems to harm network security and are than just NATs and firewalls [13], it currently focuses reluctant to deploy them. Systems such as DPF [10], on those two devices. SOCKS [14], and RSIP [15] have little or no adverse relaying mechanism. effect on network security. However, these systems In §2, we present a packet flow model within a suffer from similar problems because they do not middlebox and define the middlebox traversal problem describe how their traversal mechanisms fit in with within that model [16]. We include the model to make network security enforcement. the paper self-contained. In §3, we introduce a concept Asymmetry. Most middleboxes are configured to that is important to secure traversal of middleboxes. allow outbound connections while blocking inbound The architecture and connection procedure of XRAY ones. Using this common practice, previous systems are presented in §4 and §5, respectively. §6 discusses assume that outbound connections are allowed and the fault tolerance issue and §7 explains the help applications only with inbound connections. implementation. §8 and §9 present performance data More and more organizations want to control and related research, respectively. communications in both directions for reasons such as security and legal issues. To support such 2. Model and Problem Definition restrictive organizations, a traversal mechanism must help both inbound and outbound connections in a The middlebox traversal problem has been around controlled manner. for many years, yet it remains vaguely defined, raising Tussle [3] between applications and many questions such as "if a middlebox is opened for middleboxes. Many applications encrypt contents an application, does it blindly pass packets to/from the with strong security mechanisms to protect their application?" and "how does a traversal mechanism fit payloads from observation or modification. On the in the security policy the middlebox tries to enforce?" other hand, some middleboxes want to inspect To avoid confusion, we define the problem as follows. payloads for better filtering, intrusion detection, etc. Middleboxes block malicious or unwanted traffic When those middleboxes cannot look inside packets, while allowing benign and desired traffic. What is they generally drop packets. Therefore, we must find malicious or unwanted (or equivalently benign and a resolution or reasonable compromise of this tussle. desired) is defined by middlebox rules. To traverse a This paper discusses how well a simple relay middlebox, a packet must pass a chain of one or more based system, called XRAY (middleboX traversal by tests defined by the middlebox rules. If a packet fails a RelAYing), deals with these issues and provides other test, it is rejected. Otherwise, it continues to traverse benefits such as flexible traffic control. XRAY helps the chain of tests until it fails a test or passes all the authorized applications to traverse middleboxes by tests. relaying both inbound and outbound traffic. It also Figure 1 shows a packet flow model in a helps network security by dropping packets for middlebox. When a packet enters a middlebox, it unauthorized applications. Since it provides the undergoes one or more tests that we collectively call Berkeley socket API, any network application can be the application-neutral test. This test specifies easily XRAY enabled. In our previous work [16], we application-independent conditions such as IP address, presented CODO (Cooperative On-Demand Opening), source routing flag, and ICMP message type. This test which provides similar benefits as XRAY for drops packets considered dangerous no matter what organizations using the middleboxes that can be application sends or receives them. For example, dynamically controlled by the add-on software we overly fragmented packets are considered dangerous provide. However, unlike CODO, XRAY does not and may be dropped at this stage. If a packet passes require dynamic control over middleboxes and has no this test, it is either accepted or sent to the owner test. restrictions on the type of middlebox it can support. The owner test allows traffic for authorized XRAY also provides stronger control over traffic with applications and blocks traffic for unauthorized or a minor amount of performance overhead compared to dangerous applications. For example, many CODO. SOCKS [14] also shares many characteristics middleboxes allow SSH but block telnet and rlogin and benefits with XRAY. However, it is designed only traffic. If a packet belongs to an authorized application, for client-server applications and may not be used by it may be allowed or sent to auxiliary tests specifically the Grid. We will further explain this and another designed for individual applications. If an application limitation of SOCKS in §9. is known to be vulnerable, say to a buffer overflow Relaying mechanisms have been considered as a attack, an administrator may have an owner test rule to secure way of middlebox traversal for years. Our block the application. However, a better approach is to contribution is (1) the reconsideration of the relaying pass the application traffic only if it does not contain mechanism as a middlebox traversal system in a an attack signature. The auxiliary tests can be used to broader and formalized context and (2) XRAY, a relay- block only malicious packets while allowing benign based system, which realizes the benefits of the ones. for app-1 for app-i for app-n Auxiliary Auxiliary Auxiliary Test ... Test ... Test more test passed Owner passed Test more test Application Neutral passed Test in allowed Figure 1: Packet flow model. Within a middlebox, packets traverse application-neutral, owner, and auxiliary tests in that order. Auxiliary

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    10 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us