SlideShare ist ein Scribd-Unternehmen logo
1 von 80
Downloaden Sie, um offline zu lesen
How Tracking Companies Circumvented
Ad Blockers Using WebSockets
Muhammad Ahmad Bashir, Sajjad Arshad, Engin Kirda,
William Robertson, Christo Wilson



Northeastern University
Online Tracking
2
Online Tracking
Surge in online advertising (internet economy)
• Ad networks pour in billions of dollars.
• Value for their investment?
• Extensive tracking to serve targeted ads.
2
Online Tracking
Surge in online advertising (internet economy)
• Ad networks pour in billions of dollars.
• Value for their investment?
• Extensive tracking to serve targeted ads.
2
User concern over tracking
• Led to the proliferation of ad blocking extensions
Online Tracking
Surge in online advertising (internet economy)
• Ad networks pour in billions of dollars.
• Value for their investment?
• Extensive tracking to serve targeted ads.
2
User concern over tracking
• Led to the proliferation of ad blocking extensions
Ad networks fight back
• E.g Using anti ad blocking scripts
Google & Safari
• Google evaded Safari’s third-party cookie blocking policy
(Jonathan Mayer)
• … by submitting a form in an invisible iFrame
• Google was fined $22.5M by FTC
3
This Talk
How Ad Networks leveraged a bug in
Chrome API to bypass Ad Blockers
using WebSockets
4
This Talk
How Ad Networks leveraged a bug in
Chrome API to bypass Ad Blockers
using WebSockets
4
1. What caused this?
2. How this bug was leveraged by ad networks?
Web Sockets
5
Web Sockets
5
HTTP/S
Web Sockets
5
HTTP/S
request
response
Web Sockets
5
HTTP/S
request
response
Chatting App
Web Sockets
5
HTTP/S
request
response
Chatting App
anything new?
Web Sockets
5
HTTP/S
request
response
Chatting App
anything new?
Web Socket
Web Sockets
5
HTTP/S
request
response
Chatting App
anything new?
Web Socket
bidirectional
• Both client and server can send/receive data
• This is a persistent connection
Web Sockets
5
HTTP/S
request
response
Chatting App
anything new?
Web Socket
bidirectional
ws:// or wss://
• Both client and server can send/receive data
• This is a persistent connection
Ad Blockers
6
Ad Blockers
6
• Chrome extension chrome.webRequest API
• Extension can inspect / modify / drop outgoing requests
Ad Blockers
6
• Chrome extension chrome.webRequest API
• Extension can inspect / modify / drop outgoing requests
webRequest API
Ad Blockers
6
• Chrome extension chrome.webRequest API
• Extension can inspect / modify / drop outgoing requests
http://cnn.com/logo.jpeg
webRequest API
Ad Blockers
6
• Chrome extension chrome.webRequest API
• Extension can inspect / modify / drop outgoing requests
http://cnn.com/logo.jpeg
webRequest API
Rule List
Usually borrowed 

from EasyList
Ad Blockers
6
• Chrome extension chrome.webRequest API
• Extension can inspect / modify / drop outgoing requests
http://cnn.com/logo.jpeg
webRequest API
Rule List
url
Usually borrowed 

from EasyList
Ad Blockers
6
• Chrome extension chrome.webRequest API
• Extension can inspect / modify / drop outgoing requests
http://cnn.com/logo.jpeg
webRequest API
Rule List
url
Usually borrowed 

from EasyList
Ad Blockers
6
• Chrome extension chrome.webRequest API
• Extension can inspect / modify / drop outgoing requests
http://cnn.com/logo.jpeg
webRequest API
Rule List
url
Usually borrowed 

from EasyList
Ad Blockers
6
• Chrome extension chrome.webRequest API
• Extension can inspect / modify / drop outgoing requests
http://cnn.com/logo.jpeg
webRequest API
Rule List
url
webRequest API
Usually borrowed 

from EasyList
Ad Blockers
6
• Chrome extension chrome.webRequest API
• Extension can inspect / modify / drop outgoing requests
http://cnn.com/logo.jpeg
webRequest API
Rule List
http://doubleclick.com/s1.js
url
webRequest API
Usually borrowed 

from EasyList
Ad Blockers
6
• Chrome extension chrome.webRequest API
• Extension can inspect / modify / drop outgoing requests
http://cnn.com/logo.jpeg
webRequest API
Rule List
http://doubleclick.com/s1.js
url
webRequest API
url
Usually borrowed 

from EasyList
Ad Blockers
6
• Chrome extension chrome.webRequest API
• Extension can inspect / modify / drop outgoing requests
http://cnn.com/logo.jpeg
webRequest API
Rule List
http://doubleclick.com/s1.js
url
webRequest API
url
Usually borrowed 

from EasyList
Ad Blockers
6
• Chrome extension chrome.webRequest API
• Extension can inspect / modify / drop outgoing requests
http://cnn.com/logo.jpeg
webRequest API
Rule List
http://doubleclick.com/s1.js
url
webRequest API
url
Usually borrowed 

from EasyList
AdBlock Evasion
7
AdBlock Evasion
• Bug in
• ws/wss requests did not trigger the API
7
webRequest API
AdBlock Evasion
• Bug in
• ws/wss requests did not trigger the API
7
2012 2013 2014 2015 2016 2017 2018
webRequest API
AdBlock Evasion
• Bug in
• ws/wss requests did not trigger the API
7
2012 2013 2014 2015 2016 2017 2018
Original bug

reported
webRequest API
AdBlock Evasion
• Bug in
• ws/wss requests did not trigger the API
7
2012 2013 2014 2015 2016 2017 2018
Original bug

reported
Users report 

unblocked ads
webRequest API
AdBlock Evasion
• Bug in
• ws/wss requests did not trigger the API
7
2012 2013 2014 2015 2016 2017 2018
Original bug

reported
Users report 

unblocked ads
Patch
Finalized 

( Landed)
webRequest API
AdBlock Evasion
• Bug in
• ws/wss requests did not trigger the API
7
2012 2013 2014 2015 2016 2017 2018
Original bug

reported
Users report 

unblocked ads
Patch
Finalized 

( Landed)
Chrome 58

released
webRequest API
AdBlock Evasion
• Bug in
• ws/wss requests did not trigger the API
7
2012 2013 2014 2015 2016 2017 2018
* * * *
Original bug

reported
Users report 

unblocked ads
Patch
Finalized 

( Landed)
Chrome 58

released
* Represents when our crawls were done
webRequest API
Data Crawling
8
Data Crawling
8
100K websites 

sampled from Alexa
Data Crawling
8
100K websites 

sampled from Alexa Visit 15 

links / website
Collected chains for
all included
resources
Data Crawling
8
100K websites 

sampled from Alexa Visit 15 

links / website
Collected chains for
all included
resources
This means we know
which resource included
which other resource
Data Crawling
8
100K websites 

sampled from Alexa Visit 15 

links / website
Collected chains for
all included
resources
Filter all resources
which end in 

web sockets
Filter 

WebSockets
This means we know
which resource included
which other resource
Data Crawling
8
100K websites 

sampled from Alexa Visit 15 

links / website
Collected chains for
all included
resources
Filter all resources
which end in 

web sockets
Filter 

WebSockets
Detect A&A 

WebSockets
Mark web sockets

which are used by
A&A domains
A&A = Advertising and Analytics
e.g. DoubleClick, Criteo, Adnxs
This means we know
which resource included
which other resource
Data Crawling
8
100K websites 

sampled from Alexa Visit 15 

links / website
Collected chains for
all included
resources
Filter all resources
which end in 

web sockets
Filter 

WebSockets
Detect A&A 

WebSockets
Mark web sockets

