why can t johnny fix vulnerabilities
play

Why Cant Johnny Fix Vulnerabilities: A Usability Evaluation of - PowerPoint PPT Presentation

Why Cant Johnny Fix Vulnerabilities: A Usability Evaluation of Static Analysis Tools for Security Justin Smith (Lafayette College) smithjus@lafayette.edu Lisa Nguyen Quang Do (Google) lisanqd@google.com Emerson Murphy-Hill (Google)


  1. Why Can’t Johnny Fix Vulnerabilities: A Usability Evaluation of Static Analysis Tools for Security Justin Smith (Lafayette College) smithjus@lafayette.edu Lisa Nguyen Quang Do (Google) lisanqd@google.com Emerson Murphy-Hill (Google) emersonm@google.com @JustinSmith0903 smithjus@lafayette.edu https://jssmith1.github.io/

  2. Static Analysis to the Rescue! Static analysis tools detect vulnerabilities early Static Analysis https://metier.jakarman.nl/design_sdlc/design_sdlc.html

  3. Static Analysis to the Rescue? Static analysis tools detect vulnerabilities early Static Analysis https://metier.jakarman.nl/design_sdlc/design_sdlc.html

  4. Unusable static analysis Static analysis tools: - produce “bad warning messages” [Christakis, 2016]; - “may not give enough information” [Johnson, 2013]; - and “miscommunicate” [Johnson, 2016] with developers. “Usable security for developers has been a critically under - investigated area” [ Acar, 2016]. “[Improving] the usability of analysis results significantly increases the utility of analysis tools.” [Sadowski, 2015]

  5. What types of issues detract from the usability of security-oriented static analysis tools?

  6. Tools Evaluated Three open-source tools • Find Security Bugs, RIPS, and Flawfinder One commercial tool FindSecBugs Flawfinder Commercial PHP RIPS Tool

  7. Tools Evaluated YOUR TOOL HERE Replication Package

  8. Approach Heuristic walkthrough evaluation Phase 1: Cognitive walkthrough Phase 2: Heuristic evaluation User study Observed participants (n = 12) as they used the four tools Analysis Identified 194 (heuristic walkthroughs) + 140 (user study) usability issues Open card sort to group issues into unique themes for presentation

  9. Overview of Findings Themes Subthemes Missing Affordances Managing Vulnerabilities Applying Fixes Missing or Buried Vulnerability Prioritization Information Fix Information Scalability of Vulnerability Sorting Interfaces Overlapping Vulnerabilities Scalable Visualizations Inaccuracy of Analysis Code Disconnect Mismatched Examples Immutable Code Workflow Continuity Tracking Progress Batch Processing

  10. Overview of Findings Themes Subthemes Missing Affordances Managing Vulnerabilities Applying Fixes Missing or Buried Vulnerability Prioritization Information Fix Information Scalability of Vulnerability Sorting Interfaces Overlapping Vulnerabilities Scalable Visualizations Inaccuracy of Analysis Code Disconnect Mismatched Examples Immutable Code Workflow Continuity Tracking Progress Batch Processing

  11. Findings Problem: Visual scalability over large programs

  12. Findings Problem: Unclear severity scales

  13. Findings Problem: Buried warnings

  14. Takeaways Usability issues detract from security-oriented static analysis tools. Using relatively inexpensive heuristic walkthroughs, we can identify and address these issues!

  15. Takeaways Usability issues detract from security-oriented static analysis tools. Using relatively inexpensive heuristic walkthroughs, we can identify and ^ address these issues! you } @JustinSmith0903 smithjus@lafayette.edu https://jssmith1.github.io/ Replication Package

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend