Some slides from Shuo Chen

Slides:



Advertisements
Similar presentations
Rui Wang, XiaoFeng Wang and Kehuan Zhang Shuo Chen IEEE Symposium on Security and Privacy Oakland, California May 17 th, 2010.
Advertisements

White-Box Cryptography
HTTP Cookies. CPSC Application Layer 2 User-server state: cookies Many major Web sites use cookies Four components: 1) cookie header line of HTTP.
Peeking into Your App without Actually Seeing It: UI State Inference and Novel Android Attacks Qi Alfred Chen, Zhiyun Qian†, Z. Morley Mao University of.
CMSC 414 Computer and Network Security Lecture 12 Jonathan Katz.
SIGMOD 2006University of Alberta1 Approximately Detecting Duplicates for Streaming Data using Stable Bloom Filters Presented by Fan Deng Joint work with.
Secure Shell – SSH Tam Ngo Steve Licking cs265. Overview Introduction Brief History and Background of SSH Differences between SSH-1 and SSH- 2 Brief Overview.
Toward a Framework for Preventing Side-Channel Attacks in Wireless Networks Jeff Pang.
Web Security A how to guide on Keeping your Website Safe. By: Robert Black.
Ph.D. DefenceUniversity of Alberta1 Approximation Algorithms for Frequency Related Query Processing on Streaming Data Presented by Fan Deng Supervisor:
CMSC 414 Computer and Network Security Lecture 21 Jonathan Katz.
By: Bryan Carey Randy Cook Richard Jost TOR: ANONYMOUS BROWSING.
CMSC 414 Computer and Network Security Lecture 17 Jonathan Katz.
Maintaining and Updating Windows Server 2008
File Systems (2). Readings r Silbershatz et al: 11.8.
Key-Stroke Timing and Timing Attack on SSH Yonit Shabtai and Michael Lustig supervisor: Yoram Yihyie Technion - Israel Institute of Technology Computer.
 A cookie is a piece of text that a Web server can store on a user's hard disk.  Cookie data is simply name-value pairs stored on your hard disk by.
On the Anonymity of Anonymity Systems Andrei Serjantov (anonymous)
Lucent Technologies – Proprietary Use pursuant to company instruction Learning Sequential Models for Detecting Anomalous Protocol Usage (work in progress)
Signatures As Threats to Privacy Brian Neil Levine Assistant Professor Dept. of Computer Science UMass Amherst.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Basic Security Networking for Home and Small Businesses – Chapter 8.
Invasive Browser Sniffing and Countermeasures Markus Jakobsson & Sid Stamm.
Week 10-11c Attacks and Malware III. Remote Control Facility distinguishes a bot from a worm distinguishes a bot from a worm worm propagates itself and.
STATE MANAGEMENT.  Web Applications are based on stateless HTTP protocol which does not retain any information about user requests  The concept of state.
Side-Channel Leaks in Web Applications: a Reality Today, a Challenge Tomorrow By Kalyan Manda Chang Seok Bae.
Understanding Computer Viruses: What They Can Do, Why People Write Them and How to Defend Against Them Computer Hardware and Software Maintenance.
CIS 450 – Network Security Chapter 4 - Spoofing. Definition - To fool. In networking, the term is used to describe a variety of ways in which hardware.
Exploiting Cache-Timing in AES: Attacks and Countermeasures Ivo Pooters March 17, 2008 Seminar Information Security Technology.
Chapter 12: How Private are Web Interactions?. Why we care? How much of your personal info was released to the Internet each time you view a Web page?
Information Leaks Without Memory Disclosures: Remote Side Channel Attacks on Diversified Code Jeff Seibert, Hamed Okhravi, and Eric Söderström Presented.
Presentation for CDA6938 Network Security, Spring 2006 Timing Analysis of Keystrokes and Timing Attacks on SSH Authors: Dawn Xiaodong Song, David Wagner,
PHP: Further Skills 02 By Trevor Adams. Topics covered Persistence What is it? Why do we need it? Basic Persistence Hidden form fields Query strings Cookies.
1 Anonymity. 2 Overview  What is anonymity?  Why should anyone care about anonymity?  Relationship with security and in particular identification 
111 State Management Beginning ASP.NET in C# and VB Chapter 4 Pages
6. Application Server Issues for the Project
Secure HTTP (HTTPS) Pat Morin COMP 2405.
Mapping/Topology attacks on Virtual Machines
Introduction to Information Security
Searchable Encryption in Cloud
Block 5: An application layer protocol: HTTP
World Wide Web policy.
Side-Channel Attack on Encrypted Traffic
Ways to protect yourself against hackers
Password Management Limit login attempts Encrypt your passwords
Cryptographic Hash Function
Anonymous Communication
Written by : Thomas Ristenpart, Eran Tromer, Hovav Shacham,
Web Caching? Web Caching:.
Whether you decide to use hidden frames or XMLHttp, there are several things you'll need to consider when building an Ajax application. Expanding the role.
563.10: Bloom Cookies Web Search Personalization without User Tracking
Deanonymization of Clients in Bitcoin P2P Network
Packet Sniffing.
Chapter 12: Automated data collection methods
What is Cookie? Cookie is small information stored in text file on user’s hard drive by web server. This information is later used by web browser to retrieve.
Timing Analysis of Keystrokes and Timing Attacks on SSH
0x1A Great Papers in Computer Security
Hidden Markov Models Part 2: Algorithms
Objective of This Course
Timing Analysis of Keystrokes And Timing Attacks on SSH
Anonymous Communication
HOW DO I KEEP MY COMPUTER SAFE?
Introduction to Stream Computing and Reservoir Sampling
Identifying Slow HTTP DoS/DDoS Attacks against Web Servers DEPARTMENT ANDDepartment of Computer Science & Information SPECIALIZATIONTechnology, University.
WJEC GCSE Computer Science
CSE 486/586 Distributed Systems Time and Synchronization
Modeling IDS using hybrid intelligent systems
Anonymous Communication
Week 7 - Wednesday CS363.
The Heartbleed Bug and Attack
Anonymity – Generalizing Mixes
Presentation transcript:

Some slides from Shuo Chen Side Channel Attacks Vyas Sekar Acks: Some slides from Shuo Chen

What is a side channel? Attacks based on “implementation” of a system Not brute-force or theoretical weaknesses Unintentional “features”

Types of side channels (Crypto) Timing attack - how much time computations take. Power-monitoring attack -- varying hardware power consumption. Electromagnetic attacks leaked EM radiation Acoustic cryptanalysis: sound produced during a computation (rather like power analysis). Differential fault analysis: inducing faults Data remanence: data are read after supposedly having been deleted.

Crypto extended with side channels Source: http://csrc.nist.gov/groups/STM/cmvp/documents/fips140-3/physec/papers/physecpaper19.pdf

Types of side channels (netsec) “Control” traffic – e.g., DNS Inter-arrival of packets Packet sizes Packet sequence signatures/connection patterns “Graph” of communications Counts/volume Content similarity Protocol side effects – e.g., caching, AJAX, error msges, fast-path vs slow path etc

Why are these serious “Illusion of security and privacy” Need to harden systems/implementations/protocols against side channels Hard to systematically uncover E.g., Many attacks against ToR are side channel attacks. i.e., even if you are careful, you can still be denonymized

Papers for today Timing analysis of SSH Timing attacks on web privacy Song, Wagner, Tian Timing attacks on web privacy Felten and Schneider Side-channel in interactive Web Apps Chen et al

Motivation for SSH attack SSH is widely perceived as secure alternative to telnet Crypto is “well designed” theoretically Can leak info such as passwords even with good theoretical design False sense of security

Main weaknesses exposed Packets are padded only to a eight byte boundary Can learn approximate length of data Interactive mode optimized for low latency Can learn length of passwords Keystroke timings further reveal actual characters

Traffic Signature for “su” comand

Keystroke Timing Analysis Focus on “touch typing” Most people have standard timing patterns in keystrokes, especially for passwords Distinguishable from inter-keystroke timings!

Example

Gaussian models for 142 char pairs Non trivial overlap  Inference might be hard

Quantify how much info is leaked Via Information gain analysis Related to entropy Given latency observation y0, how does entropy change? Information Gain --

Are we done? Just inferring “character pairs” isnt enough Can actually go further! Solution: Hidden Markov Model Each character pair is the hidden state Observation is the latency Given a sequence of latency observations, estimate the “most likely” char sequence

HMM Representation

Modifications to basic HMM Algo Output n-best sequences rather than just 1 Basically these are the password guesses you want to make Reduces work by 50X!

Countermeasures Return dummy packets to avoid detecting that passwords are being sent Introduce random/high delays Send chaff traffic at constant rate

Papers for today Timing analysis of SSH Timing attacks on web privacy Song, Wagner, Tian Timing attacks on web privacy Felten and Schneider Side-channel in interactive Web Apps Chen et al

Motivation Allow an arbitrary website to track users Without cookies Without explicit consent Without knowledge of the previously visited sites Difficult to fix!

Why should we care? Browsing patterns can reveal a lot Family Financial Health

How can adversary force Alice to visit? Malicious web sites Web ad agency Poison search engines Email!