which are used by
A&A domains
A&A = Advertising and Analytics
e.g. DoubleClick, Criteo, Adnxs
This means we know
which resource included
which other resource
pub/
index.html
srv.ws ads/
script.js
ads/
frame.html
ads/
img_a.jpg
adnet/
data.ws
Example Inclusion Tree
Data Crawling
8
100K websites 

sampled from Alexa Visit 15 

links / website
Collected chains for
all included
resources
Filter all resources
which end in 

web sockets
Filter 

WebSockets
Detect A&A 

WebSockets
Mark web sockets

which are used by
A&A domains
A&A = Advertising and Analytics
e.g. DoubleClick, Criteo, Adnxs
This means we know
which resource included
which other resource
pub/
index.html
srv.ws ads/
script.js
ads/
frame.html
ads/
img_a.jpg
adnet/
data.ws
Example Inclusion Tree
WebSocket
WebSocket
Data Crawling
8
100K websites 

sampled from Alexa Visit 15 

links / website
Collected chains for
all included
resources
Filter all resources
which end in 

web sockets
Filter 

WebSockets
Detect A&A 

WebSockets
Mark web sockets

which are used by
A&A domains
A&A = Advertising and Analytics
e.g. DoubleClick, Criteo, Adnxs
This means we know
which resource included
which other resource
pub/
index.html
srv.ws ads/
script.js
ads/
frame.html
adnet/
data.ws
Example Inclusion Tree
WebSocket
WebSocket
Data Crawling
8
100K websites 

sampled from Alexa Visit 15 

links / website
Collected chains for
all included
resources
Filter all resources
which end in 

web sockets
Filter 

WebSockets
Detect A&A 

WebSockets
Mark web sockets

which are used by
A&A domains
A&A = Advertising and Analytics
e.g. DoubleClick, Criteo, Adnxs
This means we know
which resource included
which other resource
pub/
index.html
ads/
script.js
ads/
frame.html
adnet/
data.ws
Example Inclusion Tree
WebSocket
High-Level Numbers
9
High-Level Numbers
9
Crawl Dates
%Websites 

with sockets
% Sockets

with A&A

Initiators
% Sockets

with A&A

Receivers
#Unique
A&A

Initiators
#Unique
A&A

Receivers
Apr 02-05, 2017 2.1 60.6 73.7 75 16
Apr 11-16, 2017 2.4 61.3 74.6 63 18
May 07-12, 2017 1.6 60.2 69.7 19 15
Oct 12-16, 2017 2.5 63.4 63.7 23 18
Before 

Chrome 58
High-Level Numbers
9
Crawl Dates
%Websites 

with sockets
% Sockets

with A&A

Initiators
% Sockets

with A&A

Receivers
#Unique
A&A

Initiators
#Unique
A&A

Receivers
Apr 02-05, 2017 2.1 60.6 73.7 75 16
Apr 11-16, 2017 2.4 61.3 74.6 63 18
May 07-12, 2017 1.6 60.2 69.7 19 15
Oct 12-16, 2017 2.5 63.4 63.7 23 18
Before 

Chrome 58
After 

Chrome 58
High-Level Numbers
9
Crawl Dates
%Websites 

with sockets
% Sockets

with A&A

Initiators
% Sockets

with A&A

Receivers
#Unique
A&A

Initiators
#Unique
A&A

Receivers
Apr 02-05, 2017 2.1 60.6 73.7 75 16
Apr 11-16, 2017 2.4 61.3 74.6 63 18
May 07-12, 2017 1.6 60.2 69.7 19 15
Oct 12-16, 2017 2.5 63.4 63.7 23 18
• ~2% websites use web sockets.
Before 

Chrome 58
After 

Chrome 58
High-Level Numbers
9
Crawl Dates
%Websites 

with sockets
% Sockets

with A&A

Initiators
% Sockets

with A&A

Receivers
#Unique
A&A

Initiators
#Unique
A&A

Receivers
Apr 02-05, 2017 2.1 60.6 73.7 75 16
Apr 11-16, 2017 2.4 61.3 74.6 63 18
May 07-12, 2017 1.6 60.2 69.7 19 15
Oct 12-16, 2017 2.5 63.4 63.7 23 18
• ~2% websites use web sockets.
• ~61 % sockets are initiated by A&A domains
Before 

Chrome 58
After 

Chrome 58
A&A = Advertising and Analytics
e.g. DoubleClick, Criteo, Adnxs
High-Level Numbers
9
Crawl Dates
%Websites 

with sockets
% Sockets

with A&A

Initiators
% Sockets

with A&A

Receivers
#Unique
A&A

Initiators
#Unique
A&A

Receivers
Apr 02-05, 2017 2.1 60.6 73.7 75 16
Apr 11-16, 2017 2.4 61.3 74.6 63 18
May 07-12, 2017 1.6 60.2 69.7 19 15
Oct 12-16, 2017 2.5 63.4 63.7 23 18
• ~2% websites use web sockets.
• ~61 % sockets are initiated by A&A domains
• ~71 % sockets contact an A&A domain
Before 

Chrome 58
After 

Chrome 58
A&A = Advertising and Analytics
e.g. DoubleClick, Criteo, Adnxs
High-Level Numbers
9
Crawl Dates
%Websites 

with sockets
% Sockets

with A&A

Initiators
% Sockets

with A&A

Receivers
#Unique
A&A

Initiators
#Unique
A&A

Receivers
Apr 02-05, 2017 2.1 60.6 73.7 75 16
Apr 11-16, 2017 2.4 61.3 74.6 63 18
May 07-12, 2017 1.6 60.2 69.7 19 15
Oct 12-16, 2017 2.5 63.4 63.7 23 18
• ~2% websites use web sockets.
• ~61 % sockets are initiated by A&A domains
• ~71 % sockets contact an A&A domain
• # Initiators drop after Chrome 58 release.
Before 

Chrome 58
After 

Chrome 58
A&A = Advertising and Analytics
e.g. DoubleClick, Criteo, Adnxs
High-Level Numbers
9
Crawl Dates
%Websites 

with sockets
% Sockets

with A&A

Initiators
% Sockets

with A&A

Receivers
#Unique
A&A

Initiators
#Unique
A&A

Receivers
Apr 02-05, 2017 2.1 60.6 73.7 75 16
Apr 11-16, 2017 2.4 61.3 74.6 63 18
May 07-12, 2017 1.6 60.2 69.7 19 15
Oct 12-16, 2017 2.5 63.4 63.7 23 18
• ~2% websites use web sockets.
• ~61 % sockets are initiated by A&A domains
• ~71 % sockets contact an A&A domain
• # Initiators drop after Chrome 58 release.
• Small but persistent A&A receivers.
Before 

Chrome 58
After 

Chrome 58
A&A = Advertising and Analytics
e.g. DoubleClick, Criteo, Adnxs
Initiators and Receivers
10
Initiators and Receivers
10
Initiator ReceiverJavaScript
Initiators and Receivers
10
Initiator Receiver
ws/s
JavaScript
Initiators and Receivers
10
Initiator Receiver
ws/s
JavaScript
Initiators and Receivers
10
A&A Initiator
#A&A

Receivers
facebook 11
google 11
doubleclick 9
youtube 8
addthis 8
hotjar 7
googlesyndication 6
twitter 5
sharethis 4
adnxs 3
Top A&A 

Initiators
Initiator Receiver
ws/s
JavaScript
Initiators and Receivers
10
A&A Initiator
#A&A

Receivers
facebook 11
google 11
doubleclick 9
youtube 8
addthis 8
hotjar 7
googlesyndication 6
twitter 5
sharethis 4
adnxs 3
Top A&A 

Initiators
Initiator Receiver
ws/s
JavaScript
Initiators and Receivers
10
A&A Initiator
#A&A

