How Tracking Companies Circumvented Ad Blockers Using WebSockets

Size: px
Start display at page:

Download "How Tracking Companies Circumvented Ad Blockers Using WebSockets"

Transcription

1 How Tracking Companies Circumvented Ad Blockers Using WebSockets Muhammad Ahmad Bashir, Sajjad Arshad, Engin Kirda, William Robertson, Christo Wilson Northeastern University

2 Online Tracking 2

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. User concern over tracking Led to the proliferation of ad blocking extensions 2

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. User concern over tracking Led to the proliferation of ad blocking extensions Ad networks fight back E.g Using anti ad blocking scripts 2

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 1. What caused this? 2. How this bug was leveraged by ad networks? 4

9 Web Sockets 5

10 Web Sockets HTTP/S 5

11 Web Sockets HTTP/S request response 5

12 Web Sockets HTTP/S request response Chatting App 5

13 Web Sockets HTTP/S request response Chatting App anything new? 5

14 Web Sockets HTTP/S request response Chatting App anything new? Web Socket 5

15 Web Sockets HTTP/S request response Chatting App anything new? Web Socket bidirectional Both client and server can send/receive data This is a persistent connection 5

16 Web Sockets 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 5

17 Ad Blockers 6

18 Ad Blockers Chrome extension chrome.webrequest API Extension can inspect / modify / drop outgoing requests 6

19 Ad Blockers Chrome extension chrome.webrequest API Extension can inspect / modify / drop outgoing requests webrequest API 6

20 Ad Blockers Chrome extension chrome.webrequest API Extension can inspect / modify / drop outgoing requests webrequest API 6

21 Ad Blockers Chrome extension chrome.webrequest API Extension can inspect / modify / drop outgoing requests webrequest API Usually borrowed from EasyList Rule List 6

22 Ad Blockers Chrome extension chrome.webrequest API Extension can inspect / modify / drop outgoing requests webrequest API url Usually borrowed from EasyList Rule List 6

23 Ad Blockers Chrome extension chrome.webrequest API Extension can inspect / modify / drop outgoing requests webrequest API url Usually borrowed from EasyList Rule List 6

24 Ad Blockers Chrome extension chrome.webrequest API Extension can inspect / modify / drop outgoing requests webrequest API url Usually borrowed from EasyList Rule List 6

25 Ad Blockers Chrome extension chrome.webrequest API Extension can inspect / modify / drop outgoing requests webrequest API url Usually borrowed from EasyList Rule List webrequest API 6

26 Ad Blockers Chrome extension chrome.webrequest API Extension can inspect / modify / drop outgoing requests webrequest API url Usually borrowed from EasyList Rule List webrequest API 6

27 Ad Blockers Chrome extension chrome.webrequest API Extension can inspect / modify / drop outgoing requests webrequest API url Usually borrowed from EasyList Rule List url webrequest API 6

28 Ad Blockers Chrome extension chrome.webrequest API Extension can inspect / modify / drop outgoing requests webrequest API url Usually borrowed from EasyList Rule List url webrequest API 6

29 Ad Blockers Chrome extension chrome.webrequest API Extension can inspect / modify / drop outgoing requests webrequest API url Usually borrowed from EasyList Rule List url webrequest API 6

30 AdBlock Evasion 7

31 AdBlock Evasion Bug in webrequest API ws/wss requests did not trigger the API 7

32 AdBlock Evasion Bug in webrequest API ws/wss requests did not trigger the API

33 AdBlock Evasion Bug in webrequest API ws/wss requests did not trigger the API Original bug reported

34 AdBlock Evasion Bug in webrequest API ws/wss requests did not trigger the API Original bug reported Users report unblocked ads

35 AdBlock Evasion Bug in webrequest API ws/wss requests did not trigger the API Original bug reported Users report unblocked ads Patch Finalized ( Landed)

36 AdBlock Evasion Bug in webrequest API ws/wss requests did not trigger the API Original bug reported Users report unblocked ads Patch Finalized ( Landed) Chrome 58 released 7

37 AdBlock Evasion Bug in webrequest API ws/wss requests did not trigger the API Original bug reported Users report unblocked ads Patch Finalized ( Landed) * * * * * Represents when our crawls were done Chrome 58 released 7

38 Data Crawling 8

39 Data Crawling 100K websites sampled from Alexa 8

40 Data Crawling 100K websites sampled from Alexa Visit 15 links / website Collected chains for all included resources 8

41 Data Crawling This means we know which resource included which other resource 100K websites sampled from Alexa Visit 15 links / website Collected chains for all included resources 8

42 Data Crawling 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 Filter WebSockets Filter all resources which end in web sockets 8

43 Data Crawling 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 Filter WebSockets Mark web sockets which are used by A&A domains Detect A&A WebSockets Filter all resources which end in web sockets A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs 8

44 Data Crawling 100K websites sampled from Alexa Visit 15 links / website Example Inclusion Tree srv.ws pub/ index.html ads/ script.js Collected chains for all included resources Mark web sockets which are used by A&A domains This means we know which resource included which other resource Filter WebSockets Detect A&A WebSockets Filter all resources which end in web sockets adnet/ data.ws ads/ frame.html ads/ img_a.jpg A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs 8

45 Data Crawling 100K websites sampled from Alexa Visit 15 links / website Example Inclusion Tree srv.ws WebSocket pub/ index.html ads/ script.js Collected chains for all included resources Mark web sockets which are used by A&A domains This means we know which resource included which other resource Filter WebSockets Detect A&A WebSockets Filter all resources which end in web sockets adnet/ data.ws WebSocket ads/ frame.html ads/ img_a.jpg A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs 8

