Journal of Digital Forensics, Security and Law
Volume 10 Number 4 Article 10
2015
Project Maelstrom: Forensic Analysis of the BitTorrent-Powered Browser
Jason Farina University College, Dublin
M-Tahar Kechadi University College, Dublin
Mark Scanlon University College, Dublin
Follow this and additional works at: https://commons.erau.edu/jdfsl
Part of the Computer Engineering Commons, Computer Law Commons, Electrical and Computer Engineering Commons, Forensic Science and Technology Commons, and the Information Security Commons
Recommended Citation Farina, Jason; Kechadi, M-Tahar; and Scanlon, Mark (2015) "Project Maelstrom: Forensic Analysis of the BitTorrent-Powered Browser," Journal of Digital Forensics, Security and Law: Vol. 10 : No. 4 , Article 10. DOI: https://doi.org/10.15394/jdfsl.2015.1216 Available at: https://commons.erau.edu/jdfsl/vol10/iss4/10
This Article is brought to you for free and open access by the Journals at Scholarly Commons. It has been accepted for inclusion in Journal of Digital Forensics, Security and Law by an authorized administrator of (c)ADFSL Scholarly Commons. For more information, please contact [email protected]. Project Maelstrom: Forensic Analysis of the BitTorrent-Powered ... JDFSL V10N4
PROJECT MAELSTROM: FORENSIC ANALYSIS OF THE BITTORRENT-POWERED BROWSER Jason Farina, M-Tahar Kechadi, Mark Scanlon School of Computer Science, University College Dublin, Ireland. [email protected], {tahar.kechadi, mark.scanlon}@ucd.ie ABSTRACT In April 2015, BitTorrent Inc. released their distributed peer-to-peer powered browser, Project Maelstrom, into public beta. The browser facilitates a new alternative website dis- tribution paradigm to the traditional HTTP-based, client-server model. This decentralised web is powered by each of the visitors accessing each Maelstrom hosted website. Each user shares their copy of the website;s source code and multimedia content with new visitors. As a result, a Maelstrom hosted website cannot be taken o ine by law enforcement or any other parties. Due to this open distribution model, a number of interesting censorship, secu- rity and privacy considerations are raised. This paper explores the application, its protocol, sharing Maelstrom content and its new visitor powered web-hosting paradigm.
Keywords: Project Maelstrom, BitTorrent, decentralised web, alternative web, browser forensics
1. INTRODUCTION as: Truly an Internet powered by peo- Project Maelstrom was released as a private ple, one that lowers barriers and alpha in December 2014 [Klinker, 2014] and denies gatekeepers their grip on our as a public beta in April 2015 [Klinker, 2015]. future [Klinker, 2014]. Its purpose is to provide a decentralised web ecosystem facilitating a new parallel to the While the topic of BitTorrent in the media existing world wide web. Through this de- seems to predominantly coincide with a dis- centralisation, users are free to create and cussion on online piracy [Choi and Perez, share any content they desire without the 2007], the protocol has proven itself as a ro- need for web hosting providers or domain bust, low-cost, distributed alternative to the names, and can bypass any national or in- traditional client-server content distribution ternational censorship. The HTML docu- model. From a forensic standpoint, the de- ments, associated styling and scripting les, centralised nature of BitTorrent based appli- multimedia content, etc., are hosted by the cations can result in extended windows for website's visitors, and subsequently served evidence acquisition [Scanlon et al., 2014]. to other visitors accessing the site. The of- Aside from facilitating copyright infringe- cial BitTorrent blog celebrated its arrival ment, a number of additional online services
© 2015 ADFSL Page 115 JDFSL V10N4 Project Maelstrom: Forensic Analysis of the BitTorrent-Powered ... have been developed using the protocol in- 2. BACKGROUND cluding: READING 2.1 Peer-to-Peer Facilitated File Synchronisation Service BitTor- Web Browsing rent Sync is a cloudless alternative to the cloud-based, multiple-device, le The deep web refers to layers of Internet ser- synchronisation services such as Drop- vices and communication that is not readily box, OneDrive, iCloud, etc. [Scanlon accessible to most users and is not crawlable et al., 2015]. With a standard BitTor- by traditional search engines. Unlike the reg- rent Sync install, users are not limited ular Internet, there is not one set of pro- in the amount of data they can share as tocols or formats for the deep web, instead there are no replicated server-side limi- deep web is a generic term used to describe tations. Internet communications that are managed Cost-Eective Commercial Content using closed or somehow restricted proto- Distribution BitTorrent Inc. use cols. More recently however, the term deep the protocol to distribute commercial web has been made synonymous with black- multimedia content through their market sites such as The Silk Road, taken BitTorrent Bundle oering. Large o ine by the FBI in 2013. While BitTorrent video game creators and distribution Inc. do not claim that Project Maelstrom companies, Blizzard Entertainment and enhances privacy or anonymises a user's In- Valve have used the BitTorrent proto- ternet trac, many of the competing decen- col to distribute installation les and tralised deep web technologies focus their ef- software patches to their users [Watters forts on precisely that. et al., 2011]. The advantage for these 2.1.1 The Freenet Project companies is that the protocol excels where the traditional client-server The Freenet project is a peer based dis- model starts to fail; the more users, the tributed Internet alternative. Users con- faster the average download speed. nect to Freenet through an installed appli- cation that uses multiple encrypted connec- tions to mask the identifying network in- 1.1 Contribution of this Work formation and the data location. Freenet peers, or nodes, store fragments of data in a distributed fashion. The number of times The contribution of this work can be sum- a data item is replicated is dependent on marised as: the demand for that data. More popular les have more available sources resulting in better availability and faster access times An overview and analysis of Project for the requester. The layered encryption Maelstrom's functionality. of the connections provides an eective de- An analysis of the forensic value of its fence against network sning attacks and installation and conguration les. also complicates network forensic analysis. An investigation of evidence left behind Freenet, by default, is deployed as an Open- after uninstallation and what knowledge Net service. On OpenNet, it is possible to be recovered. enumerate and connect to all available nodes
Page 116 © 2015 ADFSL Project Maelstrom: Forensic Analysis of the BitTorrent-Powered ... JDFSL V10N4
and perform trac correlation to trace back to the original requester [Roos et al., 2014].
2.1.2 Tor
Tor (The Onion Router) is a networking pro- tocol designed to provide anonymity while accessing both regular websites, and those hosted within the Tor network. Initially, Tor provided random internal encrypted routes enabling anonymised regular website access for its users. This was achieved through a minimum of three encrypted connections be- Figure 1. Project Maelstrom Default Start fore exiting to the regular Internet through Page an exit node. A user can opt not to utilise an exit 2.1.3 I2P node and instead browse content on ser- The Invisible Internet Project (I2P) is of- vices hosted within the Tor network itself. ten considered another anonymisation utility These Tor websites are known as Hidden like TOR. However, its garlic routing proto- Services (HS) and the identity and geoloca- col is intended to create an alternative In- tion of the hosting server are obfuscated, in ternet. In this model, all trac takes place a similar fashion to the website's visitors. via unidirectional tunnels established out to This anonymisation would normally make a resource which responds with its own, dif- any form of dependable routing impossible ferent, tunnelled return path. In this way as any DNS lookup would not be able to re- all trac to and from a host is protected by port a static IP address for the service for the a separate session based tunnel that closely client system to connect to. Instead, hidden resembles that of TOR, but I2P was not in- services use a distributed hash table (DHT) tended to allow access to sites or services and a known service advertising node to in- outside of the I2P network itself. In this re- form clients of their presence and the path gard, I2P more closely resembles Tor Hidden to the service provided. Services. In I2P, the trac is encrypted end- Due to the reliance of the HS on DHT to-end and the encryption in either direction and directory servers to perform the intro- is handled separately [Zantout and Haraty, ductions for Tor users, Biryukov et al. [2013] 2011]. were able to demonstrate a denial of service attack on a HS by impersonating the direc- 3. PROJECT tory servers. They were also able to crawl MAELSTROM: the DHT to harvest Onion Identiers over a period of two days, resulting in an accurate APPLICATION index of the content of the deep web con- ANALYSIS tained within Tor. This approach could be useful when attempting to stall a HS until it Project Maelstrom is built upon the open can be properly identied. source version of Google's Chrome browser,
© 2015 ADFSL Page 117 JDFSL V10N4 Project Maelstrom: Forensic Analysis of the BitTorrent-Powered ...
Chromium, as can be seen in Figure 1. tracker.publicbt.com, and https://s3-us-east-1-elb.amazonaws 3.1 Installation .com. The version of Project Maelstrom analysed The rst URL contacted is as part of this paper has the following router.bittorrent.com which acts as a properties registration point for the client and File: Maelstrom.exe a way to initiate DHT participation. Size: 36,971KB update.browser.bittorrent.com runs MD5: d3b6560c997a37a1359721fdaa25925f a script on connection which checks the SHA1: 9de7c48e324b2ac9240ca168b7c2afd46bd1c799version of the client connecting and gen- Origin: download-lb.utorrent.com erates a redirect to download the relevant version: 37.0.2.1 update if applicable. The update check is All testing was carried out on a virtual triggered when the local client sends a GET machine running Windows 7 with 1GB ram /windows/latest.json request and, if an and a thin provisioned 60gb hard drive. update is required the response contains a The Project Maelstrom installation pro- URL http://update.browser.bittorrent cess is in two parts. The rst part installs a .com/windows/
Page 118 © 2015 ADFSL Project Maelstrom: Forensic Analysis of the BitTorrent-Powered ... JDFSL V10N4
Chromium fonts, backgrounds, borders as torrent data from the users system without well as all the les necessary for the start any visible indicator. In testing the data rate page and the index.html and images for the was observed to maintain at an average 800 Project Maelstrom onboarding homepage bytes per second up and 800 bytes per sec- partly depicted in gure1 ond down. This was most likely just DHT In addition to the Application folder updates and ping trac. At any given time AppData\Local\Maelstrom\User Data\ is there were approximately 50 concurrent con- provisioned to store user specic data includ- nections recorded. ing user preferences, browser and torrent set- tings and browsing history. The majority of The Project Maelstrom specic settings les are stored in the Default folder which can be found in the Torrent section of the contains a subset of the standard Chrome in- settings page. Each settings is customisable stallation les in addition to les specic to but at the time of installation the defaults Project Maelstrom. These will be covered are: in section 3.3 with the other les of forensic value to an investigator. Cache Size The amount of space avail- The second part of the installation in- able to store cached torrent data is set volves the deployment of the BitTorrent to 5GB with a warning not to exceed Maelstrom folder in \Users \
© 2015 ADFSL Page 119 JDFSL V10N4 Project Maelstrom: Forensic Analysis of the BitTorrent-Powered ...
3.3 Files of Forensic value bundle. 2. Origin Bound Certs will only con- During the rst run the settings and tain the certicates specic to the preferences les stored in User Data and normal internet browsing activi- Application are populated. at the same ties. time, the torrent specic settings and dis- 3. The HTML rendered after covery are recorded in the Roaming di- scripts have been run is stored rectory. Because of Project Maelstrom's in the Cache directory. for roots in the Chromium browser, many of example, the full HTML of the same forensically important resources bittorrent://welcome is stored are present. However, the dual nature of as part of f_000005. the utility does present some degree of dif- 4. Local Storage contains persis- ference.For example, while the History tab tent information used by visited shows the bittorrent:// and magnet:// websites. From the rst run this sites visited, the content for these sites will contain the Unique ID used is not stored in the standard caches or by bench.utorrent.com to gather data les. Instead checking the output of anonymous usage statistics. The about:cache in the browser will only show contents of this folder are SQLite3 standard website les. All caching and man- databases with individual data sets agement relating to torrents are stored in the stored as blobs Roaming\BitTorrent Maelstrom folder. 5. Session Storage contains a list Local\Maelstrom\Application This of BitTorrent UUIDs. The rst directory contains initial setup les and UUID matches that stored in the content added during installation. Of bench.utorrent local storage le. most use is conrmation of an active The remainder are those of remote installation, timestamps to indicate in- peers the browser is in contact stall time and a record of the initial set- with. tings. Roaming\BitTorrent Maelstrom\ Local\Maelstrom\User Data con- Contains the bulk of the torrent han- tains the majority of the user specic dling and storage elements of Project settings and activity records. This Maelstrom. The root folder has many folder and its subfolders can be ex- items of forensic value including: amined using established forensic tech- 1.
Page 120 © 2015 ADFSL Project Maelstrom: Forensic Analysis of the BitTorrent-Powered ... JDFSL V10N4
le could be used as a guideline to AppData\Local\Maelstrom\User Data\ is when the related .torrent was rst left intact including any history and cookie processed. folders as well as user specic settings and 3. dht.dat This consists of a ben- preferences. coded list of observed IP:Port com- If the option to remove User his- binations of peers participating in tory is selected then the entire the DHT. The content starts with AppData\Local\Maelstrom\ folder and all the value id20:, which is followed subfolders are removed. However, in either by the BitTorrent client's unique scenario the AppData\Roaming\BitTorrent ID on the DHT network. It is then Maelstrom\ folder is left untouched along followed by the number of observed with all of the subfolders and les con- nodes or peers and a listing of the tained therein including dht.dat and any IP:Port pairs in 6 byte IPv4 repre- .torrent and .resume les that may have sentations. been stored. Additionally all cached data 4. settings.dat This le contains held in the cache directory is left intact and the torrent client settings and the retrievable. usage statistics. 5. Cache This stores the down- loaded torrent les, which corre- spond to the name of the torrent 4. PROJECT appended with the btinfohash of MAELSTROM: the piece. Scripts and web pages are loaded and executed from PROTOCOL ANALYSIS this directory to improve browsing speed for the user and to provide a 4.1 Accessing a Website repository to share to other peers. Project Maelstrom supports all of the reg- 6. trusted folder This stores the ular protocols that ship with Chromium, bittorrent.crt le for use in alongside two BitTorrent ecosystem specic peer secure transfer negotiation. URIs; bittorrent:// and magnet:?. 3.4 Local File Remnants In order to load any given webpage, the While there is no dedicated uninstall exe- browser must: cutable for Project Maelstrom, the registry key 1. Resolve the magnet link to a .torrent HKCU\
© 2015 ADFSL Page 121 JDFSL V10N4 Project Maelstrom: Forensic Analysis of the BitTorrent-Powered ...
4.1.1 Peer Discovery uploading of content to a web server. These In order to discover an initial set of peers the websites can be delivered either as a single client contacts router.bittorrent.com. large torrent resource broken into pieces or, The packet requesting peers contains the for ease of maintenance and to avoid users command nd_nodes and is bencoded having to re-download the entire site ev- with the Local Peer ID followed by the Bit- ery time the content is changed, as a series Torrent share ID. In response a bencoded of .torrent les linked by an encompassing list of registered peers is returned, each with Bundle. a 26 byte entry consisting of a 20 byte To make the process more streamlined, PeerID and a 6 byte IP:Port entry. The local BitTorrent Inc. have developed a number of client then uses DHT_Ping to discover live helper tools and guidelines [BitTorrent Inc., hosts and standard torrent discovery is per- 2015]. formed as described in the BitTorrent Exten- sion Protocols (BEP) specically BEP005 5. CONCLUSION deals with DHT discovery and bootstrapping It is envisioned that the popularity of [Loewenstern and Norberg, 2008]. Any peer Project Maelstrom (and similar decen- that has the chrome.native.torrent.exe tralised alternatives) will increase in the executable running, even if the Maelstrom coming months and years due to its ease of browser is shutdown, that has the torrent in use, easy web-authoring and zero-cost model its cache will become available as valid con- (to content creators and consumers alike). tent source. Perhaps BitTorrent Inc. will have the abil- 4.1.2 Content Negotiation ity to raise their new Internet from the deep Links in Project Maelstrom are handled ei- web into the hands of regular Internet users. ther as torrent les or as magnet:? links. 5.1 Future Work If a magnet link is followed the Mael- strom browser must rst resolve the data With the browser just having been recently provided in the link to a valid torrent released as a public beta, there remains le. This is achieved either by looking much to be discovered regarding the nuances up the tracker URL included in the mag- of this decentralised web. Some areas for fu- net link using the tr parameter or one ture work include: of the default trackers dened at installa- Development of a tool capable of mon- tion. Once discovered the torrent ID is itoring who is accessing any specic then used to construct find_nodes requests Maelstrom-only website. The decen- that are sent to the known DHT peers and tralised nature of the protocol leaves router.bittorrent.com. it vulnerable for third-parties to garner visitor information statistics that are 4.2 Maelstrom Development normally reserved for the administrator The development of websites for distribu- of the web host such as location, access tion through Maelstrom does not require duration, les downloaded, frequency of any special consideration during the develop- repeat visits, content available for shar- ment of the website content, i.e., the HTML, ing, etc. CSS, JavaScript, graphics, multimedia con- Perform an analysis of ZeroNet [Ze- tent, etc. Where the traditional web devel- roNet, 2015], an open source Project opment process diers is with regards to the Maelstrom alternative. ZeroNet does
Page 122 © 2015 ADFSL Project Maelstrom: Forensic Analysis of the BitTorrent-Powered ... JDFSL V10N4
not require the use of a specic browser instead running as a service on the lo- cal machine.
© 2015 ADFSL Page 123 JDFSL V10N4 Project Maelstrom: Forensic Analysis of the BitTorrent-Powered ...
REFERENCES Study on BitTorrent Sync. Journal of Digital Forensics, Security and Law, pages Alex Biryukov, Ivan Pustogarov, and Ralf- 8599, 2014. Philipp Weinmann. Trawling for tor hid- den services: Detection, measurement, Mark Scanlon, Jason Farina, and M-Tahar deanonymization. In Proceedings of the Kechadi. Network Investigation Method- 2013 IEEE Symposium on Security and ology for BitTorrent Sync: A Peer-to-Peer Privacy, pages 8094, 2013. Based File Synchronisation Service. Com- puters & Security, 2015. http://dx.doi BitTorrent Inc. Torrent Web Tools. .org/10.1016/j.cose.2015.05.003. https://github.com/bittorrent/ torrent-web-tools, May 2015. Paul A. Watters, Robert Layton, and Richard Dazeley. How much material on David Y Choi and Arturo Perez. Online BitTorrent is infringing content? A case piracy, innovation, and legitimate busi- study. Information Security Technical Re- ness models. Technovation, 27(4):168178, port, 16(2):79 87, 2011. 2007. Bassam Zantout and Ramzi Haraty. I2p data Eric Klinker. Project Maelstrom: communication system. In ICN 2011, The The Internet We Build Next. Tenth International Conference on Net- http://blog.bittorrent.com/ works, pages 401409, 2011. 2014/12/10/project-maelstrom-the -internet-we-build-next/, December ZeroNet. https://github.com/ 2014. HelloZeroNet/ZeroNet, May 2015.
Eric Klinker. Project Maelstrom Enters Beta. http://blog.bittorrent.com/ 2015/04/10/project-maelstrom -enters-beta/, April 2015.
Andrew Loewenstern and Arvid Norberg. DHT Protocol. http://www.bittorrent.org/beps/ bep_0005.html, 2008. [Online; accessed July 2015].
Stefanie Roos, Benjamin Schiller, Stefan Hacker, and Thorsten Strufe. Measuring freenet in the wild: Censorship-resilience under observation. In Privacy Enhanc- ing Technologies, pages 263282. Springer, 2014.
Mark Scanlon, Jason Farina, Nhien-An Le Khac, and M-Tahar Kechadi. Lever- aging Decentralisation to Extend the Dig- ital Evidence Acquisition Window: Case
Page 124 © 2015 ADFSL