Receivers
facebook 11
google 11
doubleclick 9
youtube 8
addthis 8
hotjar 7
googlesyndication 6
twitter 5
sharethis 4
adnxs 3
A&A Receiver
#A&A

Initiators
realtime 27
33across 19
intercom 16
disqus 13
zopim 12
hotjar 11
feedjit 10
lockerdome 8
inspectlet 6
smartsupp 4
Top A&A 

Initiators
Top A&A 

Receivers
Initiator Receiver
ws/s
JavaScript
Initiators and Receivers
10
A&A Initiator
#A&A

Receivers
facebook 11
google 11
doubleclick 9
youtube 8
addthis 8
hotjar 7
googlesyndication 6
twitter 5
sharethis 4
adnxs 3
A&A Receiver
#A&A

Initiators
realtime 27
33across 19
intercom 16
disqus 13
zopim 12
hotjar 11
feedjit 10
lockerdome 8
inspectlet 6
smartsupp 4
Top A&A 

Initiators
Top A&A 

Receivers
Initiator Receiver
ws/s
• Disqus provides
comment board services.
JavaScript
Initiators and Receivers
10
A&A Initiator
#A&A

Receivers
facebook 11
google 11
doubleclick 9
youtube 8
addthis 8
hotjar 7
googlesyndication 6
twitter 5
sharethis 4
adnxs 3
A&A Receiver
#A&A

Initiators
realtime 27
33across 19
intercom 16
disqus 13
zopim 12
hotjar 11
feedjit 10
lockerdome 8
inspectlet 6
smartsupp 4
Top A&A 

Initiators
Top A&A 

Receivers
Initiator Receiver
ws/s
• Disqus provides
comment board services.
• Zopim, Intercom,
Smartsupp provide live
chat services.
JavaScript
Initiators and Receivers
10
A&A Initiator
#A&A

Receivers
facebook 11
google 11
doubleclick 9
youtube 8
addthis 8
hotjar 7
googlesyndication 6
twitter 5
sharethis 4
adnxs 3
A&A Receiver
#A&A

Initiators
realtime 27
33across 19
intercom 16
disqus 13
zopim 12
hotjar 11
feedjit 10
lockerdome 8
inspectlet 6
smartsupp 4
Top A&A 

Initiators
Top A&A 

Receivers
Initiator Receiver
ws/s
• Disqus provides
comment board services.
• Zopim, Intercom,
Smartsupp provide live
chat services.
• 33across & Lockerdome
are advertising platforms.
JavaScript
Initiators and Receivers
10
A&A Initiator
#A&A

Receivers
facebook 11
google 11
doubleclick 9
youtube 8
addthis 8
hotjar 7
googlesyndication 6
twitter 5
sharethis 4
adnxs 3
A&A Receiver
#A&A

Initiators
realtime 27
33across 19
intercom 16
disqus 13
zopim 12
hotjar 11
feedjit 10
lockerdome 8
inspectlet 6
smartsupp 4
Top A&A 

Initiators
Top A&A 

Receivers
Initiator Receiver
ws/s
• Disqus provides
comment board services.
• Zopim, Intercom,
Smartsupp provide live
chat services.
• 33across & Lockerdome
are advertising platforms.
• Inspectlet & Hotjar are
session replay services.
JavaScript
Sent Items Over Web Sockets
11
Sent Items Over Web Sockets
11
Cookie
IP
User IDs
Fingerprinting 

Variables
DOM
% Requests
0 20 40 60 80
WebSockets
HTTP/S
Sent Items Over Web Sockets
11
•Stateful Identifiers like Cookie and User IDs
Cookie
IP
User IDs
Fingerprinting 

Variables
DOM
% Requests
0 20 40 60 80
WebSockets
HTTP/S
Sent Items Over Web Sockets
11
•Stateful Identifiers like Cookie and User IDs
• Fingerprinting data in ~3.4% WebSockets. 

97% is 33across
Cookie
IP
User IDs
Fingerprinting 

Variables
DOM
% Requests
0 20 40 60 80
WebSockets
HTTP/S
Sent Items Over Web Sockets
11
•Stateful Identifiers like Cookie and User IDs
• Fingerprinting data in ~3.4% WebSockets. 

97% is 33across
• ~1.6% WebSockets sends the entire DOM to 

Hotjar, LuckyOrange, TruConversion
Cookie
IP
User IDs
Fingerprinting 

Variables
DOM
% Requests
0 20 40 60 80
WebSockets
HTTP/S
12
Received Items Over Web Sockets
12
Received Items Over Web Sockets
HTML
JSON
JavaScript
Images
% Responses
0 10 20 30 40 50
WebSockets
HTTP/S
12
Received Items Over Web Sockets
HTML
JSON
JavaScript
Images
% Responses
0 10 20 30 40 50
WebSockets
HTTP/S
12
Received Items Over Web Sockets
HTML
JSON
JavaScript
Images
% Responses
0 10 20 30 40 50
WebSockets
HTTP/S
12
Received Items Over Web Sockets
Ads served from Lockerdome
HTML
JSON
JavaScript
Images
% Responses
0 10 20 30 40 50
WebSockets
HTTP/S
Summary
• ~67% of socket connections are initiated or received by A&A domains.
• Major companies like Google, Facebook, Addthis adopted WebSockets. 

Abandoned after Chrome 58 was released.
• The culprits:
• 33across was harvesting fingerprinting data.
• DOM exfiltration by HotJar, LuckyOrange, TruConversion
• Lockerdome downloaded URLs to serve ads.
• We need to keep up with the current practices of A&A companies.
13
Summary
• ~67% of socket connections are initiated or received by A&A domains.
• Major companies like Google, Facebook, Addthis adopted WebSockets. 

Abandoned after Chrome 58 was released.
• The culprits:
• 33across was harvesting fingerprinting data.
• DOM exfiltration by HotJar, LuckyOrange, TruConversion
• Lockerdome downloaded URLs to serve ads.
• We need to keep up with the current practices of A&A companies.
13
Questions?
ahmad@ccs.neu.edu
Backup Slides
Inclusion Chain
15
<html>
<body>
<script src=“tracker/script.js” </script>
<img src=“tracker/img.jpg”> </img>
<script src=“ads/script.js”> </script>
<iframe src=“frame.html”>
<html> <body>
<script src=“script_12.js”> </script>
<img src=“img_a.jpg”> </img>
</body> </html>
</iframe>
</body>
</html>
pub/
index.html
tracker/
script.js
tracker/
img.jpg
ads/
script.js
ads/
frame.html
ads/
script_12.js
ads/
img_a.jpg
adnet/
data.ws
Source code for ads/script_12.js



let ws =

