Understanding Open Proxies In The Wild - Will Scott

Transcription

Understanding Open Proxies in the WildWill Scott, Ravi Bhoraskar, and Arvind Krishnamurthy{wrs, bhora, arvind}@cs.washington.eduUniversity of WashingtonAbstractis simple enough that many different implementationshave emerged, with regional communities forming aroundthem. Web proxies also have a wide charter comparedto many other protocols. The same software is used tooffload popular requests from popular web servers, to reduce costs and validate traffic leaving organizations, andto improve the speed of accessing the web on airplanes.This paper conducts an extensive measurement study ofopen proxies to characterize how much these systems areused, what they are used for, and who uses them. Wescanned the Internet to track proxy prevalence and monitored public statistics interfaces to gain insight into themachines hosting open proxies. We estimate that 220 TBof traffic flows through open proxies each day, makingthem one of the largest overlay networks in existence. Wefind that automatic traffic taking advantage of multiplevantage points to the Internet overwhelms the traffic ofindividual ‘end users’ on open proxies. We present a characterization of the workload experienced by these systemsthat can inform the design of future open access systems.1While open proxies have been around for nearly 20years [16], and a rich ecosystem thrives around their use,we know little about them. There are few verified statistics on how many open proxies are on the Internet, orhow much traffic is served by these systems. We haveeven less insight into how these systems are used. Thispaper provides the first comprehensive measurement andcharacterization of the open proxy ecosystem. Througha combination of Internet scans, scraping of aggregators,and queries to open proxies themselves, we answer thefollowing questions about the stakeholders in the openproxy ecosystem: (1) Who are the users of open proxies,and what do they use open proxies for? (2) Who are theoperators of open proxies, and what are their motivationsbehind running them? (3) What are the characteristicsof a typical open proxy server, in terms or load, stability and traffic? We find that many of these proxies areunintentional and short-lived, and that they serve a diverse set of users spanning legitimate organizations, usersavoiding their local network, and a variety of automaticand malicious traffic. Further, we describe the observedtraffic composition and geographical distribution, and provide case studies to represent the different situations thatproduce open proxies. We believe that answering thesequestions will help future overlays understand the trafficthey are likely to receive, and spur education on moresecure methods of indirection.IntroductionWeb proxies are a widespread Internet phenomenon, buttheir usage is poorly understood. Many websites promoteproxies as mechanisms for privacy, anonymity, and accessing blocked content. In addition, there is a vibrantcommunity of open proxies, which offer access to contentwithout requiring registration or payment. These proxies typically run on well-known ports and offer servicethrough either the HTTP or the SOCKS protocol. Whilethese systems can be seen as providing a valuable serviceto users, the motivation to run such a system is much lessclear.Open proxies are typically not discovered organically,but are generally found through the use of aggregators.These sites, like xroxy.com, hidemyass.com, and gatherproxy.com, curate lists of active proxies. Beyond simplymonitoring uptime, these sites also provide metadata likegeographic location, stability, proxy type, and connectionquality information to help users choose ‘good’ proxies.Users can either directly access these aggregator sites oruse a variety of browser extensions and client software toconfigure their proxy settings using data from the aggregators. While aggregators typically do not advertise howthey discover their lists, we know that some are volunteerpowered[12], some serve as advertisements for commercial services[8], and some accept user submissions of newproxies[18].There are clearly some things that web proxies do well.They are accessed through an extremely minimal andsimple interface and are supported on virtually every operating system. Further, the protocol for an HTTP proxyThe structure of the rest of the paper is as follows. §2describes the methodology we used when collecting dataon open proxies - what data we collected, how, and whatwe did with it. §3 describes what we learned about openproxy servers in the wild, followed by a discussion in §4of several specific proxy server instances. We then diveinto traffic seen by proxies in §5 and §6 to analyze thebehavior of proxy users and the workload seen by openproxies. In §7 and §8, we place these results within thecontext of related work and conclude.1