46 Data Crawling 100K websites sampled from Alexa Visit 15 links / website Example Inclusion Tree srv.ws WebSocket pub/ index.html ads/ script.js Collected chains for all included resources Mark web sockets which are used by A&A domains This means we know which resource included which other resource Filter WebSockets Detect A&A WebSockets Filter all resources which end in web sockets adnet/ data.ws WebSocket ads/ frame.html A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs 8

47 Data Crawling 100K websites sampled from Alexa Visit 15 links / website Example Inclusion Tree pub/ index.html ads/ script.js Collected chains for all included resources Mark web sockets which are used by A&A domains This means we know which resource included which other resource Filter WebSockets Detect A&A WebSockets Filter all resources which end in web sockets adnet/ data.ws WebSocket ads/ frame.html A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs 8

48 High-Level Numbers 9

49 High-Level Numbers Before Chrome 58 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, Apr 11-16, May 07-12, Oct 12-16,

50 High-Level Numbers Before Chrome 58 After Chrome 58 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, Apr 11-16, May 07-12, Oct 12-16,

51 High-Level Numbers Before Chrome 58 After Chrome 58 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, Apr 11-16, May 07-12, Oct 12-16, ~2% websites use web sockets. 9

52 High-Level Numbers Before Chrome 58 After Chrome 58 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, Apr 11-16, May 07-12, Oct 12-16, ~2% websites use web sockets. ~61 % sockets are initiated by A&A domains A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs 9

53 High-Level Numbers Before Chrome 58 After Chrome 58 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, Apr 11-16, May 07-12, Oct 12-16, ~2% websites use web sockets. ~61 % sockets are initiated by A&A domains A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs ~71 % sockets contact an A&A domain 9

54 High-Level Numbers Before Chrome 58 After Chrome 58 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, Apr 11-16, May 07-12, Oct 12-16, ~2% websites use web sockets. ~61 % sockets are initiated by A&A domains A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs ~71 % sockets contact an A&A domain # Initiators drop after Chrome 58 release. 9

55 High-Level Numbers Before Chrome 58 After Chrome 58 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, Apr 11-16, May 07-12, Oct 12-16, ~2% websites use web sockets. ~61 % sockets are initiated by A&A domains A&A = Advertising and Analytics e.g. DoubleClick, Criteo, Adnxs ~71 % sockets contact an A&A domain # Initiators drop after Chrome 58 release. Small but persistent A&A receivers. 9

56 Initiators and Receivers 10

57 Initiators and Receivers Initiator JavaScript Receiver 10

58 Initiators and Receivers Initiator JavaScript ws/s Receiver 10

59 Initiators and Receivers Initiator JavaScript ws/s Receiver 10

60 Initiators and Receivers Initiator JavaScript ws/s Receiver Top A&A Initiators 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 10

61 Initiators and Receivers Initiator JavaScript ws/s Receiver Top A&A Initiators 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 10

62 Initiators and Receivers Initiator JavaScript ws/s Receiver Top A&A Initiators 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 Receivers 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 10

63 Initiators and Receivers Initiator JavaScript ws/s Receiver Top A&A Initiators 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 Receivers 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 Disqus provides comment board services. 10

64 Initiators and Receivers Initiator JavaScript ws/s Receiver Top A&A Initiators 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 Receivers 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 Disqus provides comment board services. Zopim, Intercom, Smartsupp provide live chat services. 10

65 Initiators and Receivers Initiator JavaScript ws/s Receiver Top A&A Initiators 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 Receivers 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 Disqus provides comment board services. Zopim, Intercom, Smartsupp provide live chat services. 33across & Lockerdome are advertising platforms. 10

66 Initiators and Receivers Initiator JavaScript ws/s Receiver Top A&A Initiators 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 Receivers 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 Disqus provides comment board services. Zopim, Intercom, Smartsupp provide live chat services. 33across & Lockerdome are advertising platforms. Inspectlet & Hotjar are session replay services. 10

67 Sent Items Over Web Sockets 11

68 Sent Items Over Web Sockets Cookie IP User IDs Fingerprinting Variables DOM WebSockets HTTP/S % Requests 11

69 Sent Items Over Web Sockets Cookie IP User IDs Fingerprinting Variables WebSockets HTTP/S DOM % Requests Stateful Identifiers like Cookie and User IDs 11

70 Sent Items Over Web Sockets Cookie IP User IDs Fingerprinting Variables WebSockets HTTP/S DOM % Requests Stateful Identifiers like Cookie and User IDs Fingerprinting data in ~3.4% WebSockets. 97% is 33across 11

71 Sent Items Over Web Sockets Cookie IP User IDs Fingerprinting Variables WebSockets HTTP/S DOM % Requests 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 11

72 Received Items Over Web Sockets 12

73 Received Items Over Web Sockets HTML JSON JavaScript Images WebSockets HTTP/S % Responses 12

74 Received Items Over Web Sockets HTML JSON JavaScript WebSockets HTTP/S Images % Responses 12

75 Received Items Over Web Sockets HTML JSON JavaScript WebSockets HTTP/S Images % Responses 12

76 Received Items Over Web Sockets HTML JSON JavaScript WebSockets HTTP/S Images % Responses Ads served from Lockerdome 12

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. Questions? 13

79 Backup Slides