new WebSocket(“ws://adnet/data.ws”, …);

ws.onopen = function (e) {ws.send(“…”);}
DOM Tree Inclusion Tree

Weitere ähnliche Inhalte

Ähnlich wie How Tracking Companies Circumvented Ad Blockers Using WebSockets

CSM Module 2: Branding and identity
CSM Module 2: Branding and identityCSM Module 2: Branding and identity
CSM Module 2: Branding and identityJulian Matthews
 
Tracing Information Flows Between Ad Exchanges Using Retargeted Ads
Tracing Information Flows Between Ad Exchanges Using Retargeted AdsTracing Information Flows Between Ad Exchanges Using Retargeted Ads
Tracing Information Flows Between Ad Exchanges Using Retargeted AdsSajjad "JJ" Arshad
 
What's in my SEO Toolbox: Linkbuilding Edition - SMX Milan 2014
What's in my SEO Toolbox: Linkbuilding Edition - SMX Milan 2014What's in my SEO Toolbox: Linkbuilding Edition - SMX Milan 2014
What's in my SEO Toolbox: Linkbuilding Edition - SMX Milan 2014Bastian Grimm
 
Omniturebasicsv1 100622051011-phpapp02
Omniturebasicsv1 100622051011-phpapp02Omniturebasicsv1 100622051011-phpapp02
Omniturebasicsv1 100622051011-phpapp02RAKESH RANJAN MANSINGH
 
Discussion starter at Future of Privacy Forum in Washington, DC.
Discussion starter at Future of Privacy Forum in Washington, DC. Discussion starter at Future of Privacy Forum in Washington, DC.
Discussion starter at Future of Privacy Forum in Washington, DC. Johnny Ryan
 
02.Branding and identity
02.Branding and identity02.Branding and identity
02.Branding and identityJulian Matthews
 
Migrating wise.com to server-side GA4
Migrating wise.com to server-side GA4Migrating wise.com to server-side GA4
Migrating wise.com to server-side GA4Tom Bennet
 
Introduction to Search Engine.pdf
Introduction to Search Engine.pdfIntroduction to Search Engine.pdf
Introduction to Search Engine.pdfPraveen Kurup
 
Introduction to Search Engine.pdf
Introduction to Search Engine.pdfIntroduction to Search Engine.pdf
Introduction to Search Engine.pdfPraveen Kurup
 
081118 - Tracking Performance
081118 - Tracking Performance081118 - Tracking Performance
081118 - Tracking PerformanceGed Carroll
 
Mark Harwood - Building Entity Centric Indexes - NoSQL matters Dublin 2015
Mark Harwood - Building Entity Centric Indexes - NoSQL matters Dublin 2015Mark Harwood - Building Entity Centric Indexes - NoSQL matters Dublin 2015
Mark Harwood - Building Entity Centric Indexes - NoSQL matters Dublin 2015NoSQLmatters
 
Web2.0.2012 - lesson 8 - Google world
Web2.0.2012 - lesson 8 - Google worldWeb2.0.2012 - lesson 8 - Google world
Web2.0.2012 - lesson 8 - Google worldCarlo Vaccari
 
iCrossing: Designing For Visibility - ANA Digital Marketing And Social Media...
iCrossing: Designing For Visibility  - ANA Digital Marketing And Social Media...iCrossing: Designing For Visibility  - ANA Digital Marketing And Social Media...
iCrossing: Designing For Visibility - ANA Digital Marketing And Social Media...iCrossing
 
Designing Websites for Visibility, Rob Garner at the Association of National ...
Designing Websites for Visibility, Rob Garner at the Association of National ...Designing Websites for Visibility, Rob Garner at the Association of National ...
Designing Websites for Visibility, Rob Garner at the Association of National ...Rob Garner
 
AMP - Accelerated Mobile Pages
AMP - Accelerated Mobile PagesAMP - Accelerated Mobile Pages
AMP - Accelerated Mobile PagesIdo Green
 
The Affiliate 2 0 Litmus Test
The Affiliate 2 0 Litmus TestThe Affiliate 2 0 Litmus Test
The Affiliate 2 0 Litmus TestAffiliate Summit
 

Ähnlich wie How Tracking Companies Circumvented Ad Blockers Using WebSockets (20)

CSM Module 2: Branding and identity
CSM Module 2: Branding and identityCSM Module 2: Branding and identity
CSM Module 2: Branding and identity
 
Tracing Information Flows Between Ad Exchanges Using Retargeted Ads
Tracing Information Flows Between Ad Exchanges Using Retargeted AdsTracing Information Flows Between Ad Exchanges Using Retargeted Ads
Tracing Information Flows Between Ad Exchanges Using Retargeted Ads
 
What's in my SEO Toolbox: Linkbuilding Edition - SMX Milan 2014
What's in my SEO Toolbox: Linkbuilding Edition - SMX Milan 2014What's in my SEO Toolbox: Linkbuilding Edition - SMX Milan 2014
What's in my SEO Toolbox: Linkbuilding Edition - SMX Milan 2014
 
Omniturebasicsv1 100622051011-phpapp02
Omniturebasicsv1 100622051011-phpapp02Omniturebasicsv1 100622051011-phpapp02
Omniturebasicsv1 100622051011-phpapp02
 
Discussion starter at Future of Privacy Forum in Washington, DC.
Discussion starter at Future of Privacy Forum in Washington, DC. Discussion starter at Future of Privacy Forum in Washington, DC.
Discussion starter at Future of Privacy Forum in Washington, DC.
 
Door Of Internet
Door Of InternetDoor Of Internet
Door Of Internet
 
Web Crawler
Web CrawlerWeb Crawler
Web Crawler
 
02.Branding and identity
02.Branding and identity02.Branding and identity
02.Branding and identity
 
Migrating wise.com to server-side GA4
Migrating wise.com to server-side GA4Migrating wise.com to server-side GA4
Migrating wise.com to server-side GA4
 
Introduction to Search Engine.pdf
Introduction to Search Engine.pdfIntroduction to Search Engine.pdf
Introduction to Search Engine.pdf
 
Introduction to Search Engine.pdf
Introduction to Search Engine.pdfIntroduction to Search Engine.pdf
Introduction to Search Engine.pdf
 
081118 - Tracking Performance
081118 - Tracking Performance081118 - Tracking Performance
081118 - Tracking Performance
 
Mark Harwood - Building Entity Centric Indexes - NoSQL matters Dublin 2015
Mark Harwood - Building Entity Centric Indexes - NoSQL matters Dublin 2015Mark Harwood - Building Entity Centric Indexes - NoSQL matters Dublin 2015
Mark Harwood - Building Entity Centric Indexes - NoSQL matters Dublin 2015
 
Web2.0.2012 - lesson 8 - Google world
Web2.0.2012 - lesson 8 - Google worldWeb2.0.2012 - lesson 8 - Google world
Web2.0.2012 - lesson 8 - Google world
 
iCrossing: Designing For Visibility - ANA Digital Marketing And Social Media...
iCrossing: Designing For Visibility  - ANA Digital Marketing And Social Media...iCrossing: Designing For Visibility  - ANA Digital Marketing And Social Media...
iCrossing: Designing For Visibility - ANA Digital Marketing And Social Media...
 
Designing Websites for Visibility, Rob Garner at the Association of National ...
Designing Websites for Visibility, Rob Garner at the Association of National ...Designing Websites for Visibility, Rob Garner at the Association of National ...
Designing Websites for Visibility, Rob Garner at the Association of National ...
 
AMP - Accelerated Mobile Pages
AMP - Accelerated Mobile PagesAMP - Accelerated Mobile Pages
AMP - Accelerated Mobile Pages
 
03.Advance search
03.Advance search03.Advance search
03.Advance search
 
The Affiliate 2 0 Litmus Test
The Affiliate 2 0 Litmus TestThe Affiliate 2 0 Litmus Test
The Affiliate 2 0 Litmus Test
 
Chapter13
Chapter13Chapter13
Chapter13
 

Mehr von Sajjad "JJ" Arshad

Cached and Confused: Web Cache Deception in the Wild
Cached and Confused: Web Cache Deception in the WildCached and Confused: Web Cache Deception in the Wild
Cached and Confused: Web Cache Deception in the WildSajjad "JJ" Arshad
 
Cached and Confused: Web Cache Deception in the Wild
Cached and Confused: Web Cache Deception in the WildCached and Confused: Web Cache Deception in the Wild
Cached and Confused: Web Cache Deception in the WildSajjad "JJ" Arshad
 
Cached and Confused: Web Cache Deception in the Wild
Cached and Confused: Web Cache Deception in the WildCached and Confused: Web Cache Deception in the Wild
Cached and Confused: Web Cache Deception in the WildSajjad "JJ" Arshad
 
HotFuzz: Discovering Algorithmic Denial-of-Service Vulnerabilities Through Gu...
HotFuzz: Discovering Algorithmic Denial-of-Service Vulnerabilities Through Gu...HotFuzz: Discovering Algorithmic Denial-of-Service Vulnerabilities Through Gu...
HotFuzz: Discovering Algorithmic Denial-of-Service Vulnerabilities Through Gu...Sajjad "JJ" Arshad
 
Large-Scale Analysis of Style Injection by Relative Path Overwrite
Large-Scale Analysis of Style Injection by Relative Path OverwriteLarge-Scale Analysis of Style Injection by Relative Path Overwrite
Large-Scale Analysis of Style Injection by Relative Path OverwriteSajjad "JJ" Arshad
 
UNVEIL: A Large-Scale, Automated Approach to Detecting Ransomware
UNVEIL: A Large-Scale, Automated Approach to Detecting RansomwareUNVEIL: A Large-Scale, Automated Approach to Detecting Ransomware
UNVEIL: A Large-Scale, Automated Approach to Detecting RansomwareSajjad "JJ" Arshad
 
Practical Challenges of Type Checking in Control Flow Integrity
Practical Challenges of Type Checking in Control Flow IntegrityPractical Challenges of Type Checking in Control Flow Integrity
Practical Challenges of Type Checking in Control Flow IntegritySajjad "JJ" Arshad
 
Understanding and Mitigating the Security Risks of Content Inclusion in Web B...
Understanding and Mitigating the Security Risks of Content Inclusion in Web B...Understanding and Mitigating the Security Risks of Content Inclusion in Web B...
Understanding and Mitigating the Security Risks of Content Inclusion in Web B...Sajjad "JJ" Arshad
 
Identifying Extension-based Ad Injection via Fine-grained Web Content Provenance
Identifying Extension-based Ad Injection via Fine-grained Web Content ProvenanceIdentifying Extension-based Ad Injection via Fine-grained Web Content Provenance
Identifying Extension-based Ad Injection via Fine-grained Web Content ProvenanceSajjad "JJ" Arshad
 
Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Librari...
Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Librari...Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Librari...
Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Librari...Sajjad "JJ" Arshad
 
A Longitudinal Analysis of the ads.txt Standard
A Longitudinal Analysis of the ads.txt StandardA Longitudinal Analysis of the ads.txt Standard
A Longitudinal Analysis of the ads.txt StandardSajjad "JJ" Arshad
 
"Recommended For You": A First Look at Content Recommendation Networks
"Recommended For You": A First Look at Content Recommendation Networks"Recommended For You": A First Look at Content Recommendation Networks
"Recommended For You": A First Look at Content Recommendation NetworksSajjad "JJ" Arshad
 
Include Me Out: In-Browser Detection of Malicious Third-Party Content Inclusions
Include Me Out: In-Browser Detection of Malicious Third-Party Content InclusionsInclude Me Out: In-Browser Detection of Malicious Third-Party Content Inclusions
Include Me Out: In-Browser Detection of Malicious Third-Party Content InclusionsSajjad "JJ" Arshad
 
On the Effectiveness of Type-based Control Flow Integrity
On the Effectiveness of Type-based Control Flow IntegrityOn the Effectiveness of Type-based Control Flow Integrity
On the Effectiveness of Type-based Control Flow IntegritySajjad "JJ" Arshad
 

Mehr von Sajjad "JJ" Arshad (14)

Cached and Confused: Web Cache Deception in the Wild
Cached and Confused: Web Cache Deception in the WildCached and Confused: Web Cache Deception in the Wild
Cached and Confused: Web Cache Deception in the Wild
 
Cached and Confused: Web Cache Deception in the Wild
Cached and Confused: Web Cache Deception in the WildCached and Confused: Web Cache Deception in the Wild
Cached and Confused: Web Cache Deception in the Wild
 
Cached and Confused: Web Cache Deception in the Wild
Cached and Confused: Web Cache Deception in the WildCached and Confused: Web Cache Deception in the Wild
Cached and Confused: Web Cache Deception in the Wild
 
HotFuzz: Discovering Algorithmic Denial-of-Service Vulnerabilities Through Gu...
HotFuzz: Discovering Algorithmic Denial-of-Service Vulnerabilities Through Gu...HotFuzz: Discovering Algorithmic Denial-of-Service Vulnerabilities Through Gu...
HotFuzz: Discovering Algorithmic Denial-of-Service Vulnerabilities Through Gu...
 
Large-Scale Analysis of Style Injection by Relative Path Overwrite
Large-Scale Analysis of Style Injection by Relative Path OverwriteLarge-Scale Analysis of Style Injection by Relative Path Overwrite
Large-Scale Analysis of Style Injection by Relative Path Overwrite
 
UNVEIL: A Large-Scale, Automated Approach to Detecting Ransomware
UNVEIL: A Large-Scale, Automated Approach to Detecting RansomwareUNVEIL: A Large-Scale, Automated Approach to Detecting Ransomware
UNVEIL: A Large-Scale, Automated Approach to Detecting Ransomware
 
Practical Challenges of Type Checking in Control Flow Integrity
Practical Challenges of Type Checking in Control Flow IntegrityPractical Challenges of Type Checking in Control Flow Integrity
Practical Challenges of Type Checking in Control Flow Integrity
 
Understanding and Mitigating the Security Risks of Content Inclusion in Web B...
Understanding and Mitigating the Security Risks of Content Inclusion in Web B...Understanding and Mitigating the Security Risks of Content Inclusion in Web B...
Understanding and Mitigating the Security Risks of Content Inclusion in Web B...
 
Identifying Extension-based Ad Injection via Fine-grained Web Content Provenance
Identifying Extension-based Ad Injection via Fine-grained Web Content ProvenanceIdentifying Extension-based Ad Injection via Fine-grained Web Content Provenance
Identifying Extension-based Ad Injection via Fine-grained Web Content Provenance
 
Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Librari...
Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Librari...Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Librari...
Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Librari...
 
A Longitudinal Analysis of the ads.txt Standard
A Longitudinal Analysis of the ads.txt StandardA Longitudinal Analysis of the ads.txt Standard
A Longitudinal Analysis of the ads.txt Standard
 
"Recommended For You": A First Look at Content Recommendation Networks
"Recommended For You": A First Look at Content Recommendation Networks"Recommended For You": A First Look at Content Recommendation Networks
"Recommended For You": A First Look at Content Recommendation Networks
 
Include Me Out: In-Browser Detection of Malicious Third-Party Content Inclusions
Include Me Out: In-Browser Detection of Malicious Third-Party Content InclusionsInclude Me Out: In-Browser Detection of Malicious Third-Party Content Inclusions
Include Me Out: In-Browser Detection of Malicious Third-Party Content Inclusions
 
On the Effectiveness of Type-based Control Flow Integrity
On the Effectiveness of Type-based Control Flow IntegrityOn the Effectiveness of Type-based Control Flow Integrity
On the Effectiveness of Type-based Control Flow Integrity
 

Kürzlich hochgeladen

GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)Areesha Ahmad
 
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRLKochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRLkantirani197
 
Chemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdfChemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdfSumit Kumar yadav
 
Chemical Tests; flame test, positive and negative ions test Edexcel Internati...
Chemical Tests; flame test, positive and negative ions test Edexcel Internati...Chemical Tests; flame test, positive and negative ions test Edexcel Internati...
Chemical Tests; flame test, positive and negative ions test Edexcel Internati...ssuser79fe74
 
Zoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfZoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfSumit Kumar yadav
 
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43bNightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43bSérgio Sacani
 
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptxSCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptxRizalinePalanog2
 
GUIDELINES ON SIMILAR BIOLOGICS Regulatory Requirements for Marketing Authori...
GUIDELINES ON SIMILAR BIOLOGICS Regulatory Requirements for Marketing Authori...GUIDELINES ON SIMILAR BIOLOGICS Regulatory Requirements for Marketing Authori...
GUIDELINES ON SIMILAR BIOLOGICS Regulatory Requirements for Marketing Authori...Lokesh Kothari
 
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticsPulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticssakshisoni2385
 
GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)Areesha Ahmad
 
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 60009654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000Sapana Sha
 
Creating and Analyzing Definitive Screening Designs
Creating and Analyzing Definitive Screening DesignsCreating and Analyzing Definitive Screening Designs
Creating and Analyzing Definitive Screening DesignsNurulAfiqah307317
 