Web caching attack Has Alice visited www.charlie.com? WWW.BOB.COM Has Alice visited www.charlie.com? Applet to download www.charlie.com/logo.jpg Applet reports time to download the logo.jpg file If in Alice’s cache, the content has been visited recently!

Actual measurement

Accuracy Analysis If tr < T, say “hit” else “miss” If tr = T, say “hit” with probability p H(t) is probability that hit has time <t M(t) is prob that miss has time > t m(t) is prob that miss has time= t h(t) is prob that hit has time = t

Accuracy Analysis If tr < T, say “hit” else “miss” If tr = T, say “hit” with probability p If M, H are not known? Measure two known hits and misses T = Avg( max(H1,H2) , min (M1,M2)) H(t) is probability that hit has time <t M(t) is prob that miss has time > t m(t) is prob that miss has time= t h(t) is prob that hit has time = t

Alice disables Java/Javascript WWW.BOB.COM Applet to download www.charlie.com/logo.jpg Has Alive visited www.charlie.com? Download www.bob.com/dummy1 Download www.charlie.com/logo.jpg Download www.bob.com/dummy2 Make this happen in sequence, use the server timestamp To determine time to fetch logo.jpg

Exploiting DNS caching WWW.BOB.COM $$$$ Has Alive visited www.charlie.com? What if Alice turns off web caching? Can still exploit DNS cache! Many ways to have an applet/JS do DNS lookups

DNS Measurement

Insidious: Cache cookies! Cookies to store “persistent” state across sessions Users may disable cookies Opt-out for privacy reasons Can exploit cache to emulate cookies!

Cache cookie idea Write entries into the cache and thus emulate a cookie Then use the earlier measurement technique to check cookie is present No need for client-side support Does not need user consent Can violate same-domain access policy!

Countermeasures? Disable caching? Disable DNS caches? Randomize hit/miss performance Turn of Java/JS

Papers for today Timing analysis of SSH Timing attacks on web privacy Song, Wagner, Tian Timing attacks on web privacy Felten and Schneider Side-channel in interactive Web Apps Chen et al

Context: Modern AJAX/Web 2.0 Apps Traditional PC application Web application split between client and server state transitions driven by network traffic Worry about privacy? Let’s do encryption.

Search engines over Wirelessc Scenario: search using encrypted Wi-Fi WPA/WPA2. Example: user types “list” on a WPA2 laptop. 821  910 822  931 Query suggestion 823  995 824  1007 Attacker’s effort: linear, not exponential. Consequence: Anybody on the street knows our search queries.

Online health app Illness/medication/surgery information is leaked out, as well as the type of doctor being queried. Vulnerable designs Entering health records By typing – auto suggestion By mouse selecting – a tree-structure organization of elements Finding a doctor Using a dropdown list item as the search input

Find-A-Doctor: attacker can uniquely identify the specialty. Entering health records: no matter keyboard typing or mouse selection, attacker has a 2000 ambiguity reduction power. Find-A-Doctor: attacker can uniquely identify the specialty. tabs suggestions

Online tax form Design: a wizard-style questionnaire Tailor the conversation based on user’s previous input. The forms that you work on tell a lot about your family Filing status Number of children Paid big medical bill The adjusted gross income (AGI)

child credit state machine All transitions have unique traffic patterns. Entry page of Deductions & Credits Summary of Deductions & Credits Not eligible Full credit Partial credit Consult the IRS instruction: $1000 for each child Phase-out starting from $110,000. For every $1000 income, lose $50 credit. $0 $110000 $150000 Not eligible Full credit Partial credit (two children scenario)

Student-loan-interest credit Even worse, most decision procedures for credits/deductions have asymmetric paths. Eligible – more questions Not eligible – no more question $0 $115000 $145000 Not eligible Full credit Partial credit Entry page of Deductions & Credits Summary of Deductions & Credits Not eligible Enter your paid interest Full credit Partial credit

Root causes Significant traffic distinctions Low entropy input The chance of two different user actions having the same traffic pattern is really small. Distinctions are everywhere in web app traffic. It’s the norm. Low entropy input Eavesdropper can obtain a non-negligible amount of information Stateful communication Many pieces of non-negligible information can be correlated to infer more substantial information Often, multiplicative ambiguity reduction power!

Countermeasures? Some form of padding? Can affect interactivity Rounding randomized Can affect interactivity Defense is non-trivial effective defense needs to be application specific. calls for a disciplined web programming methodology.

Takeaways Many possibilities for network side channels Fixes? Timing, Request sizes Request sequences Caching effects Stateful operations Fixes? Padding/Constant size requests Chaff Tradeoffs between usability/efficiency and leakage