
traffic. We also released an open source version of our internal
TLS fingerprint knowledge base, which is updated weekly and
is currently the largest and most informative open source TLS
fingerprint knowledge base in existence.
ACKNOWLEDGMENTS
We thank Brandon Enright for his support in developing mercury.
We thank both Brandon and Adam Weller for their feedback and
support. We thank Lucas Messenger, Eddie Allan Jr., and Joey Rosen
for their assistance in maintaining and providing access to the data
capture infrastructure. We also thank and acknowledge Ed Paradise
for his ongoing support of this work.
REFERENCES
[1]
2012. SSL Fingerprinting for p0f. (2012). https://idea.popcount.org/
2012-06- 17-ssl- fingerprinting-for-p0f/.
[2]
2018. Protocols in TLS/SSL (Schannel SSP). (2018). https://docs.microsoft.com/
en-us/windows/win32/secauthn/protocols- in-tls- ssl--schannel- ssp-.
[3]
2019. Cisco AnyConnect Secure Mobility Client. http://www.cisco.com/go/
anyconnect. (2019).
[4] 2019. Psiphon. (2019). https://www.psiphon3.com.
[5] 2019. uTLS. (2019). https://github.com/refraction- networking/utls.
[6] 2020. Amazon Kinesis. https://aws.amazon.com/kinesis/. (2020).
[7] 2020. BoringSSL. (2020). https://boringssl.googlesource.com/boringssl/.
[8] 2020. Docker. https://www.docker.com/. (2020).
[9] 2020. Helm. https://helm.sh/. (2020).
[10] 2020. Kubernetes. https://kubernetes.io/. (2020).
[11] 2020. MaxMind’s GeoLite2. (2020). https://www.maxmind.com/.
[12] 2020. Mozilla’s Public Suffix List. (2020). https://publicsuffix.org/list/.
[13] 2020. Terraform. https://www.terraform.io/. (2020).
[14]
Nadhem AlFardan, Daniel J Bernstein, Kenneth G Paterson, Bertram Poettering,
and Jacob CN Schuldt. 2013. On the Security of RC4 in TLS. In USENIX Security
Symposium. 305–320.
[15]
John B. Althouse, Jeff Atkinson, and Josh Atkins. 2017. JA3. (2017). https:
//github.com/salesforce/ja3.
[16]
Blake Anderson and David McGrew. 2016. Identifying Encrypted Malware
Traffic with Contextual Flow Data. In ACM Workshop on Artificial Intelligence
and Security (AISec). 35–46.
[17]
Blake Anderson and David McGrew. 2017. Machine Learning for Encrypted
Malware Traffic Classification: Accounting for Noisy Labels and Non-Stationarity.
In ACM SIGKDD International Conference on Knowledge Discovery in Data Mining
(KDD). 1723–1732.
[18]
Blake Anderson and David McGrew. 2019. TLS Beyond the Browser: Combin-
ing End Host and Network Data to Understand Application Behavior. In ACM
SIGCOMM Internet Measurement Conference (IMC). 379–392.
[19]
Blake Anderson, Subharthi Paul, and David McGrew. 2017. Deciphering Mal-
ware’s Use of TLS (without Decryption). Journal of Computer Virology and
Hacking Techniques (2017), 1–17.
[20]
Pieter Arntz. 2019. Spotlight on Troldesh Ransonware, aka
’Shade’. https://blog.malwarebytes.com/threat-analysis/2019/03/
spotlight-troldesh- ransomware-aka- shade/. (2019).
[21]
David Benjamin. 2017. Applying GREASE to TLS Extensibility. Internet-Draft
(Informational). (2017). https://tools.ietf.org/html/draft- ietf-tls-grease-03.
[22]
Laurent Bernaille and Renata Teixeira. 2007. Early Recognition of Encrypted Ap-
plications. In International Conference on Passive and Active Network Measurement.
165–175.
[23]
Karthikeyan Bhargavan and Gaëtan Leurent. 2016. On the Practical (in-) Security
of 64-bit Block Ciphers: Collision Attacks on HTTP over TLS and OpenVPN.
In ACM SIGSAC Conference on Computer and Communications Security (CCS).
456–467.
[24]
Lee Brotherston. 2015. FingerprinTLS. (2015). https://github.com/synackpse/
tls-fingerprinting.
[25]
Manuel Crotti, Maurizio Dusi, Francesco Gringoli, and Luca Salgarelli. 2007.
Traffic classification through simple statistical fingerprinting. Computer Com-
munication Review 37, 1 (2007), 5–16. https://doi.org/10.1145/1198255.1198257
[26]
Tim Dierks and Eric Rescorla. 2008. The Transport Layer Security (TLS) Protocol
Version 1.2. RFC 5246 (Proposed Standard). (2008). http://www.ietf.org/rfc/
rfc5246.txt.
[27] Alban Diquet. 2019. SSLyze. (2019). https://github.com/nabla-c0d3/sslyze.
[28]
Donald Eastlake. 2011. Transport Layer Security (TLS) Extensions: Extension
Definitions. Internet-Draft (Standards Track). (2011). https://tools.ietf.org/html/
rfc6066.
[29]
Brown Farinholt, Mohammad Rezaeirad, Damon McCoy, and Kirill Levchenko.
2020. Dark Matter: Uncovering the DarkComet RAT Ecosystem. In ACM Inter-
national World Wide Web Conference. 2109–2120.
[30]
Roy Fielding and Julian Reschke. 2014. Hypertext Transfer Protocol (H TTP/1.1):
Semantics and Content. RFC 7231 (Proposed Standard). (2014). http://www.ietf.
org/rfc/rfc7231.txt.
[31]
Sergey Frolov and Eric Wustrow. 2019. The use of TLS in Censorship Circum-
vention. In Network and Distributed System Security Symposium (NDSS).
[32]
Colin Grady, William Largent, and Jaeson Schultz. 2019. Emotet is
Back After a Summer Break. https://blog.talosintelligence.com/2019/09/
emotet-is- back-after-summer-break.html. (2019).
[33]
Ralph Holz, Johanna Amann, Olivier Mehani, Matthias Wachs, and Mohamed Ali
Kaafar. 2016. TLS in the Wild: An Internet-wide Analysis of TLS-based Proto-
cols for Electronic Communication. In Network and Distributed System Security
Symposium (NDSS).
[34]
Martin Husák, Milan Cermák, Tomá Jirsík, and Pavel Celeda. 2015. Network-
Based HTTPS Client Identification using SSL/TLS Fingerprinting. In Availability,
Reliability and Security (ARES). 389–396.
[35]
Jaroslaw Jedynak. 2017. A Deeper Look at Tofsee Modules. https://www.cert.pl/
en/news/single/a-deeper- look-at-tofsee- modules/#4-proxyrdll. (2017).
[36]
Platon Kotzias, Abbas Razaghpanah, Johanna Amann, Kenneth G. Paterson,
Narseo Vallina-Rodriguez, and Juan Caballero. 2018. Coming of Age: A Lon-
gitudinal Study of TLS Deployment. In ACM SIGCOMM Internet Measurement
Conference (IMC). 415–428.
[37]
Marc Liberatore and Brian Neil Levine. 2006. Inferring the Source of Encrypted
HTTP Connections. In Proce edings of the Thirteenth ACMConference on Computer
and Communications Security (CCS). 255–263.
[38]
David McGrew, Brandon Enright, and Blake Anderson. 2020. Mercury: Fast TLS,
TCP, and IP Fingerprinting. https://github.com/cisco/mercury. (2020).
[39]
Andrew W Moore and Denis Zuev. 2005. Internet Traffic Classification Using
Bayesian Analysis Techniques. SIGMETRICS Performance Evaluation Review 33
(2005), 50–60.
[40]
Abbas Razaghpanah, Arian Akhavan Niaki, Narseo Vallina-Rodriguez, Srikanth
Sundaresan, Johanna Amann, and Phillipa Gill. 2017. Studying TLS Usage in
Android Apps. In International Conference on emerging Networking EXperiments
and Technologies (CoNEXT). 350–362.
[41] ioerror rbsec. 2019. sslscan. (2019). https://github.com/rbsec/sslscan.
[42]
Eric Rescorla. 2018. The Transport Layer Security (TLS) Protocol Version 1.3.
RFC 8446 (Proposed Standard). (2018). http://www.ietf.org/rfc/rfc8446.txt.
[43]
Eric Rescorla, Kazuho Oku, Nick Sullivan, and Christopher Wood. 2020. En-
crypted Server Name Indication for TLS 1.3. Internet-Draft (Experimental).
(2020). https://tools.ietf.org/html/draft-ietf- tls-esni- 06.
[44]
Ivan Ristic. 2009. HTTP Client Fingerprinting using SSL Hand-
shake Analysis. (2009). https://blog.ivanristic.com/2009/06/
http-client- fingerprinting-using- ssl-handshake-analysis.html.
[45] Ivan Ristić. 2012. sslhaf. (2012). https://github.com/ssllabs/sslhaf.
[46]
Vincent F. Taylor, Riccardo Spolaor, Mauro Conti, and Ivan Martinovic. 2016.
AppScanner: Automatic Fingerprinting of Smartphone Apps From Encrypted
Network Traffic. In IEEE European Symposium on Security and Privacy. 439–454.
[47]
Thijs van Ede, Riccardo Bortolameotti, Andrea Continella, Jingjing Ren, Daniel J
Dubois, Martina Lindorfer, David Choffnes, Maarten van Steen, and Andreas
Peter. 2020. FLOWPRIN T: Semi-Supervised Mobile-App Fingerprinting on En-
crypted Network Traffic. In Network and Distributed System Security Symposium
(NDSS).
[48]
Quaizar Vohra and Enke Chen. 2012. BGP Support for Four-Octet Autonomous
System (AS) Number Space. Internet-Draft (Standards Track). (2012). https:
//tools.ietf.org/html/rfc6793.
[49]
Charles V Wright, Fabian Monrose, and Gerald M Masson. 2006. On Inferring
Application Protocol Behaviors in Encrypted Network Traffic. Journal of Machine
Learning Research (JMLR) (2006), 2745–2769.
[50]
Harry Zhang and Shengli Sheng. 2004. Learning Weighted Naive Bayes with
Accurate Ranking. In IEEE International Conference on Data Mining (ICDM’04).
567–570.
[51]
Wei Zhang, Yan Meng, Yugeng Liu, Xiaokuan Zhang, Yinqian Zhang, and Haojin
Zhu. 2018. HoMonit: Monitoring Smart Home Apps from Encrypted Traffic.
In ACM SIGSAC Conference on Computer and Communications Security (CCS).
1074–1088.
13