Pests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPirithiRaju
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsSérgio Sacani
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Sérgio Sacani
 
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...ssifa0344
 
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICESAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICEayushi9330
 
Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...
Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...
Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...Monika Rani
 
Disentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOSTDisentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOSTSérgio Sacani
 

Kürzlich hochgeladen (20)

CELL -Structural and Functional unit of life.pdf
CELL -Structural and Functional unit of life.pdfCELL -Structural and Functional unit of life.pdf
CELL -Structural and Functional unit of life.pdf
 
GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)
 
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRLKochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
 
Chemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdfChemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdf
 
Chemical Tests; flame test, positive and negative ions test Edexcel Internati...
Chemical Tests; flame test, positive and negative ions test Edexcel Internati...Chemical Tests; flame test, positive and negative ions test Edexcel Internati...
Chemical Tests; flame test, positive and negative ions test Edexcel Internati...
 
Zoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfZoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdf
 
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43bNightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
 
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptxSCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
 
GUIDELINES ON SIMILAR BIOLOGICS Regulatory Requirements for Marketing Authori...
GUIDELINES ON SIMILAR BIOLOGICS Regulatory Requirements for Marketing Authori...GUIDELINES ON SIMILAR BIOLOGICS Regulatory Requirements for Marketing Authori...
GUIDELINES ON SIMILAR BIOLOGICS Regulatory Requirements for Marketing Authori...
 
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticsPulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
 
GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)
 
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 60009654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
 
Creating and Analyzing Definitive Screening Designs
Creating and Analyzing Definitive Screening DesignsCreating and Analyzing Definitive Screening Designs
Creating and Analyzing Definitive Screening Designs
 
Pests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdf
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
 
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
 
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICESAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
 
Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...
Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...
Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...
 
Disentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOSTDisentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOST
 