CategoryPort 3128 openIdentify as SquidOpen proxyOpen Squid proxyOpen Squid proxy with visible traffic# 1424779416Table 2: Division of commonly used HTTP proxy serverson standard ports. Many of the unidentified proxies arebelieved to be instances of general-purpose web serverslike Apache and Nginx.Table 1: HTTP proxies on port 3128. For comparison,aggregator sites typically list between 2,000 and 5,000active proxies across all tp headersinfoobjectscountersclient listDiscovering Open ProxiesThe first challenge in understanding the use of proxieson the Internet is to know where they are. We used twomechanisms to discover and track open proxy servers.First, we crawled aggregator sites once a week over oursample period to learn when open proxies were listedand removed from their indexes. Second, we performedour own probing of the full IPv4 address space usingZMap [4]. While it remains impractical to monitor allservices on the Internet, there are a set of well knownports, like 3128 and 8080, which proxy software uses bydefault. Monitoring ports 3128, 8080, and 8123 allowedus to find what we believe to be the bulk of proxies inan efficient way. We performed individual snapshots onthese ports using ZMap to find all open hosts, followedby a full request to see if the server functioned as anopen proxy on the 2-3 million hosts which acked ourinitial TCP request. Scanning each port took us about 1day as we rate-limited our activity to 50,000 packets persecond in our initial probe. Our selection of these portsis backed by aggregator data, which report that the top 5ports account for about 85% of known servers.DescriptionCache Manager MenuFQDN Cache Stats and ContentsHTTP Header StatisticsGeneral Runtime InformationAll Cache ObjectsTraffic and Resource CountersCache Client ListTable 3: Relevant resources provided by the Squid cachemanager. These resources provide insight into both theclients and contents of a significant fraction of Squid openproxies.2.2Probing Open ProxiesOf commonly operating HTTP proxies, we notice that twoof the most common, Squid and Polipo, include a management interface to their internals that is sometimes accessible from external requests. To understand the clientsusing these open proxies and the associated workload,we built a measurement infrastructure to monitor thesemanagement interfaces and capture information aboutrecorded traffic. Our analysis in Section 5 focuses onunderstanding the data collected regarding proxy traffic.The two programs, Squid and Polipo, offer overlappinginformation about the traffic they serve. Squid providesa cache manager feature, which was publicly accessiblein about half of the discovered open Squid proxies2 . Thecache manager feature piggy-backs on the standard SquidHTTP proxy interface, but causes requests for specificURLs to be handled by the proxy and returned information about the proxy itself. For example, we can inspectSquid’s DNS cache using this interface. By querying thecache manager, we collected data between April and October of 2014. Table 3 shows the available cache managerkeys we queried for analysis and provides a sense of whatdata was available. In particular, the interface providesinformation about the cached objects (meaning URLs) inthe proxy, the list of connected clients, and the cache ofrecently resolved domains.In contrast, Polipo interprets requests to /Polipo asrequests for information about the proxy. We find thatWe find that while many hosts are listening on theseports, as shown in Table 1, only a small fraction of thoseservices are open HTTP proxies. To determine if a hostprovides open proxy services, we attempt to load ourdepartment homepage, cs.washington.edu1 , and check tosee if the expected title is included in the response. Thisstep allowed us to efficiently filter our list to currentlyactive open HTTP proxies.Having thus built a pipeline to maintain a list of activeopen proxies, we can begin to understand the demographics and lifetimes of these services. Many of the commonlyused proxy services advertise what software is used inHTTP headers, as shown in Table 2. We discuss more thebreakdown of proxies, specifically where they operate,how long, and what software they run in Section 3.1We actually request the IP address of the site, 128.208.3.200,to include servers which are unable to perform DNS CacheManager

CountryUKDEUSFRCNCABRPTBRID10% of Polipo proxies would respond to these requests,and provide us with information about their state. ThePolipo information is more limited than Squid. It provides information on URLs visited and maintains a longerhistory and cache of these objects than Squid proxies,and it will provide information on connected servers andobserved latency and throughput of those connections.Unlike Squid, Polipo does not reveal information aboutthe clients using the proxy.To be explicit, we believe that both of these interfacesare problematic, because users are generally not awareof their existence or their potential for surveillance. Assuch, we have informed the abuse contacts for discoveredinstances of these management interfaces, and requestedthat they either block access to the proxy or reconfiguretheir software to keep user information private. Further,as explained in Section 4, we have contacted both software vendors and individuals directly where they couldbe identified in order to help them fix these issues.Service ProviderRedstation LimitedHetzner Online AGAmazon.com, Inc.OVH SASChinanetSynapticaServios de Comunicao S.A.Almouroltec, PortugalBrasileira de TelecomunicaesPT Telekomunikasi Indonesia#102745048464642403128Table 4: Autonomous systems running open web proxies.Proxies are most dense in commercial data center subnets.3.1Open Proxy DiversityOne clue we can use to begin to break apart the open proxysystem lies in the different software used to run open relays. The different proxy systems default to different ports(as seen in Table 2), and also appear to cater to specificlocalities - our snapshot showed 42% of Mikrotik proxiesare located in Indonesia, Brazil and Russia while Poliposervers were almost entirely (90%) located in China. Thisis tempered somewhat by the many proxies marked as“Other”, due to their lack of finger-printable headers.One factor mitigating the privacy and exposure riskpresented by proxy servers publicly providing real timetraffic information is that secure requests are not includedin this information. When a user establishes a secure(HTTPS) connection through an HTTP proxy, they willuse the CONNECT verb. In these requests, only theDNS lookup will be recorded, but the proxy will notknow either client headers or the destination URL. In over95% of the proxies we probed, the CONNECT verb wasfunctional, and provided connectivity without revealingspecific user intention. 301101 –30051 - 1001 - 50Using data collected from cache management combined with discovery of open proxies, we can make inferences about the workings of the open proxy ecosystem.Open proxies are particularly interesting because theyhave an extremely low barrier of entry for usage, andprocess a workload similar to other open access systems,which are categorically difficult to observe. Proxies arenot a new phenomenon, and anecdotally we know theyare used as a light-weight mechanism to evade filtering innation states, schools, and businesses. However, despitetheir ubiquity, the workload we discuss in Section 6 hasremained 7182857324768423017974Figure 1: The geographical distribution of 4250 observedopen proxies.To look deeper at the locations of discovered proxies,we geolocated discovered IP addresses, shown in Figure1. The most concentrated AS hosts are listed individuallyin Table 4. In this process we find that that the US hasthe highest concentration of open proxy servers, closelyfollowed by Brazil and Venezuela. Our case study in Section 4 helps to explain the prevalence of proxies observedin South America. More generally, we observe that proxies appear to operate in locations with relatively cheapbroadband access and relatively low liability associatedwith forwarding traffic for others. However, China andRussia also run large numbers of proxy servers, indicatinga more complex picture. We also note that the top 4 ASNswhere open proxy servers are located are those of largescale Infrastructure as a Service providers.Open Proxy ServersOnce open proxies have been discovered, the next challenge is in understanding why they are operated. Unlike paid services where there is a financial incentive, oropen access relays like Tor which may be run to supportanonymity, there is no obvious answer to why one mightrun an open HTTP proxy. It is also unclear how expensive these services are to run, or even if the operators areactually aware that they are operating a service.3

3.2Open Proxy Lifetime2014 [14].We next consider whether open proxies are primari

These sites, like xroxy.com, hidemyass.com, and gather-proxy.com, curate lists of active proxies. Beyond simply monitoring uptime, these sites also provide metadata like geographic location, stability, proxy type, and connection quality information to help users choose ‘good’ proxies. Users can either directly access these aggregator sites or