Presentation on theme: "CLICKJACKING ATTACKS AND DEFENSES. BACKGROUND Clickjacking is a malicious technique of tricking a Web user into clicking on something different to what."— Presentation transcript:
COMPROMISING TARGET DISPLAY INTEGRITY 1.Hiding the target element 1.Opacity value and Z-index vale 2.Decoy un-clickable http://robertnyman.com/css3/pointer- events/pointer-events.html 2.Partial overlays 1.Cover receipt and amount 3. Cropping 1.Crop the target element to show a piece of the element Get Free IPad Like
COMPROMISING POINTER INTEGRITY 1.CursorJacking 1.Display a fake cursor 2.Hide the default cursor http://koto.github.com/blog-kotowicz-net- examples/cursorjacking/ 2.Strokejacking 1.Blinking cursor Invisible sensitive element Visible fake input field
COMPROMISING TEMPORAL INTEGRITY Manipulate UI element after the user decided to click, but before the actual click occurs.
EXISITING ANTI- CLICKJACKING DEFENSE 1.User Confirmation 1.Degrades user experience 2.UI Randomization 1.Not robust 3.Opacity Overlay Policy 1.Too strong 4.Framebusting 1.Some application need to be embedded 2.Can be evaded
EXISITING ANTI- CLICKJACKING DEFENSE 5.Visibility Detection on Click 1.Can only address to hiding element strategy 6.UI delay for cross-origin interactions 1.User experience No method to address to point integrity attacks
INCONTEXT DEFENSE Design Goals 1.Does not require user prompts 2.Provides point integrity protection 3.Supports target elements that require arbitrary third-party embedding 4.Does not break existing sites
INCONTEXT DEFENSE Ensuring Visual Integrity 1.Find the Sensitive Element 1.Application indicate which UI element is sensitive Dynamic OS-level screenshot comparison
INCONTEXT DEFENSE Ensuring visual integrity of pointer Freeze screen around target on pointer entry - Attack success (margin=20px): 4%
INCONTEXT DEFENSE Mute the speaker when a user interacts with sensitive elements - Attack success: 43% - Attack success (Mute + Freeezing): 2%
INCONTEXT DEFENSE Ensuring visual integrity of pointer Lightbox effect around target on pointer entry - Attack success: 43% - Attack success ( Lightbox + Freezing + Mute): 2%
INCONTEXT DEFENSE No programmatic cross-origin keyboard focus changes
INCONTEXT DEFENSE Ensuring Temporal Integrity 1.UI delay after pointer entry 2.Point re-entry on a newly visible sensitive element 1.When a sensitive UI element first appears or is moved to a location where it will overlap with the current location of the pointer, user needs to re-entry 3.Padding area around sensitive element
EVALUATION METHOD 1.Recruit people from Amazon to do tests 2.Total of 3521 participants, 2064 of which are valid participants 3.The evaluation results are reliable. 4.Only evaluate three attacks, not large-scale.
COMPARISON 1.Measurement 1.The USENIX paper provides more attacking scenarios and defense cases. 2.The AsiaCCS paper presents a first, large-scale attempt to demonstrate that clickjacking is prevalent and serious. 2.Deployment 1.Both are deployed in browser. 2.ClickIDS is a plugin, InContext can be implemented as a plugin. 3.Introduce New Attacks? 1.The USENIX paper introduces three new attacks.
COMPARISON 4.Defense Mechanism 1.InContext is more Complete (Pointer, Cropping, strokejacking) 2.InContext only address to elements labeled by application itself as sensitive. Less user experience penalty 5.Evaluation 4.USENIX paper’s authors recruit people from Amazon to evaluate InContext’ effectiveness. More accurate. But only test a few attacks 5.The AsiaCCS uses tools to simulate users’ behaviors to evaluate ClickIDS’s effectiveness in large scale. Large scale, but not accurate. This method will introduce FP.
CONCLUSITON 1.The paper discussed current clickjacking techniques and existing anti-clickjacking defenses 2.The paper proposed three new attack variants that can evade current defenses 3.The evaluation results show that our attacks are highly effective (success rates 43% to 98%) 4.The paper proposed InContext defense mechanism, which be can very effective against clickjacking