
[5] A. Bichhawat, V. Rajani, J. Jain, D. Garg, and C. Hammer, “Webpol:
Fine-grained information flow policies for web browsers,” in ES-
ORICS’17, 2017, (to appear).
[6] Boris Zbarsky, “Reduce resolution of performance.now.” 2015.
[Online]. Available: https://hg.mozilla.org/integration/mozilla-inbound/
rev/48ae8b5e62ab
[7] L. Cai and H. Chen, “TouchLogger: Inferring Keystrokes on Touch
Screen from Smartphone Motion,” in USENIX Workshop on Hot Topics
in Security – HotSec, 2011.
[8] Chris Peterson, “Bug 1313580: Remove web content access to Battery
API,” 2016. [Online]. Available: https://bugzilla.mozilla.org/show bug.
cgi?id=1313580
[9] Chromium, “window.performance.now does not support sub-
millisecond precision on Windows,” 2015. [Online]. Available:
https://bugs.chromium.org/p/chromium/issues/detail?id=158234#c110
[10] Giorgio Maone, “NoScript - JavaScript/Java/Flash blocker for a safer
Firefox experience!” Jul. 2017. [Online]. Available: https://noscript.net
[11] Google, “Chrome DevTools Protocol Viewer,” 2017. [Online]. Avail-
able: https://developer.chrome.com/devtools/docs/debugger-protocol
[12] ——, “chrome.debugger,” 2017. [Online]. Available: https://developer.
chrome.com/extensions/debugger
[13] B. Gras, K. Razavi, E. Bosman, H. Bos, and C. Giuffrida, “ASLR on
the Line: Practical Cache Attacks on the MMU,” in NDSS’17, 2017.
[14] D. Gruss, D. Bidner, and S. Mangard, “Practical memory deduplication
attacks in sandboxed javascript,” in ESORICS’15, 2015.
[15] D. Gruss, C. Maurice, and S. Mangard, “Rowhammer.js: A Remote
Software-Induced Fault Attack in JavaScript,” in DIMVA’16, 2016.
[16] C. Guan, K. Sun, Z. Wang, and W. Zhu, “Privacy breach by exploiting
postmessage in html5: Identification, evaluation, and countermeasure,”
in ASIACCS’16, 2016.
[17] P. C. Kocher, “Timing Attacks on Implementations of Diffe-Hellman,
RSA, DSS, and Other Systems,” in CRYPTO’96, 1996.
[18] D. Kohlbrenner and H. Shacham, “Trusted browsers for uncertain
times,” in USENIX Security Symposium, 2016.
[19] E. Lavoie, B. Dufour, and M. Feeley, “Portable and efficient run-time
monitoring of javascript applications using virtual machine layering,”
in European Conference on Object-Oriented Programming, 2014.
[20] M. Lipp, D. Gruss, M. Schwarz, D. Bidner, C. Maurice, and S. Mangard,
“Practical Keystroke Timing Attacks in Sandboxed JavaScript,” in
ESORICS’17, 2017, (to appear).
[21] J. Mao, Y. Chen, F. Shi, Y. Jia, and Z. Liang, “Toward Exposing
Timing-Based Probing Attacks in Web Applications,” in International
Conference on Wireless Algorithms, Systems, and Applications, 2016.
[22] C. Maurice, M. Weber, M. Schwarz, L. Giner, D. Gruss, C. A. Boano,
S. Mangard, and K. R¨
omer, “Hello from the Other Side: SSH over
Robust Cache Covert Channels in the Cloud,” in NDSS’17, 2017.
[23] M. Mehrnezhad, E. Toreini, S. F. Shahandashti, and F. Hao, “Touchsig-
natures: identification of user touch actions and pins based on mobile
sensor data via javascript,” Journal of Information Security and Appli-
cations, 2016.
[24] L. A. Meyerovich and B. Livshits, “Conscript: Specifying and enforcing
fine-grained security policies for javascript in the browser,” in S&P’10,
2010.
[25] Mike Perry, “Bug 1517: Reduce precision of time for Javascript.”
2015. [Online]. Available: https://gitweb.torproject.org/user/mikeperry/
tor-browser.git/commit/?h=bug1517
[26] Mozilla Developer Network, “ArrayBuffer,” 2017. [Online]. Avail-
able: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/
Global Objects/ArrayBuffer
[27] ——, “debugger,” 2017. [Online]. Available: https://developer.mozilla.
org/en-US/docs/Web/JavaScript/Reference/Statements/debugger
[28] ——, “Proxy,” 2017. [Online]. Available: https://developer.mozilla.org/
en/docs/Web/JavaScript/Reference/Global Objects/Proxy
[29] Nolan Lawson, “A tiny and mostly spec-compliant WebWorker polyfill,”
Nov. 2016. [Online]. Available: https://github.com/nolanlawson/pseudo-
worker
[30] J. Nymann, “On the probability that k positive integers are relatively
prime,” Journal of Number Theory, 1972.
[31] L. Olejnik, “Stealing sensitive browser data with the
W3C Ambient Light Sensor API,” 2017. [Online]. Avail-
able: https://blog.lukaszolejnik.com/stealing-sensitive-browser-data-
with-the- w3c-ambient-light- sensor-api/
[32] L. Olejnik, G. Acar, C. Castelluccia, and C. Diaz, “The leaking battery,”
in Revised Selected Papers of the 10th International Workshop on Data
Privacy Management, and Security Assurance - Volume 9481, 2016.
[33] Y. Oren, V. P. Kemerlis, S. Sethumadhavan, and A. D. Keromytis, “The
Spy in the Sandbox: Practical Cache Attacks in JavaScript and their
Implications,” in CCS’15, 2015.
[34] D. A. Osvik, A. Shamir, and E. Tromer, “Cache Attacks and Counter-
measures: the Case of AES,” in CT-RSA, 2006.
[35] K. Patil, X. Dong, X. Li, Z. Liang, and X. Jiang, “Towards fine-grained
access control in javascript contexts,” in 31st International Conference
on Distributed Computing Systems (ICDCS), 2011.
[36] P. H. Phung, D. Sands, and A. Chudnov, “Lightweight self-protecting
javascript,” in ASIACCS’09, 2009.
[37] Raymond Hill, “uBlock Origin - An efficient blocker for Chromium
and Firefox. Fast and lean.” Jul. 2017. [Online]. Available:
https://github.com/gorhill/uBlock
[38] C. Reis, J. Dunagan, H. J. Wang, O. Dubrovsky, and S. Esmeir,
“Browsershield: Vulnerability-driven filtering of dynamic html,” in
USENIX Symposium on Operating Systems Design and Implementation,
2006.
[39] Ross McIlroy, “Firing up the Ignition Interpreter,” Aug. 2017.
[Online]. Available: https://v8project.blogspot.co.at/2016/08/firing-up-
ignition-interpreter.html
[40] M. Schwarz, C. Maurice, D. Gruss, and S. Mangard, “Fantastic Timers
and Where to Find Them: High-Resolution Microarchitectural Attacks
in JavaScript,” in FC’17, 2017.
[41] P. Snyder, C. Taylor, and C. Kanich, “Most Websites Don’t Need to
Vibrate: A Cost-Benefit Approach to Improving Browser Security,” in
CCS’17, 2017.
[42] R. Spreitzer, “Pin skimming: Exploiting the ambient-light sensor in
mobile devices,” in Proceedings of the 4th ACM Workshop on Security
and Privacy in Smartphones & Mobile Devices, 2014.
[43] D. Stefan, E. Z. Yang, P. Marchenko, A. Russo, D. Herman, B. Karp,
and D. Mazi`
eres, “Protecting users by confining javascript with cowl,” in
USENIX Symposium on Operating Systems Design and Implementation,
2014.
[44] P. Stone, “Pixel perfect timing attacks with html5,” Context Information
Security (White Paper), 2013.
[45] T. Van Goethem, W. Joosen, and N. Nikiforakis, “The clock is still
ticking: Timing attacks in the modern web,” in CCS’15, 2015.
[46] B. C. Vattikonda, S. Das, and H. Shacham, “Eliminating fine grained
timers in Xen,” in CCSW’11, 2011.
[47] P. Vila and B. K¨
opf, “Loophole: Timing attacks on shared event loops
in chrome,” in USENIX Security Symposium, 2017, (to appear).
[48] W3C, “Battery Status API,” 2016. [Online]. Available: https:
//www.w3.org/TR/battery-status/
[49] ——, “Geolocation API Specification 2nd Edition,” 2016. [Online].
Available: https://www.w3.org/TR/geolocation-API/
[50] ——, “Ambient Light Sensor,” 2017. [Online]. Available: https:
//www.w3.org/TR/ambient-light/
[51] ——, “DeviceOrientation Event Specification,” 2017. [Online].
Available: https://www.w3.org/TR/orientation-event/
[52] ——, “Generic Sensor API,” 2017. [Online]. Available: https:
//www.w3.org/TR/2017/WD-generic-sensor-20170530/
[53] ——, “Javascript APIs Current Status,” 2017. [Online]. Available:
https://www.w3.org/standards/techs/js
[54] W3Techs, “Usage of JavaScript for websites,” Aug. 2017. [Online].
Available: https://w3techs.com/technologies/details/cp-javascript/all/all
[55] Y. Yarom and K. Falkner, “Flush+Reload: a High Resolution, Low
Noise, L3 Cache Side-Channel Attack,” in USENIX Security Sympo-
sium, 2014.
[56] D. Yu, A. Chander, N. Islam, and I. Serikov, “Javascript instrumentation
for browser security,” in ACM SIGPLAN Notices, 2007.
15