How to Detect a Client’s Browser Senior Seminar CS498.

Slides:



Advertisements
Similar presentations
SOCIAL WEB MEDIA privacy and data mining part 2 4/12/2010.
Advertisements

Presented By: Brent Strange Browser Compatibility Testing Risk Analysis Learn the art of trimming browsers from a browser compatibility test list by knowing.
Android architecture overview 1 CS 150. Android  A software stack for mobile devices developed and managed by Open Handset Alliance  Free software under.
What’s new in this release? September 6, Milestone Systems Confidential Milestone’s September release 2012 XProtect ® Web Client 1 Connect instantly.
Copyright © 2012 Certification Partners, LLC -- All Rights Reserved Lesson 4: Web Browsing.
State of Connecticut Department of Information Technology Single Sign On and The Identity Vault Presented by Edward Wilson.
Cross Site Request Forgery CSE 591 – Security and Vulnerability Analysis Spring 2015 Adam Doupé Arizona State University
Lesson 4: Web Browsing.
Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike.
Web Platform Trident Browser Internet Explorer.
1 HTTP and some other odds and ends Nelson Padua-Perez Bill Pugh Department of Computer Science University of Maryland, College Park.
MWD3002 Multiplatform Applications Week 5 – Designing for Mobile.
CS320 Web and Internet Programming Handling HTTP Requests Chengyu Sun California State University, Los Angeles.
MWD1001 – Website Production Web Browsers Week 11.
Chapter 15 The Mobile Web. Objectives Describe the important characteristics of mobile web browsing platforms Explain three strategies for effectively.
Web Platform Trident Navigateur Internet Explorer.
Lecture 4: stateful inspection, advanced protocols Roei Ben-Harush 2015.
Responsive Web Design Design websites so that they can adapt to different devices seamlessly. Image by Muhammed RafizeldiMuhammed Rafizeldi.
CSCI 323 – Web Development Chapter 1 - Setting the Scene We’re going to move through the first few chapters pretty quick since they are a review for most.
ECE Prof. John A. Copeland Office: Klaus or call.
Identification of Mobile Devices from Network Traffic Measurements - a HTTP User Agent Method Master’s Thesis August 2 8, 2012 Supervisor – Prof. Heikki.
Web technologies and programming cse hypermedia and multimedia technology Fanis Tsandilas April 3, 2007.
CNIT 132 Intermediate HTML and CSS Course Overview.
SUNY Polytechnic Institute CS 490 – Web Design, AJAX, jQuery Web Services A web service is a software system that supports interaction (requesting data,
Mobile Browsers – Built-ins and Add-ons TODCon 2008 ~ Orlando Fred Ryals, Senior Web Developer Leading Edge Design & Systems.
Taking Your Website On The Road Technology No Where to Go.
© 2006 KDnuggets [16/Nov/2005:16:32: ] "GET /jobs/ HTTP/1.1" "
Chapter 5 HTTP Request Headers. Content 1.Request headers 2.Reading Request Headers 3.Making a Table of All Request Headers 4.Sending Compressed Web Pages.
PACS - 09/19/15 1 favicon A ‘Favorite icon’ is a file containing one or more small icons associated with a particular website or web page. Web browsers.
Digital Multimedia, 2nd edition Nigel Chapman & Jenny Chapman Chapter 17 This presentation © 2004, MacAvon Media Productions Multimedia and Networks.
CS320 Web and Internet Programming Handling HTTP Requests Chengyu Sun California State University, Los Angeles.
Hakuna Suricata (it means no worries, except for APT)
Local Network for 3GPP Meeting 1. Directory Configuration for 3GPP Meeting 2. How to connect your PC to Local Network 3. Set Up for Microsoft NetMeeting.
HTTP1 Hypertext Transfer Protocol (HTTP) After this lecture, you should be able to:  Know how Web Browsers and Web Servers communicate via HTTP Protocol.
Tonido Cloud Private, Highly Scalable, Self-Hosted Cloud Storage/Sync Solution.
Factors influencing Web browsing Key points –Web browsing - model –Web session - anatomy –Client side –Network –Server side.
HTTP/2 and ATS ATS Fall Summit 2015 Bryan Call. Why HTTP/2? Reduce latency and TCP connection overhead Easier to write well-performing sites (no domain.
Video Chat – getting ready Need a broadband connection. Need speakers & web cam or headset and webcam. Download software or browser plug-in. Sign up for.
Digital Multimedia, 2nd edition Nigel Chapman & Jenny Chapman Chapter 17 This presentation © 2004, MacAvon Media Productions Multimedia and Networks.
Skill Area 214 Introduce World wide web(www)
Overview of Servlets and JSP
JavaScript and Ajax (Internet Background) Week 1 Web site:
LURP Details. LURP Lab Details  1.Given a GET … call a proxy CGI script in the same way you would for a normal CGI request  2.This UDP perl.
Web Caching. Why Caching? Faster browsing experience for users Cache hit rate Traffic Prioritization Reduce network bandwidth requirements significantly.
Mobile Finder By Monica Yarbrough. Google’s Suggestions for SEO Vary HTTP Header Annotations within the HTML: On desktop page: On mobile page: Media queries.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco Confidential 1 WebEx Flash Client.
Loke Uei MOB301.
DEV336. demo HTTP Packet Trace GET / HTTP/1.1 Accept: text/html, application/xhtml+xml, */* Accept-Language: en-US User-Agent: Mozilla/5.0 (compatible;
Fiddler and Your Website Robert Boedigheimer. About Me Web developer since 1995 Columnist for aspalliance.com Pluralsight Author 3 rd Degree Black Belt,
Lecture 4: Stateful Inspection, Advanced Protocols.
1 Jeff McWherter Director of Development Do I Really Need a Mobile App, Or Is a Mobile-Friendly Website Enough? Do I Really Need a Mobile App, Or Is a.
CS320 Web and Internet Programming Handling HTTP Requests Chengyu Sun California State University, Los Angeles.
6.033 Lecture 24 Protocols and Authorization Nickolai Zeldovich Spring 2009.
How to fix Netflix Signing In Issues? For More Details Visit Our Website
HOW TO FIX NETFLIX ERROR CODE: N ? For more details visit our website
Facebook privacy policy
App Inventor إعدادأشرف رفاعي أحمد
Who and What Links to the Internet Archive
Lesson 4: Web Browsing.
Web Technologies Basics
Introduction Web Environments
Python, PhantomJS, & Selenium
Microsoft Edge for Developers
Widgets – Usage statistics collection Task force for the strategic project on the development and use of common ESS tools and services for dissemination.
Multimedia and Networks
Friendly Fraud.
Lesson 4: Web Browsing.
E-Procurement Project
Will Code For Food The website will begin as a site where I can advertise my skills as a programmer and offer services for free, for food, or for money.
Presentation transcript:

How to Detect a Client’s Browser Senior Seminar CS498

Conrad Kennington

Kount

Stops e-commerce fraud Passively identifies devices

Your device automatically sends information about itself

Why?

= mobile site

= desktop site

= mobile site = desktop site en-US

= mobile site = desktop site en-US = English site

= mobile site = desktop site en-US = English site ja-JA

= mobile site = desktop site en-US = English site ja-JA = Japanese site

=

What information?

What they know Device location (~30 miles) Business type If you’re a return visitor When you last visited If they care: Browser version Browser plugins installed Plugins can gather additional system information Operating system version Local timezone Language settings Limited device specs Resolution Screen size Color depth

What they don’t know Name Age Gender Weight Address Profession Phone Credit card number Major Salary Social Security Number Medical history Facebook relationship status Mother’s maiden name Licensed watercraft Outstanding parking tickets Favorite ice-cream Overdue library books Credit score

Grades Favorite bands High school sweethearts Eye color Nicknames Netflix recently watched addresses Tax returns Candy Crush score Batting average Attendance records Instant messages Pirated music/movies Magazine subscriptions Purchase history World of Warcraft achievements Books read Adderall dosage MySpace Top 10 Travel schedule Birthday Voting records Smart phone contact list Student loan balance

Tattoos Fingerprints Drivers license number License plate Dental records Guns owned Magic the Gathering decks Costco membership status Unredeemed rewards points Average commute time Hobbies Mile run Favorite restaurants Merit badges Religion Pets Mood Amazon wish list Marital status 401k balance Therapist Phone logs YouTube comments Number of children

Pretty much nothing about your person

Location

71.33.*.*

This means Boise, Idaho

71.33.*.* This means Boise, Idaho For now.

This means Qatar

This means Qatar The whole country.

Mask my IP, mask my location?

Not exactly.

Mask my IP, mask my location? Not exactly. Timezone, language, etc

Browser

HTTP Request Headers Request methodGET Request URI / Request protocolHTTP/1.1 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Accept charset Accept encodinggzip,deflate,sdch Accept languageen-US,en;q=0.8 Connection keep-alive Host myhttp.info Referer User agent Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/ (KHTML, like Gecko) Chrome/ Safari/537.36

Parsing a user agent string sucks

Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/ (KHTML, like Gecko) Chrome/ Safari/ Mozilla/5.0 (Windows NT 6.1; rv:6.0) Gecko/ Firefox/19.0 Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:15.0) Gecko/ Firefox/ Googlebot/2.1 (+ Mozilla/5.0 (compatible; Googlebot/2.1; + Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0;.NET CLR ; Media Center PC 6.0) Mozilla/4.0 (compatible; MSIE 6.1; Windows XP) None of your business. Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 5.2) Opera/9.80 (Windows NT 6.0) Presto/ Version/12.14 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/ (KHTML, like Gecko) Version/5.1.3 Safari/ Opera/9.80 (Android; Opera Mini/ / ; U; en) Presto/ Version/11.10 ‘; DELETE FROM user_agents; Mozilla/5.0 (PLAYSTATION 3; 2.00) Mozilla/5.0 (BlackBerry; U; BlackBerry 9900; en) AppleWebKit/ (KHTML, like Gecko) Version/ Mobile Safari/ Mozilla/5.0 (Linux armv6l; Maemo; Opera Mobi/8; U; en-GB; rv: ) Gecko/ Firefox/3.5.6 Opera Mozilla/5.0 (X11; U; Linux i686; ru; rv: ) Gecko/ SeaMonkey/8.2.8 Mozilla/5.0 (X11; U; OpenBSD arm; en-us) AppleWebKit/ (KHTML, like Gecko) Safari/ Epiphany/ Mozilla/5.0 (compatible; Konqueror/4.3; Linux) KHTML/4.3.1 (like Gecko) Fedora/ fc11 Mozilla/5.0 (Windows; U; MSIE 9.0; WIndows NT 9.0; en-US)) Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US) Mozilla/5.0 ( ; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0) Mozilla/5.0 (Windows; U; Windows NT 6.1) AppleWebKit/526.3 (KHTML, like Gecko) Chrome/ Safari/526.3

HTTP Header Order Chrome 34 on a Macbook Host: pgl.yoyo.org Connection: keep-alive Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/ (KHTML, like Gecko) Chrome/ Safari/ Referer: Accept-Encoding: gzip,deflate,sdch Accept-Language: en-US,en;q=0.8 Firefox 5 on a Macbook Host: pgl.yoyo.org User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:19.0) Gecko/ Firefox/19.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Connection: keep-alive Safari 7 on a Macbook Host: pgl.yoyo.org Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-us Connection: keep-alive Accept-Encoding: gzip, deflate User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/ (KHTML, like Gecko) Version/7.0.1 Safari/

JavaScript

Good at detecting browser features and capabilities.

Support multiple backgrounds?

Good at detecting browser features and capabilities. Support multiple backgrounds? HTML5 canvas?

Good at detecting browser features and capabilities. Support multiple backgrounds? HTML5 canvas? Border radius?

Good at detecting browser features and capabilities. Support multiple backgrounds? HTML5 canvas? Border radius? Box shadow?

Good at detecting browser features and capabilities. Support multiple backgrounds? HTML5 canvas? Border radius? Box shadow? Available events?

Good at detecting browser features and capabilities. Support multiple backgrounds? HTML5 canvas? Border radius? Box shadow? Available events? CSS properties recognized?

Good at detecting browser features and capabilities. Support multiple backgrounds? HTML5 canvas? Border radius? Box shadow? Available events? CSS properties recognized? CSS animations?

Good at detecting browser features and capabilities. Support multiple backgrounds? HTML5 canvas? Border radius? Box shadow? Available events? CSS properties recognized? CSS animations? DOM prefixes available?

SSL Ciphers

Client Handshake Packet

Chrome 34 on a Macbook ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 DHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-SHA ECDHE-RSA-AES128-SHA ECDHE-RSA-AES256-SHA ECDHE-ECDSA-RC4128-SHA ECDHE-RSA-RC4128-SHA DHE-RSA-AES128-SHA DHE-DSS-AES128-SHA DHE-RSA-AES256-SHA RSA-AES128-GCM-SHA256 RSA-AES128-SHA RSA-AES256-SHA RSA-3DES-EDE-SHA RSA-RC4128-SHA RSA-RC4128-MD5 Firefox 5 on a Macbook ECDHE-ECDSA-AES256-SHA ECDHE-RSA-AES256-SHA DHE-RSA-CAMELLIA256-SHA DHE-DSS-CAMELLIA256-SHA DHE-RSA-AES256-SHA DHE-DSS-AES256-SHA ECDH-RSA-AES256-SHA ECDH-ECDSA-AES256-SHA RSA-CAMELLIA256-SHA RSA-AES256-SHA ECDHE-ECDSA-RC4128-SHA ECDHE-ECDSA-AES128-SHA ECDHE-RSA-RC4128-SHA ECDHE-RSA-AES128-SHA DHE-RSA-CAMELLIA128-SHA DHE-DSS-CAMELLIA128-SHA DHE-RSA-AES128-SHA DHE-DSS-AES128-SHA ECDH-RSA-RC4128-SHA ECDH-RSA-AES128-SHA ECDH-ECDSA-RC4128-SHA ECDH-ECDSA-AES128-SHA RSA-SEED-SHA RSA-CAMELLIA128-SHA RSA-RC4128-SHA RSA-RC4128-MD5 RSA-AES128-SHA ECDHE-ECDSA-3DES-EDE-SHA ECDHE-RSA-3DES-EDE-SHA DHE-RSA-3DES-EDE-SHA DHE-DSS-3DES-EDE-SHA ECDH-RSA-3DES-EDE-SHA ECDH-ECDSA-3DES-EDE-SHA RSA-FIPS-3DES-EDE-SHA RSA-3DES-EDE-SHA curl 7.30 on a Macbook ECDHE-ECDSA-AES256-SHA384 ECDHE-ECDSA-AES128-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES128-SHA ECDHE-ECDSA-RC4128-SHA ECDHE-ECDSA-3DES-EDE-SHA ECDHE-RSA-AES256-SHA384 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES128-SHA ECDHE-RSA-RC4128-SHA ECDHE-RSA-3DES-EDE-SHA ECDH-ECDSA-AES256-SHA384 ECDH-ECDSA-AES128-SHA256 ECDH-RSA-AES256-SHA384 ECDH-RSA-AES128-SHA256 ECDH-ECDSA-AES256-SHA ECDH-ECDSA-AES128-SHA ECDH-ECDSA-RC4128-SHA ECDH-ECDSA-3DES-EDE-SHA ECDH-RSA-AES256-SHA ECDH-RSA-AES128-SHA ECDH-RSA-RC4128-SHA ECDH-RSA-3DES-EDE-SHA DH-RSA-MISTY1-SHA DH-DSS-MISTY1-SHA RSA-AES128-SHA RSA-RC4128-SHA RSA-RC4128-MD5 RSA-AES256-SHA RSA-3DES-EDE-SHA DHE-RSA-AES128-SHA256 DHE-RSA-AES256-SHA256 DHE-RSA-AES128-SHA DHE-RSA-AES256-SHA DHE-RSA-3DES-EDE-SHA PSK-AES256-SHA PSK-AES128-SHA PSK-RC4128-SHA

So…

What they know Device location If you’re a return visitor When you last visited Browser version Browser plugins installed Plugins can gather additional system information Operating system version Local timezone Language settings Limited device specs Resolution Screen size Color depth How they know it IP address, HTTP headers Cookie HTTP headers, ciphers, JS HTTP headers Depends on the plugin HTTP headers, ciphers JavaScript HTTP headers JavaScript Javascript

Questions