80 Inclusion Chain DOM Tree Inclusion Tree <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> Source code for ads/script_12.js let ws = new WebSocket( ws://adnet/data.ws, ); ws.onopen = function (e) {ws.send( );} tracker/ script.js tracker/ img.jpg pub/ index.html ads/ script_12.js adnet/ data.ws ads/ script.js ads/ frame.html ads/ img_a.jpg 15

How Tracking Companies Circumvented Ad Blockers Using WebSockets

How Tracking Companies Circumvented Ad Blockers Using WebSockets 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

More information

Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Libraries on the Web

Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Libraries on the Web Toby Lauinger, A. Chaabane, S. Arshad, W. Robertson, C. Wilson, E. Kirda Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Libraries on the Web NDSS 2017 Motivation 87% of Alexa websites

More information

You Are Being Watched Analysis of JavaScript-Based Trackers

You Are Being Watched Analysis of JavaScript-Based Trackers You Are Being Watched Analysis of JavaScript-Based Trackers Rohit Mehra IIIT-Delhi rohit1376@iiitd.ac.in Shobhita Saxena IIIT-Delhi shobhita1315@iiitd.ac.in Vaishali Garg IIIT-Delhi vaishali1318@iiitd.ac.in

More information

Annoyed Users: Ads and Ad-Block Usage in the Wild

Annoyed Users: Ads and Ad-Block Usage in the Wild Annoyed Users: Ads and Ad-Block Usage in the Wild Enric Pujol TU Berlin Oliver Hohlfeld RWTH Aachen Anja Feldmann TU Berlin IMC 15 Tokyo, Japan 2 http://www.journalism.org/2015/04/29/digital-news-revenue-fact-sheet

More information

October 08: Introduction to Web Security

October 08: Introduction to Web Security October 08: Introduction to Web Security Scribe: Rohan Padhye October 8, 2015 Web security is an important topic because web applications are particularly hard to secure, and are one of the most vulnerable/buggy

More information

s642 web security computer security adam everspaugh

s642 web security computer security adam everspaugh s642 computer security web security adam everspaugh ace@cs.wisc.edu review memory protections / data execution prevention / address space layout randomization / stack protector Sandboxing / Limit damage

More information

iframe programming with jquery jquery Summit 2011

iframe programming with jquery jquery Summit 2011 iframe programming with jquery jquery Summit 2011 who invited this guy? name s ben strange last name work at disqus co-author, Third-party JavaScript disqus? dis cuss dĭ-skŭs' third-party commenting platform

More information

Northeastern University Systems Security Lab

Northeastern University Systems Security Lab Northeastern University Systems Security Lab Why is CSP Failing? Trends and Challenges in CSP Adoption Symposium on Research in Attacks, Intrusions and Defenses (RAID) Gothenburg, Sweden, September 2014

More information

Validation of Web Alteration Detection using Link Change State in Web Page

Validation of Web Alteration Detection using Link Change State in Web Page Web 182-8585 1 5-1 m-shouta@uec.ac.jp,zetaka@computer.org Web Web URL Web Alexa Top 100 Web Validation of Web Alteration Detection using Link Change State in Web Page Shouta Mochizuki Tetsuji Takada The

More information

The Ad Wars: Retrospective Measurement and Analysis of Anti-Adblock Filter Lists

The Ad Wars: Retrospective Measurement and Analysis of Anti-Adblock Filter Lists The Ad Wars: Retrospective Measurement and Analysis of Anti-Adblock Filter Lists Umar Iqbal The University of Iowa Zubair Shafiq The University of Iowa Zhiyun Qian University of California-Riverside ABSTRACT

More information

WHY CSRF WORKS. Implicit authentication by Web browsers

WHY CSRF WORKS. Implicit authentication by Web browsers WHY CSRF WORKS To explain the root causes of, and solutions to CSRF attacks, I need to share with you the two broad types of authentication mechanisms used by Web applications: 1. Implicit authentication

More information

Browser code isolation

Browser code isolation CS 155 Spring 2016 Browser code isolation John Mitchell Acknowledgments: Lecture slides are from the Computer Security course taught by Dan Boneh and John Mitchell at Stanford University. When slides are

More information

RKN 2015 Application Layer Short Summary

RKN 2015 Application Layer Short Summary RKN 2015 Application Layer Short Summary HTTP standard version now: 1.1 (former 1.0 HTTP /2.0 in draft form, already used HTTP Requests Headers and body counterpart: answer Safe methods (requests): GET,

More information

CSE361 Web Security. Attacks against the client-side of web applications. Nick Nikiforakis

CSE361 Web Security. Attacks against the client-side of web applications. Nick Nikiforakis CSE361 Web Security Attacks against the client-side of web applications Nick Nikiforakis nick@cs.stonybrook.edu Despite the same origin policy Many things can go wrong at the client-side of a web application

More information

How Facebook knows exactly what turns you on

How Facebook knows exactly what turns you on How Facebook knows exactly what turns you on We have developed our anti tracking system to combat a culture of user data collection which, we believe, has gone too far. These systems operate hidden from

More information

GOOGLE AMP EXTENSION FOR MAGENTO 2 USER GUIDE

GOOGLE AMP EXTENSION FOR MAGENTO 2 USER GUIDE 1 GOOGLE AMP EXTENSION FOR MAGENTO 2 USER GUIDE 1 2 Contents 1. Google AMP Extension for Magento 2 Overview... 3 2. How Does Google AMP Extension for Magento 2 Work?... 3 2.1 How to create and customize

More information

!!!!!! Digital Foundations

!!!!!! Digital Foundations Digital Foundations Digital Literacy Knowing which tools to use and how to use them. The goal of our workshop today is to improve your digital literacy so you strategically choose what to do online and

More information

Founded the web application security lab

Founded the web application security lab Robert RSnake Hansen - CEO SecTheory LLC Bespoke Boutique Internet Security Web Application/Browser Security Network/OS Security Advisory capacity to VCs/start-ups We solve tough problems. http://www.sectheory.com/

More information

Ex-Ray: Detection of History-Leaking Browser Extensions

Ex-Ray: Detection of History-Leaking Browser Extensions Ex-Ray: Detection of History-Leaking Browser Extensions Michael Weissbacher, Enrico Mariconti, Guillermo Suarez-Tangil, Gianluca Stringhini, William Robertson, Engin Kirda Northeastern University, University

More information

Hacking with WebSockets. Mike Shema Sergey Shekyan Vaagn Toukharian

Hacking with WebSockets. Mike Shema Sergey Shekyan Vaagn Toukharian Hacking with WebSockets Mike Shema Sergey Shekyan Vaagn Toukharian December 2012 1 A Trip into HTML5 WebSockets background Their appeal to developers Their appeal to attackers What makes them better 2

More information

User Interaction: jquery

User Interaction: jquery User Interaction: jquery Assoc. Professor Donald J. Patterson INF 133 Fall 2012 1 jquery A JavaScript Library Cross-browser Free (beer & speech) It supports manipulating HTML elements (DOM) animations

More information

FIREFLY ARCHITECTURE: CO-BROWSING AT SCALE FOR THE ENTERPRISE

FIREFLY ARCHITECTURE: CO-BROWSING AT SCALE FOR THE ENTERPRISE FIREFLY ARCHITECTURE: CO-BROWSING AT SCALE FOR THE ENTERPRISE Table of Contents Introduction... 2 Architecture Overview... 2 Supported Browser Versions and Technologies... 3 Firewalls and Login Sessions...

More information

Base64 The Security Killer

Base64 The Security Killer Base64 The Security Killer Kevin Fiscus NWN Corporation Session ID: DAS-203 Session Classification: Intermediate A Short (Made Up) Security Story Helix Pharmaceuticals is concerned about security Industrial

More information

I never signed up for this!

I never signed up for this! I never signed up for this! Privacy implications of email tracking Steven Englehardt @s_englehardt senglehardt.com I m now at... Joint work with: Jeffrey Han and Arvind Narayanan Many emails are completely

More information

Copyright is owned by the Author of the thesis. Permission is given for a copy to be downloaded by an individual for the purpose of research and

Copyright is owned by the Author of the thesis. Permission is given for a copy to be downloaded by an individual for the purpose of research and Copyright is owned by the Author of the thesis. Permission is given for a copy to be downloaded by an individual for the purpose of research and private study only. The thesis may not be reproduced elsewhere

More information

Real-Time GIS: Leveraging Stream Services

Real-Time GIS: Leveraging Stream Services Real-Time GIS: Leveraging Stream Services Mark Bramer Senior Technical Analyst Esri Professional Services mbramer@esri.com RJ Sunderman Product Engineer GeoEvent Extension Product Team rsunderman@esri.com

More information

Origin Policy Enforcement in Modern Browsers

Origin Policy Enforcement in Modern Browsers Origin Policy Enforcement in Modern Browsers A Case Study in Same Origin Implementations Frederik Braun Frederik Braun (Ruhr-Uni Bochum/Mozilla) Origin Policy Enforcement June 21, 2013 1 / 32 Table of

More information

XHound: Quantifying the Fingerprintability of Browser Extensions. Priyankit Bangia Software Engineering. By Oleksii Starov & Nick Nikiforakis

XHound: Quantifying the Fingerprintability of Browser Extensions. Priyankit Bangia Software Engineering. By Oleksii Starov & Nick Nikiforakis XHound: Quantifying the Fingerprintability of Browser Extensions By Oleksii Starov & Nick Nikiforakis Priyankit Bangia Software Engineering INTRODUCTION What are browser extensions? Browsers are designed

More information

Kaazing Gateway. Open Source HTML 5 Web Socket Server

Kaazing Gateway. Open Source HTML 5 Web Socket Server Kaazing Gateway Open Source HTML 5 Web Socket Server Speaker John Fallows Co-Founder: Kaazing Co-Author: Pro JSF and Ajax, Apress Participant: HTML 5 Community Agenda Networking Review HTML 5 Communication

More information

Some Facts Web 2.0/Ajax Security

Some Facts Web 2.0/Ajax Security /publications/notes_and_slides Some Facts Web 2.0/Ajax Security Allen I. Holub Holub Associates allen@holub.com Hackers attack bugs. The more complex the system, the more bugs it will have. The entire

More information

Programming WebSockets. Sean Sullivan OSCON July 22, 2010

Programming WebSockets. Sean Sullivan OSCON July 22, 2010 Programming WebSockets Sean Sullivan OSCON July 22, 2010 About me Web application developers HTML 5! improved JavaScript implementations! WebSockets! WebSockets? WebSockets a technology that enables

More information

Developing Ajax Web Apps with GWT. Session I

Developing Ajax Web Apps with GWT. Session I Developing Ajax Web Apps with GWT Session I Contents Introduction Traditional Web RIAs Emergence of Ajax Ajax ( GWT ) Google Web Toolkit Installing and Setting up GWT in Eclipse The Project Structure Running

More information

Eme03. Mobilise your Applications as Progressive Web Apps

Eme03. Mobilise your Applications as Progressive Web Apps Eme03. Mobilise your Applications as Progressive Web Apps Paul Harrison (Eight Dot Three) @PaulHarrison Knut Herrman (Leonso GmbH) @KnutHerrman 22nd May 2018 #engageug 1 Paul Harrison Consultant at own

More information

COMET, HTML5 WEBSOCKETS OVERVIEW OF WEB BASED SERVER PUSH TECHNOLOGIES. Comet HTML5 WebSockets. Peter R. Egli INDIGOO.COM. indigoo.com. 1/18 Rev. 2.

COMET, HTML5 WEBSOCKETS OVERVIEW OF WEB BASED SERVER PUSH TECHNOLOGIES. Comet HTML5 WebSockets. Peter R. Egli INDIGOO.COM. indigoo.com. 1/18 Rev. 2. COMET, HTML5 WEBSOCKETS OVERVIEW OF WEB BASED SERVER PUSH TECHNOLOGIES Peter R. Egli INDIGOO.COM 1/18 Contents 1. Server push technologies 2. HTML5 server events 3. WebSockets 4. Reverse HTTP 5. HTML5

More information

Know Your Own Risks: Content Security Policy Report Aggregation and Analysis

Know Your Own Risks: Content Security Policy Report Aggregation and Analysis SESSION ID: CDS-F03 Know Your Own Risks: Content Security Policy Report Aggregation and Analysis Ksenia Dmitrieva Senior Consultant Cigital, Inc. @KseniaDmitrieva Agenda What is Content Security Policy

More information

Software Architecture and Engineering: Part II

Software Architecture and Engineering: Part II Software Architecture and Engineering: Part II ETH Zurich, Spring 2016 Prof. http://www.srl.inf.ethz.ch/ Framework SMT solver Alias Analysis Relational Analysis Assertions Second Project Static Analysis

More information

CSC443: Web Programming 2

CSC443: Web Programming 2 CSC443: Web Programming Lecture 20: Web Sockets Haidar M. Harmanani HTML5 WebSocket Standardized by IETF in 2011. Supported by most major browsers including Google Chrome, Internet Explorer, Firefox, Safari

More information

HTML5 Tracking Techniques in Practice

HTML5 Tracking Techniques in Practice Bachelor thesis Computer Science Radboud University HTML5 Tracking Techniques in Practice Author: Ivar Derksen 4375408 First supervisor/assessor: Dr. Ir. Erik Poll e.poll@cs.ru.nl Second assessor: Fabian

More information

NoScript, CSP and ABE: When The Browser Is Not Your Enemy

NoScript, CSP and ABE: When The Browser Is Not Your Enemy NoScript, CSP and ABE: When The Browser Is Not Your Enemy Giorgio Maone CTO, NoScript lead developer InformAction OWASP-Italy Day IV Milan 6th, November 2009 Copyright 2008 - The OWASP Foundation Permission

More information

Lecture 17 Browser Security. Stephen Checkoway University of Illinois at Chicago CS 487 Fall 2017 Some slides from Bailey's ECE 422

Lecture 17 Browser Security. Stephen Checkoway University of Illinois at Chicago CS 487 Fall 2017 Some slides from Bailey's ECE 422 Lecture 17 Browser Security Stephen Checkoway University of Illinois at Chicago CS 487 Fall 2017 Some slides from Bailey's ECE 422 Documents Browser's fundamental role is to display documents comprised

More information

Firefox for Android. Reviewer s Guide. Contact us:

Firefox for Android. Reviewer s Guide. Contact us: Reviewer s Guide Contact us: press@mozilla.com Table of Contents About Mozilla 1 Move at the Speed of the Web 2 Get Started 3 Mobile Browsing Upgrade 4 Get Up and Go 6 Customize On the Go 7 Privacy and

More information

Google Analytics Basics. John Sammon CEO, Sixth City Marketing

Google Analytics Basics. John Sammon CEO, Sixth City Marketing Google Analytics Basics John Sammon CEO, Sixth City Marketing john@sixthcitymarketing.com About Sixth City Marketing Advertising agency specializing in internet marketing Mission is to help client s achieve

More information

Development of Web Applications

Development of Web Applications Development of Web Applications Principles and Practice Vincent Simonet, 2013-2014 Université Pierre et Marie Curie, Master Informatique, Spécialité STL 6 Practical Aspects Vincent Simonet, 2013-2014 Université

More information

Machine Learning: A Promising Direction for Web Tracking Countermeasures

Machine Learning: A Promising Direction for Web Tracking Countermeasures , Jonathan Mayer, Hristo Paskov and John C. Mitchell Stanford University Stanford Computer Security Lab Machine Learning: A Promising Direction for Web Tracking Countermeasures Motivation Consumers want

More information

CIS 5373 Systems Security

CIS 5373 Systems Security CIS 5373 Systems Security Topic 5.1: Web Security Basics Endadul Hoque Slide Acknowledgment Contents are based on slides from Cristina Nita-Rotaru (Northeastern) Wil Robertson (Northeastern) John Mitchell

More information

The Future of the Web: HTML 5, WebSockets, Comet and Server Sent Events

The Future of the Web: HTML 5, WebSockets, Comet and Server Sent Events The Future of the Web: HTML 5, WebSockets, Comet and Server Sent Events Sidda Eraiah Director of Management Services Kaazing Corporation Agenda Web Applications, where are they going? Real time data for

More information

Content Security Policy

Content Security Policy About Tim Content Security Policy New Tools for Fighting XSS Pentester > 10 years Web Applications Network Security Products Exploit Research Founded Blindspot Security in 2014 Pentesting Developer Training

More information

Website Report for test.com

Website Report for test.com NeatWidget contact@neatwidget.com.au neatwidget.com.au Website Report for test.com This report grades your website on the strength of a range of important factors such as on-page optimization, off-page

More information

86% of websites has at least 1 vulnerability and an average of 56 per website WhiteHat Security Statistics Report 2013

86% of websites has at least 1 vulnerability and an average of 56 per website WhiteHat Security Statistics Report 2013 Vulnerabilities help make Web application attacks amongst the leading causes of data breaches +7 Million Exploitable Vulnerabilities challenge organizations today 86% of websites has at least 1 vulnerability

More information

PHP. MIT 6.470, IAP 2010 Yafim Landa

PHP. MIT 6.470, IAP 2010 Yafim Landa PHP MIT 6.470, IAP 2010 Yafim Landa (landa@mit.edu) LAMP We ll use Linux, Apache, MySQL, and PHP for this course There are alternatives Windows with IIS and ASP Java with Tomcat Other database systems

More information

DIGITAL MARKETING Your revolution starts here

DIGITAL MARKETING Your revolution starts here DIGITAL MARKETING Your revolution starts here Course Highlights Online Marketing Introduction to Online Search. Understanding How Search Engines Work. Understanding Google Page Rank. Introduction to Search

More information

Module 6 Node.js and Socket.IO

Module 6 Node.js and Socket.IO Module 6 Node.js and Socket.IO Module 6 Contains 2 components Individual Assignment and Group Assignment Both are due on Wednesday November 15 th Read the WIKI before starting Portions of today s slides

More information

Checklist for Testing of Web Application

Checklist for Testing of Web Application Checklist for Testing of Web Application Web Testing in simple terms is checking your web application for potential bugs before its made live or before code is moved into the production environment. During

More information

AT&T Smart Cities With M2X & Flow Designer

AT&T Smart Cities With M2X & Flow Designer AT&T Smart Cities With M2X & Flow Designer Introduction... 2 FASTEST Way to Get Started... 5 Getting Started use Socket.io... 6 Getting Started Get Data / Polling... 9 Add a New M2X Device and Create your

More information

Kaazing. Connect. Everything. WebSocket The Web Communication Revolution

Kaazing. Connect. Everything. WebSocket The Web Communication Revolution Kaazing. Connect. Everything. WebSocket The Web Communication Revolution 1 Copyright 2011 Kaazing Corporation Speaker Bio John Fallows Co-Founder: Kaazing, At the Heart of the Living Web Co-Author: Pro

More information

Crossing the Chasm. Pitching Security Research to Mainstream Browser Vendors. Collin Jackson Carnegie Mellon University

Crossing the Chasm. Pitching Security Research to Mainstream Browser Vendors. Collin Jackson Carnegie Mellon University Crossing the Chasm Pitching Security Research to Mainstream Browser Vendors Collin Jackson Carnegie Mellon University Why a security feature is like a startup 1 billion users

More information

Part of this connection identifies how the response can / should be provided to the client code via the use of a callback routine.

Part of this connection identifies how the response can / should be provided to the client code via the use of a callback routine. What is AJAX? In one sense, AJAX is simply an acronym for Asynchronous JavaScript And XML In another, it is a protocol for sending requests from a client (web page) to a server, and how the information

More information

So Many Ways to Slap a YoHo: Hacking Facebook & YoVille

So Many Ways to Slap a YoHo: Hacking Facebook & YoVille Tom Stracener Strace, Contract Engineer MITRE EvilAdamSmith, Sr. Security Consultant Sean Barnum, Cybersecurity Principal MITRE So Many Ways to Slap a YoHo: Hacking Facebook & YoVille Misclaneous Disclaimers

More information

Web Security. Course: EPL 682 Name: Savvas Savva

Web Security. Course: EPL 682 Name: Savvas Savva Web Security Course: EPL 682 Name: Savvas Savva [1] A. Barth and C. Jackson and J. Mitchell, Robust Defenses for Cross-Site Request Forgery, pub. in 15th ACM Conference, 2008. [2] L. Huang and A. Moshchuk

More information

Web Security. Aggelos Kiayias Justin Neumann

Web Security. Aggelos Kiayias Justin Neumann Web Security Aggelos Kiayias Justin Neumann Dynamic HTML Umbrella term : HTML Javascript Cascading Style Sheets (CSS) Document Object Model (DOM) : a hierarchical structure API for accessing / manipulating

More information

W3Conf, November 15 & 16, Brad Scott

W3Conf, November 15 & 16, Brad Scott The Future of Web Application Security W3Conf, November 15 & 16, 2011 Brad Hill @hillbrad bhill@paypal-inc.com Scott Stender @scottstender scott@isecpartners.com The History of Web App Security Attacker

More information

We will show you how we bypassed every XSS mitigation we tested. Mitigation bypass-ability via script gadget chains in 16 popular libraries

We will show you how we bypassed every XSS mitigation we tested. Mitigation bypass-ability via script gadget chains in 16 popular libraries We will show you how we bypassed every XSS mitigation we tested. Mitigation bypass-ability via script gadget chains in 16 popular libraries PoCs included Content Security Policy WAFs whitelists nonces

More information

HTTP, WebSocket, SPDY, HTTP/2.0

HTTP, WebSocket, SPDY, HTTP/2.0 HTTP, WebSocket, SPDY, HTTP/2.0 Evolution of Web Protocols Thomas Becker tbecker@intalio.com 1 Intalio Intalio Jetty Services, Training and Support for Jetty and CometD Intalio BPMS Business Process Management

More information

INTERNET ENGINEERING. HTTP Protocol. Sadegh Aliakbary

INTERNET ENGINEERING. HTTP Protocol. Sadegh Aliakbary INTERNET ENGINEERING HTTP Protocol Sadegh Aliakbary Agenda HTTP Protocol HTTP Methods HTTP Request and Response State in HTTP Internet Engineering 2 HTTP HTTP Hyper-Text Transfer Protocol (HTTP) The fundamental

More information

XHOUND: Quantifying the Fingerprintability of Browser Extensions

XHOUND: Quantifying the Fingerprintability of Browser Extensions 2017 IEEE Symposium on Security and Privacy XHOUND: Quantifying the Fingerprintability of Browser Extensions Oleksii Starov Stony Brook University ostarov@cs.stonybrook.edu Nick Nikiforakis Stony Brook

More information

HTML5 Unbound: A Security & Privacy Drama. Mike Shema Qualys

HTML5 Unbound: A Security & Privacy Drama. Mike Shema Qualys HTML5 Unbound: A Security & Privacy Drama Mike Shema Qualys A Drama in Four Parts The Meaning & Mythology of HTML5 Security From Design Security (and Privacy) From HTML5 Design, Doom & Destiny This specification

More information

ShowNTell - An easy-to-use tool for answering students questions with voiceover

ShowNTell - An easy-to-use tool for answering students questions with voiceover + ShowNTell - An easy-to-use tool for answering students questions with voiceover recording Dr BHOJAN ANAND LIFT & TEG Grant: Start date: June 2014 End date: Dec 2015 + ShowNTell Problem Statement & Motivation

More information

Web Security. advanced topics on SOP. Yan Huang. Credits: slides adapted from Stanford and Cornell Tech

Web Security. advanced topics on SOP. Yan Huang. Credits: slides adapted from Stanford and Cornell Tech Web Security advanced topics on SOP Yan Huang Credits: slides adapted from Stanford and Cornell Tech Same Origin Policy protocol://domain:port/path?params Same Origin Policy (SOP) for DOM: Origin A can

More information

Postman User Guide. Document Reference: July Version: 2

Postman User Guide. Document Reference: July Version: 2 Postman User Guide Document Reference: 8314 July 2017 Version: 2 Version Number Date Author Changes 1 Sep 2015 Sam Smith 2 Jul 2017 Sam Smith Branding updated Page 1 Contents 1 Introduction... 3 2 Downloading...

More information

Palo Alto Networks PAN-OS

Palo Alto Networks PAN-OS RSA Security Analytics Ready Implementation Guide Partner Information Last Modified: November 24 th, 2014 Product Information Partner Name Palo Alto Networks Web Site www.paloaltonetworks.com Product Name

More information

HTML5 - INTERVIEW QUESTIONS

HTML5 - INTERVIEW QUESTIONS HTML5 - INTERVIEW QUESTIONS http://www.tutorialspoint.com/html5/html5_interview_questions.htm Copyright tutorialspoint.com Dear readers, these HTML5 Interview Questions have been designed specially to

More information

Browser Guide for PeopleSoft

Browser Guide for PeopleSoft Browser Guide for PeopleSoft Business Process Guide For Academic Support Specialists (Advisors) TABLE OF CONTENTS PURPOSE...2 INTERNET EXPLORER 7...3 GENERAL TAB...4 SECURITY TAB...6 PRIVACY TAB...10 CONTENT

More information

DOMINICK DESIGNS ERADICATE TECH PHOBIA WEBSITES & TECH TRAINING SEMINARS. (843)

DOMINICK DESIGNS ERADICATE TECH PHOBIA WEBSITES & TECH TRAINING SEMINARS.   (843) DOMINICK DESIGNS ERADICATE TECH PHOBIA WEBSITES & TECH TRAINING SEMINARS 1 Objectives of this seminar/course: 1. ability to identify safe/secure site on browsers 2. clear understanding of the difference

More information

Match the attack to its description:

Match the attack to its description: Match the attack to its description: 8 7 5 6 4 2 3 1 Attacks: Using Components with Known Vulnerabilities Missing Function Level Access Control Sensitive Data Exposure Security Misconfiguration Insecure

More information

AJAX Programming Overview. Introduction. Overview

AJAX Programming Overview. Introduction. Overview AJAX Programming Overview Introduction Overview In the world of Web programming, AJAX stands for Asynchronous JavaScript and XML, which is a technique for developing more efficient interactive Web applications.

More information

Adobe Experience Cloud Launch

Adobe Experience Cloud Launch Adobe Experience Cloud Launch Contents Launch Documentation...4 Adobe Launch Release Notes...6 Getting Started with Launch...14 Videos...17 Managing Resources...19 Extensions...19 Data Elements...19 Rules...20

More information

CSP ODDITIES. Michele Spagnuolo Lukas Weichselbaum

CSP ODDITIES. Michele Spagnuolo Lukas Weichselbaum ODDITIES Michele Spagnuolo Lukas Weichselbaum ABOUT US Michele Spagnuolo Lukas Weichselbaum Information Security Engineer Information Security Engineer We work in a special focus area of the Google security

More information

PROCE55 Mobile: Web API App. Web API. https://www.rijksmuseum.nl/api/...

PROCE55 Mobile: Web API App. Web API. https://www.rijksmuseum.nl/api/... PROCE55 Mobile: Web API App PROCE55 Mobile with Test Web API App Web API App Example This example shows how to access a typical Web API using your mobile phone via Internet. The returned data is in JSON

More information

Application security : going quicker

Application security : going quicker Application security : going quicker The web application firewall example Agenda Agenda o Intro o Application security o The dev team approach o The infra team approach o Impact of the agility o The WAF

More information

Cookies and Other Client-Side Storage Techniques. Bok, Jong Soon

Cookies and Other Client-Side Storage Techniques. Bok, Jong Soon Cookies and Other Client-Side Storage Techniques Bok, Jong Soon javaexpert@nate.com www.javaexpert.co.kr HTML5 Feature Areas Offline and Storage Offline and Storage (Cont.) Source : Google,Introduction

More information

Qlik Web Connectors 2.0 Release notes

Qlik Web Connectors 2.0 Release notes Qlik Web Connectors 2.0 Release notes What s new in Qlik Web Connectors 2.0? Qlik Web Connectors 2.0 is the first Qlik release of Industrial CodeBox s QVSource, which was acquired in April 2016 by Qlik.

More information

IERG 4080 Building Scalable Internet-based Services

IERG 4080 Building Scalable Internet-based Services Department of Information Engineering, CUHK MScIE 2 nd Semester, 2015/16 IERG 4080 Building Scalable Internet-based Services Lecture 9 Web Sockets for Real-time Communications Lecturer: Albert C. M. Au

More information

Networking & The Web. HCID 520 User Interface Software & Technology

Networking & The Web. HCID 520 User Interface Software & Technology Networking & The Web HCID 520 User Interface Software & Technology Uniform Resource Locator (URL) http://info.cern.ch:80/ 1991 HTTP v0.9 Uniform Resource Locator (URL) http://info.cern.ch:80/ Scheme/Protocol

More information

Author: Tonny Rabjerg Version: Company Presentation WSF 4.0 WSF 4.0

Author: Tonny Rabjerg Version: Company Presentation WSF 4.0 WSF 4.0 Author: Tonny Rabjerg Version: 20150730 Company Presentation WSF 4.0 WSF 4.0 Cybercrime is a growth industry. The returns are great, and the risks are low. We estimate that the likely annual cost to the

More information

Website Report for colourways.com.au

Website Report for colourways.com.au Website Report for colourways.com.au This report grades your website based on the strength of various factors such as On Page Optimization, Off Page Links, and more. The overall Grade is on a A+ to F-

More information

Advanced CSRF and Stateless at OWASP AppSec Research 2012

Advanced CSRF and Stateless at OWASP AppSec Research 2012 Advanced CSRF and Stateless Anti-CSRF @johnwilander at OWASP AppSec Research 2012 Frontend developer at Svenska Handelsbanken Researcher in application security Co-leader OWASP Sweden @johnwilander johnwilander.com

More information

Real Time Apps Using SignalR

Real Time Apps Using SignalR Real Time Apps Using SignalR Anurag Choudhry Solution Architect,Banking Technology Group,Tata Consultancy Services,New Delhi, India Anshu Premchand Lead, Presales & Solutions,Banking Technology Group,Tata

More information

Xignite CloudStreaming overview

Xignite CloudStreaming overview Xignite CloudStreaming overview Objectives Terminology Zero footprint Easy to implement Open standards Sample code Simple javascript implementation Handling patch messages Including error handling Using

More information

Introduction of Golang, WebSocket and Angular 2

Introduction of Golang, WebSocket and Angular 2 As we know Golang is a powerful programming language introduced by Google and we can use this to implement the real-time applications. So, here we are going to use this to implement a Real-Time Chat Application,

More information

Security. CSC309 TA: Sukwon Oh

Security. CSC309 TA: Sukwon Oh Security CSC309 TA: Sukwon Oh Outline SQL Injection NoSQL Injection (MongoDB) Same Origin Policy XSSI XSS CSRF (XSRF) SQL Injection What is SQLI? Malicious user input is injected into SQL statements and

More information

last time: command injection

last time: command injection Web Security 1 last time: command injection 2 placing user input in more complicated language SQL shell commands input accidentally treated as commands in language instead of single value (e.g. argument/string

More information

Live Guide Co-browsing

Live Guide Co-browsing TECHNICAL PAPER Live Guide Co-browsing Netop develops and sells software solutions that enable swift, secure and seamless transfer of video, screens, sounds and data between two or more computers over

More information

OWASP AppSec Research The OWASP Foundation New Insights into Clickjacking

OWASP AppSec Research The OWASP Foundation  New Insights into Clickjacking New Insights into Clickjacking Marco `embyte` Balduzzi iseclab @ EURECOM embyte@iseclab.org AppSec Research 2010 Joint work with Egele, Kirda, Balzarotti and Kruegel Copyright The Foundation Permission

More information

WEB SECURITY WORKSHOP TEXSAW Presented by Solomon Boyd and Jiayang Wang

WEB SECURITY WORKSHOP TEXSAW Presented by Solomon Boyd and Jiayang Wang WEB SECURITY WORKSHOP TEXSAW 2014 Presented by Solomon Boyd and Jiayang Wang Introduction and Background Targets Web Applications Web Pages Databases Goals Steal data Gain access to system Bypass authentication

More information

Socket To Me. Instead of the usual request/ response. Features Perl: WebSockets

Socket To Me. Instead of the usual request/ response. Features Perl: WebSockets Web server sockets Socket To Me HTML5 adds WebSockets, allowing web clients to establish permanent connections to web servers. A sample Perl web application reveals in a browser in real time which pages

More information

Graphiq Reality. Product Requirement Document. By Team Graphiq Content. Vincent Duong Kevin Mai Navdeep Sandhu Vincent Tan Xinglun Xu Jiapei Yao

Graphiq Reality. Product Requirement Document. By Team Graphiq Content. Vincent Duong Kevin Mai Navdeep Sandhu Vincent Tan Xinglun Xu Jiapei Yao Graphiq Reality Product Requirement Document By Team Graphiq Content Vincent Duong Kevin Mai Navdeep Sandhu Vincent Tan Xinglun Xu Jiapei Yao Revision History 10/9/2015 Created PRD document and basic information.

More information

CS193X: Web Programming Fundamentals

CS193X: Web Programming Fundamentals CS193X: Web Programming Fundamentals Spring 2017 Victoria Kirst (vrk@stanford.edu) Schedule Today: - Fetch - JSON - Fetch in an class - Querying REST APIs - Form submission - HW4 out! GitHub repo for today's

More information

Lecture 4: Data Collection and Munging

Lecture 4: Data Collection and Munging Lecture 4: Data Collection and Munging Instructor: Outline 1 Data Collection and Scraping 2 Web Scraping basics In-Class Quizzes URL: http://m.socrative.com/ Room Name: 4f2bb99e Data Collection What you

More information

Web 2.0 and AJAX Security. OWASP Montgomery. August 21 st, 2007

Web 2.0 and AJAX Security. OWASP Montgomery. August 21 st, 2007 Web 2.0 and AJAX Security OWASP Montgomery August 21 st, 2007 Overview Introduction Definition of Web 2.0 Basics of AJAX Attack Vectors for AJAX Applications AJAX and Application Security Conclusions 1

More information

Web Security: 1) UI-based attacks 2) Tracking on the web

Web Security: 1) UI-based attacks 2) Tracking on the web Web Security: 1) UI-based attacks 2) Tracking on the web CS 161: Computer Security Prof. Raluca Ada Popa November 15, 2016 Contains new slides, slides from past CS 161 offerings and slides from Dan Boneh

More information