How Tracking Companies Circumvented Ad Blockers Using WebSockets

  • 1. How Tracking Companies Circumvented Ad Blockers Using WebSockets Muhammad Ahmad Bashir, Sajjad Arshad, Engin Kirda, William Robertson, Christo Wilson
 
 Northeastern University
  • 3. Online Tracking Surge in online advertising (internet economy) • Ad networks pour in billions of dollars. • Value for their investment? • Extensive tracking to serve targeted ads. 2
  • 4. Online Tracking Surge in online advertising (internet economy) • Ad networks pour in billions of dollars. • Value for their investment? • Extensive tracking to serve targeted ads. 2 User concern over tracking • Led to the proliferation of ad blocking extensions
  • 5. Online Tracking Surge in online advertising (internet economy) • Ad networks pour in billions of dollars. • Value for their investment? • Extensive tracking to serve targeted ads. 2 User concern over tracking • Led to the proliferation of ad blocking extensions Ad networks fight back • E.g Using anti ad blocking scripts
  • 6. Google & Safari • Google evaded Safari’s third-party cookie blocking policy (Jonathan Mayer) • … by submitting a form in an invisible iFrame • Google was fined $22.5M by FTC 3
  • 7. This Talk How Ad Networks leveraged a bug in Chrome API to bypass Ad Blockers using WebSockets 4
  • 8. This Talk How Ad Networks leveraged a bug in Chrome API to bypass Ad Blockers using WebSockets 4 1. What caused this? 2. How this bug was leveraged by ad networks?
  • 15. Web Sockets 5 HTTP/S request response Chatting App anything new? Web Socket bidirectional • Both client and server can send/receive data • This is a persistent connection
  • 16. Web Sockets 5 HTTP/S request response Chatting App anything new? Web Socket bidirectional ws:// or wss:// • Both client and server can send/receive data • This is a persistent connection
  • 18. Ad Blockers 6 • Chrome extension chrome.webRequest API • Extension can inspect / modify / drop outgoing requests
  • 19. Ad Blockers 6 • Chrome extension chrome.webRequest API • Extension can inspect / modify / drop outgoing requests webRequest API
  • 20. Ad Blockers 6 • Chrome extension chrome.webRequest API • Extension can inspect / modify / drop outgoing requests http://cnn.com/logo.jpeg webRequest API
  • 21. Ad Blockers 6 • Chrome extension chrome.webRequest API • Extension can inspect / modify / drop outgoing requests http://cnn.com/logo.jpeg webRequest API Rule List Usually borrowed 
 from EasyList
  • 22. Ad Blockers 6 • Chrome extension chrome.webRequest API • Extension can inspect / modify / drop outgoing requests http://cnn.com/logo.jpeg webRequest API Rule List url Usually borrowed 
 from EasyList
  • 23. Ad Blockers 6 • Chrome extension chrome.webRequest API • Extension can inspect / modify / drop outgoing requests http://cnn.com/logo.jpeg webRequest API Rule List url Usually borrowed 
 from EasyList
  • 24. Ad Blockers 6 • Chrome extension chrome.webRequest API • Extension can inspect / modify / drop outgoing requests http://cnn.com/logo.jpeg webRequest API Rule List url Usually borrowed 
 from EasyList
  • 25. Ad Blockers 6 • Chrome extension chrome.webRequest API • Extension can inspect / modify / drop outgoing requests http://cnn.com/logo.jpeg webRequest API Rule List url webRequest API Usually borrowed 
 from EasyList
  • 26. Ad Blockers 6 • Chrome extension chrome.webRequest API • Extension can inspect / modify / drop outgoing requests http://cnn.com/logo.jpeg webRequest API Rule List http://doubleclick.com/s1.js url webRequest API Usually borrowed 
 from EasyList
  • 27. Ad Blockers 6 • Chrome extension chrome.webRequest API • Extension can inspect / modify / drop outgoing requests http://cnn.com/logo.jpeg webRequest API Rule List http://doubleclick.com/s1.js url webRequest API url Usually borrowed 
 from EasyList
  • 28. Ad Blockers 6 • Chrome extension chrome.webRequest API • Extension can inspect / modify / drop outgoing requests http://cnn.com/logo.jpeg webRequest API Rule List http://doubleclick.com/s1.js url webRequest API url Usually borrowed 
 from EasyList
  • 29. Ad Blockers 6 • Chrome extension chrome.webRequest API • Extension can inspect / modify / drop outgoing requests http://cnn.com/logo.jpeg webRequest API Rule List http://doubleclick.com/s1.js url webRequest API url Usually borrowed 
 from EasyList
  • 31. AdBlock Evasion • Bug in • ws/wss requests did not trigger the API 7 webRequest API
  • 32. AdBlock Evasion • Bug in • ws/wss requests did not trigger the API 7 2012 2013 2014 2015 2016 2017 2018 webRequest API
  • 33. AdBlock Evasion • Bug in • ws/wss requests did not trigger the API 7 2012 2013 2014 2015 2016 2017 2018 Original bug
 reported webRequest API
  • 34. AdBlock Evasion • Bug in • ws/wss requests did not trigger the API 7 2012 2013 2014 2015 2016 2017 2018 Original bug
 reported Users report 
 unblocked ads webRequest API
  • 35. AdBlock Evasion • Bug in • ws/wss requests did not trigger the API 7 2012 2013 2014 2015 2016 2017 2018 Original bug
 reported Users report 
 unblocked ads Patch Finalized 
 ( Landed) webRequest API
  • 36. AdBlock Evasion • Bug in • ws/wss requests did not trigger the API 7 2012 2013 2014 2015 2016 2017 2018 Original bug
 reported Users report 
 unblocked ads Patch Finalized 
 ( Landed) Chrome 58
 released webRequest API
  • 37. AdBlock Evasion • Bug in • ws/wss requests did not trigger the API 7 2012 2013 2014 2015 2016 2017 2018 * * * * Original bug
 reported Users report 
 unblocked ads Patch Finalized 
 ( Landed) Chrome 58
 released * Represents when our crawls were done webRequest API
  • 39. Data Crawling 8 100K websites 
 sampled from Alexa
  • 40. Data Crawling 8 100K websites 
 sampled from Alexa Visit 15 
 links / website Collected chains for all included resources
  • 41. Data Crawling 8 100K websites 
 sampled from Alexa Visit 15 
 links / website Collected chains for all included resources This means we know which resource included which other resource
  • 42. Data Crawling 8 100K websites 
 sampled from Alexa Visit 15 
 links / website Collected chains for all included resources Filter all resources which end in 
 web sockets Filter 
 WebSockets This means we know which resource included which other resource
  • 43. Data Crawling 8 100K websites 
 sampled from Alexa Visit 15 
 links / website Collected chains for all included resources Filter all resources which end in 
 web sockets Filter 
 WebSockets Detect A&A 
 WebSockets Mark web sockets
 which are used by A&A domains A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs This means we know which resource included which other resource
  • 44. Data Crawling 8 100K websites 
 sampled from Alexa Visit 15 
 links / website Collected chains for all included resources Filter all resources which end in 
 web sockets Filter 
 WebSockets Detect A&A 
 WebSockets Mark web sockets
 which are used by A&A domains A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs This means we know which resource included which other resource pub/ index.html srv.ws ads/ script.js ads/ frame.html ads/ img_a.jpg adnet/ data.ws Example Inclusion Tree
  • 45. Data Crawling 8 100K websites 
 sampled from Alexa Visit 15 
 links / website Collected chains for all included resources Filter all resources which end in 
 web sockets Filter 
 WebSockets Detect A&A 
 WebSockets Mark web sockets
 which are used by A&A domains A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs This means we know which resource included which other resource pub/ index.html srv.ws ads/ script.js ads/ frame.html ads/ img_a.jpg adnet/ data.ws Example Inclusion Tree WebSocket WebSocket
  • 46. Data Crawling 8 100K websites 
 sampled from Alexa Visit 15 
 links / website Collected chains for all included resources Filter all resources which end in 
 web sockets Filter 
 WebSockets Detect A&A 
 WebSockets Mark web sockets
 which are used by A&A domains A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs This means we know which resource included which other resource pub/ index.html srv.ws ads/ script.js ads/ frame.html adnet/ data.ws Example Inclusion Tree WebSocket WebSocket
  • 47. Data Crawling 8 100K websites 
 sampled from Alexa Visit 15 
 links / website Collected chains for all included resources Filter all resources which end in 
 web sockets Filter 
 WebSockets Detect A&A 
 WebSockets Mark web sockets
 which are used by A&A domains A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs This means we know which resource included which other resource pub/ index.html ads/ script.js ads/ frame.html adnet/ data.ws Example Inclusion Tree WebSocket
  • 49. High-Level Numbers 9 Crawl Dates %Websites 
 with sockets % Sockets
 with A&A
 Initiators % Sockets
 with A&A
 Receivers #Unique A&A
 Initiators #Unique A&A
 Receivers Apr 02-05, 2017 2.1 60.6 73.7 75 16 Apr 11-16, 2017 2.4 61.3 74.6 63 18 May 07-12, 2017 1.6 60.2 69.7 19 15 Oct 12-16, 2017 2.5 63.4 63.7 23 18 Before 
 Chrome 58
  • 50. High-Level Numbers 9 Crawl Dates %Websites 
 with sockets % Sockets
 with A&A
 Initiators % Sockets
 with A&A
 Receivers #Unique A&A
 Initiators #Unique A&A
 Receivers Apr 02-05, 2017 2.1 60.6 73.7 75 16 Apr 11-16, 2017 2.4 61.3 74.6 63 18 May 07-12, 2017 1.6 60.2 69.7 19 15 Oct 12-16, 2017 2.5 63.4 63.7 23 18 Before 
 Chrome 58 After 
 Chrome 58
  • 51. High-Level Numbers 9 Crawl Dates %Websites 
 with sockets % Sockets
 with A&A
 Initiators % Sockets
 with A&A
 Receivers #Unique A&A
 Initiators #Unique A&A
 Receivers Apr 02-05, 2017 2.1 60.6 73.7 75 16 Apr 11-16, 2017 2.4 61.3 74.6 63 18 May 07-12, 2017 1.6 60.2 69.7 19 15 Oct 12-16, 2017 2.5 63.4 63.7 23 18 • ~2% websites use web sockets. Before 
 Chrome 58 After 
 Chrome 58
  • 52. High-Level Numbers 9 Crawl Dates %Websites 
 with sockets % Sockets
 with A&A
 Initiators % Sockets
 with A&A
 Receivers #Unique A&A
 Initiators #Unique A&A
 Receivers Apr 02-05, 2017 2.1 60.6 73.7 75 16 Apr 11-16, 2017 2.4 61.3 74.6 63 18 May 07-12, 2017 1.6 60.2 69.7 19 15 Oct 12-16, 2017 2.5 63.4 63.7 23 18 • ~2% websites use web sockets. • ~61 % sockets are initiated by A&A domains Before 
 Chrome 58 After 
 Chrome 58 A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs
  • 53. High-Level Numbers 9 Crawl Dates %Websites 
 with sockets % Sockets
 with A&A
 Initiators % Sockets
 with A&A
 Receivers #Unique A&A
 Initiators #Unique A&A
 Receivers Apr 02-05, 2017 2.1 60.6 73.7 75 16 Apr 11-16, 2017 2.4 61.3 74.6 63 18 May 07-12, 2017 1.6 60.2 69.7 19 15 Oct 12-16, 2017 2.5 63.4 63.7 23 18 • ~2% websites use web sockets. • ~61 % sockets are initiated by A&A domains • ~71 % sockets contact an A&A domain Before 
 Chrome 58 After 
 Chrome 58 A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs
  • 54. High-Level Numbers 9 Crawl Dates %Websites 
 with sockets % Sockets
 with A&A
 Initiators % Sockets
 with A&A
 Receivers #Unique A&A
 Initiators #Unique A&A
 Receivers Apr 02-05, 2017 2.1 60.6 73.7 75 16 Apr 11-16, 2017 2.4 61.3 74.6 63 18 May 07-12, 2017 1.6 60.2 69.7 19 15 Oct 12-16, 2017 2.5 63.4 63.7 23 18 • ~2% websites use web sockets. • ~61 % sockets are initiated by A&A domains • ~71 % sockets contact an A&A domain • # Initiators drop after Chrome 58 release. Before 
 Chrome 58 After 
 Chrome 58 A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs
  • 55. High-Level Numbers 9 Crawl Dates %Websites 
 with sockets % Sockets
 with A&A
 Initiators % Sockets
 with A&A
 Receivers #Unique A&A
 Initiators #Unique A&A
 Receivers Apr 02-05, 2017 2.1 60.6 73.7 75 16 Apr 11-16, 2017 2.4 61.3 74.6 63 18 May 07-12, 2017 1.6 60.2 69.7 19 15 Oct 12-16, 2017 2.5 63.4 63.7 23 18 • ~2% websites use web sockets. • ~61 % sockets are initiated by A&A domains • ~71 % sockets contact an A&A domain • # Initiators drop after Chrome 58 release. • Small but persistent A&A receivers. Before 
 Chrome 58 After 
 Chrome 58 A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs
  • 58. Initiators and Receivers 10 Initiator Receiver ws/s JavaScript
  • 59. Initiators and Receivers 10 Initiator Receiver ws/s JavaScript
  • 60. Initiators and Receivers 10 A&A Initiator #A&A
 Receivers facebook 11 google 11 doubleclick 9 youtube 8 addthis 8 hotjar 7 googlesyndication 6 twitter 5 sharethis 4 adnxs 3 Top A&A 
 Initiators Initiator Receiver ws/s JavaScript
  • 61. Initiators and Receivers 10 A&A Initiator #A&A
 Receivers facebook 11 google 11 doubleclick 9 youtube 8 addthis 8 hotjar 7 googlesyndication 6 twitter 5 sharethis 4 adnxs 3 Top A&A 
 Initiators Initiator Receiver ws/s JavaScript
  • 62. Initiators and Receivers 10 A&A Initiator #A&A
 Receivers facebook 11 google 11 doubleclick 9 youtube 8 addthis 8 hotjar 7 googlesyndication 6 twitter 5 sharethis 4 adnxs 3 A&A Receiver #A&A
 Initiators realtime 27 33across 19 intercom 16 disqus 13 zopim 12 hotjar 11 feedjit 10 lockerdome 8 inspectlet 6 smartsupp 4 Top A&A 
 Initiators Top A&A 
 Receivers Initiator Receiver ws/s JavaScript
  • 63. Initiators and Receivers 10 A&A Initiator #A&A
 Receivers facebook 11 google 11 doubleclick 9 youtube 8 addthis 8 hotjar 7 googlesyndication 6 twitter 5 sharethis 4 adnxs 3 A&A Receiver #A&A
 Initiators realtime 27 33across 19 intercom 16 disqus 13 zopim 12 hotjar 11 feedjit 10 lockerdome 8 inspectlet 6 smartsupp 4 Top A&A 
 Initiators Top A&A 
 Receivers Initiator Receiver ws/s • Disqus provides comment board services. JavaScript
  • 64. Initiators and Receivers 10 A&A Initiator #A&A
 Receivers facebook 11 google 11 doubleclick 9 youtube 8 addthis 8 hotjar 7 googlesyndication 6 twitter 5 sharethis 4 adnxs 3 A&A Receiver #A&A
 Initiators realtime 27 33across 19 intercom 16 disqus 13 zopim 12 hotjar 11 feedjit 10 lockerdome 8 inspectlet 6 smartsupp 4 Top A&A 
 Initiators Top A&A 
 Receivers Initiator Receiver ws/s • Disqus provides comment board services. • Zopim, Intercom, Smartsupp provide live chat services. JavaScript
  • 65. Initiators and Receivers 10 A&A Initiator #A&A
 Receivers facebook 11 google 11 doubleclick 9 youtube 8 addthis 8 hotjar 7 googlesyndication 6 twitter 5 sharethis 4 adnxs 3 A&A Receiver #A&A
 Initiators realtime 27 33across 19 intercom 16 disqus 13 zopim 12 hotjar 11 feedjit 10 lockerdome 8 inspectlet 6 smartsupp 4 Top A&A 
 Initiators Top A&A 
 Receivers Initiator Receiver ws/s • Disqus provides comment board services. • Zopim, Intercom, Smartsupp provide live chat services. • 33across & Lockerdome are advertising platforms. JavaScript
  • 66. Initiators and Receivers 10 A&A Initiator #A&A
 Receivers facebook 11 google 11 doubleclick 9 youtube 8 addthis 8 hotjar 7 googlesyndication 6 twitter 5 sharethis 4 adnxs 3 A&A Receiver #A&A
 Initiators realtime 27 33across 19 intercom 16 disqus 13 zopim 12 hotjar 11 feedjit 10 lockerdome 8 inspectlet 6 smartsupp 4 Top A&A 
 Initiators Top A&A 
 Receivers Initiator Receiver ws/s • Disqus provides comment board services. • Zopim, Intercom, Smartsupp provide live chat services. • 33across & Lockerdome are advertising platforms. • Inspectlet & Hotjar are session replay services. JavaScript
  • 67. Sent Items Over Web Sockets 11
  • 68. Sent Items Over Web Sockets 11 Cookie IP User IDs Fingerprinting 
 Variables DOM % Requests 0 20 40 60 80 WebSockets HTTP/S
  • 69. Sent Items Over Web Sockets 11 •Stateful Identifiers like Cookie and User IDs Cookie IP User IDs Fingerprinting 
 Variables DOM % Requests 0 20 40 60 80 WebSockets HTTP/S
  • 70. Sent Items Over Web Sockets 11 •Stateful Identifiers like Cookie and User IDs • Fingerprinting data in ~3.4% WebSockets. 
 97% is 33across Cookie IP User IDs Fingerprinting 
 Variables DOM % Requests 0 20 40 60 80 WebSockets HTTP/S
  • 71. Sent Items Over Web Sockets 11 •Stateful Identifiers like Cookie and User IDs • Fingerprinting data in ~3.4% WebSockets. 
 97% is 33across • ~1.6% WebSockets sends the entire DOM to 
 Hotjar, LuckyOrange, TruConversion Cookie IP User IDs Fingerprinting 
 Variables DOM % Requests 0 20 40 60 80 WebSockets HTTP/S
  • 72. 12 Received Items Over Web Sockets
  • 73. 12 Received Items Over Web Sockets HTML JSON JavaScript Images % Responses 0 10 20 30 40 50 WebSockets HTTP/S
  • 74. 12 Received Items Over Web Sockets HTML JSON JavaScript Images % Responses 0 10 20 30 40 50 WebSockets HTTP/S
  • 75. 12 Received Items Over Web Sockets HTML JSON JavaScript Images % Responses 0 10 20 30 40 50 WebSockets HTTP/S
  • 76. 12 Received Items Over Web Sockets Ads served from Lockerdome HTML JSON JavaScript Images % Responses 0 10 20 30 40 50 WebSockets HTTP/S
  • 77. Summary • ~67% of socket connections are initiated or received by A&A domains. • Major companies like Google, Facebook, Addthis adopted WebSockets. 
 Abandoned after Chrome 58 was released. • The culprits: • 33across was harvesting fingerprinting data. • DOM exfiltration by HotJar, LuckyOrange, TruConversion • Lockerdome downloaded URLs to serve ads. • We need to keep up with the current practices of A&A companies. 13
  • 78. Summary • ~67% of socket connections are initiated or received by A&A domains. • Major companies like Google, Facebook, Addthis adopted WebSockets. 
 Abandoned after Chrome 58 was released. • The culprits: • 33across was harvesting fingerprinting data. • DOM exfiltration by HotJar, LuckyOrange, TruConversion • Lockerdome downloaded URLs to serve ads. • We need to keep up with the current practices of A&A companies. 13 Questions? ahmad@ccs.neu.edu
  • 80. Inclusion Chain 15 <html> <body> <script src=“tracker/script.js” </script> <img src=“tracker/img.jpg”> </img> <script src=“ads/script.js”> </script> <iframe src=“frame.html”> <html> <body> <script src=“script_12.js”> </script> <img src=“img_a.jpg”> </img> </body> </html> </iframe> </body> </html> pub/ index.html tracker/ script.js tracker/ img.jpg ads/ script.js ads/ frame.html ads/ script_12.js ads/ img_a.jpg adnet/ data.ws Source code for ads/script_12.js
 
 let ws =
 new WebSocket(“ws://adnet/data.ws”, …);
 ws.onopen = function (e) {ws.send(“…”);} DOM Tree Inclusion Tree