SlideShare a Scribd company logo
Adam Doupé, Marco Cova and Giovanni Vigna
          University of California, Santa Barbara
                             DIMVA 2010 - 7/8/10
   Introduction to black box web vulnerability
    scanners
   Design of custom vulnerable website –
    WackoPicko
   Results
   Analysis
   Describe the design of a testing web
    application

   Identify a number of challenges that scanners
    need to overcome when testing modern web
    applications

   Test the performance of eleven real-world
    scanners and identify areas that need further
    work
Server




Crawler      Attack   Analysis
   Authentication
   Upload Pictures
   Comment on Pictures
   “Purchase” Pictures
   Tag Search
   Guestbook
   Admin Area
   XSS
    ◦ Reflected, Stored, and Reflected behind JavaScript
   Session ID
   Weak Password
   Reflected SQL Injection
   Command Line Injection
   File Inclusion
   File Exposure
   Parameter Manipulation
   Reflected XSS behind Flash
   Stored SQL Injection
   Directory Traversal
   Multi-step Stored XSS
   Forceful Browsing
   Logic Flaw
   HTML Parsing
   Multi-Step Process / State
   Infinite Website
   Authentication
   Client-side Code
    ◦ Web Input Vector Extractor Teaser (WIVET)
Name           Price
Acunetix       $4,995 - $6,350
AppScan        $12,550 - $32,500
Burp           £125 ($190.82)
Grendel-Scan   Open source
Hailstorm      $10,000
Milescan       $495 - $1,495
N-Stalker      $899 - $6,299
NTOSpider      $10,000
Paros          Open source
w3af           Open source
Webinspect     $6,000 - $30,000
   Each scanner run four times:
    ◦ WackoPicko
      Initial – No configuration (point and click)
      Config – Given valid Username/Password
      Manual – Used proxy to thoroughly browse site.

    ◦ WIVET – Testing JavaScript capabilities

   Limitations
Name         Reflected   Stored     SQL         Command     File        File        XSS via      XSS via
             XSS         XSS        Injection   line        Inclusion   Exposure    JavaScript   Flash
                                                Injection

 Acunetix      Initial    Initial     Initial                 Initial     Initial     Initial

 AppScan       Initial    Initial     Initial                 Initial     Initial

  Burp         Initial   Manual       Initial     Initial                 Initial                Manual

 Grendel-
              Manual                 Config
   Scan

Hailstorm      Initial   Config      Config                                                      Manual

 Milescan      Initial   Manual      Config

N-Stalker      Initial   Manual      Manual                               Initial     Initial    Manual

NTOSpider      Initial    Initial     Initial

  Paros        Initial    Initial    Config                                                      Manual

  w3af         Initial   Manual       Initial                 Initial                            Manual

Webinspect     Initial    Initial     Initial                 Initial                 Initial    Manual
   Missed by all scanners
    ◦   Session ID
    ◦   Weak Password
    ◦   Parameter Manipulation
    ◦   Forceful Browsing
    ◦   Logic Flaw
   Will discuss later
    ◦ Stored SQL Injection
    ◦ Directory Traversal
    ◦ Stored XSS Behind Login
   Ranged from 0 to 200+
    ◦ Average was ~25
   Why?
    ◦ Server Path Disclosure
   “Actual” False Positives
    ◦ Hailstorm
      XSS, 2 Code Injection
    ◦ NTOSpider
      3 XSS
    ◦ w3af
      PHP eval() Injection
   Strictly Dominates
More
Dominant




Less
Dominant
   Default values
   XSS attacks
   Command-line Injection
   SQL Injection
   File Exposure
   Remote Code Execution
   Number of Accesses
    ◦ Range from ~50 per page to ~3,000 per page
    ◦ Hailstorm accessed vulnerable pages that required an
      account on INITIAL scan!

   HTML
    ◦ Burp and N-Stalker
      <TEXTAREA>
    ◦ Milescan and Grendel-Scan
      POST
    ◦ Hailstorm
      No-Injection
    ◦ w3af
      No Default
   Uploading a Picture
    ◦ 2 Scanners uploaded without help

    ◦ 3 Scanners unable to upload one!
   WIVET
    ◦ 3 Scanners couldn’t complete
      Paros and Burp - <base>
      N-Stalker – Frame?
    ◦ Dynamic JavaScript
      Webinspect, Acunetix, NTOSpider, Hailstorm
    ◦ JavaScript library
    ◦ No Flash
   Created an account successfully
    ◦ 4 Scanners
        Hailstorm
        N-Stalker
        NTOSpider
        WebInspect
   Incorporate lots of logging in the application
   Two versions of the site
    ◦ No vulnerabilities
    ◦ All vulnerabilities
   Script running the tests
   Include:
    ◦ File upload forms
    ◦ AJAX
    ◦ Several JavaScript UI Libraries
   Ability to crawl as important as detection

   Many vulnerabilities cannot be detected

   Cost not directly proportional to functionality
Why Johnny Can't Pentest: An Analysis of Black-box Web Vulnerability Scanners
Why Johnny Can't Pentest: An Analysis of Black-box Web Vulnerability Scanners

More Related Content

Similar to Why Johnny Can't Pentest: An Analysis of Black-box Web Vulnerability Scanners

Pangolin Datasheet
Pangolin DatasheetPangolin Datasheet
Pangolin Datasheet
mattotamhe
 
Kraken
KrakenKraken
Kraken
PayPal
 
Security DevOps - Wie Sie in agilen Projekten trotzdem sicher bleiben // DevO...
Security DevOps - Wie Sie in agilen Projekten trotzdem sicher bleiben // DevO...Security DevOps - Wie Sie in agilen Projekten trotzdem sicher bleiben // DevO...
Security DevOps - Wie Sie in agilen Projekten trotzdem sicher bleiben // DevO...
Christian Schneider
 
Romulus OWASP
Romulus OWASPRomulus OWASP
Romulus OWASP
Grupo Gesfor I+D+i
 
Effective DevSecOps
Effective DevSecOpsEffective DevSecOps
Effective DevSecOps
Pawel Krawczyk
 
[OWASP Poland Day] Application frameworks' vulnerabilities
[OWASP Poland Day] Application frameworks' vulnerabilities[OWASP Poland Day] Application frameworks' vulnerabilities
[OWASP Poland Day] Application frameworks' vulnerabilities
OWASP
 
Problems with parameters b sides-msp
Problems with parameters b sides-mspProblems with parameters b sides-msp
Problems with parameters b sides-msp
Mike Saunders
 
Web Based Security
Web Based SecurityWeb Based Security
Web Based Security
John Wiley
 
Hacking WebApps for fun and profit : how to approach a target?
Hacking WebApps for fun and profit : how to approach a target?Hacking WebApps for fun and profit : how to approach a target?
Hacking WebApps for fun and profit : how to approach a target?
Yassine Aboukir
 
OWASP App Sec US - 2010
OWASP App Sec US - 2010OWASP App Sec US - 2010
OWASP App Sec US - 2010
Aditya K Sood
 
Oleh Shpyrna "Security Testing Basics: Check your Webapp for gaps before l_unch"
Oleh Shpyrna "Security Testing Basics: Check your Webapp for gaps before l_unch"Oleh Shpyrna "Security Testing Basics: Check your Webapp for gaps before l_unch"
Oleh Shpyrna "Security Testing Basics: Check your Webapp for gaps before l_unch"
Dakiry
 
Hacking Client Side Insecurities
Hacking Client Side InsecuritiesHacking Client Side Insecurities
Hacking Client Side Insecurities
amiable_indian
 
Technical Architecture of RASP Technology
Technical Architecture of RASP TechnologyTechnical Architecture of RASP Technology
Technical Architecture of RASP Technology
Priyanka Aash
 
Web Application Defences
Web Application DefencesWeb Application Defences
Web Application Defences
Damilola Longe, CISSP, CCSP, MSc
 
Identifying Web Servers: A First-look Into the Future of Web Server Fingerpri...
Identifying Web Servers: A First-look Into the Future of Web Server Fingerpri...Identifying Web Servers: A First-look Into the Future of Web Server Fingerpri...
Identifying Web Servers: A First-look Into the Future of Web Server Fingerpri...
Jeremiah Grossman
 
Static code analysis with sonar qube
Static code analysis with sonar qubeStatic code analysis with sonar qube
Static code analysis with sonar qube
Hayi Nukman
 
Cyber ppt
Cyber pptCyber ppt
Cyber ppt
karthik menon
 
Jon Stace Web Cryptography API
Jon Stace Web Cryptography APIJon Stace Web Cryptography API
Jon Stace Web Cryptography API
Jon Stace
 
Introduction to Mod security session April 2016
Introduction to Mod security session April 2016Introduction to Mod security session April 2016
Introduction to Mod security session April 2016
Rahul
 
Web Application Security
Web Application SecurityWeb Application Security
Web Application Security
Siarhei Barysiuk
 

Similar to Why Johnny Can't Pentest: An Analysis of Black-box Web Vulnerability Scanners (20)

Pangolin Datasheet
Pangolin DatasheetPangolin Datasheet
Pangolin Datasheet
 
Kraken
KrakenKraken
Kraken
 
Security DevOps - Wie Sie in agilen Projekten trotzdem sicher bleiben // DevO...
Security DevOps - Wie Sie in agilen Projekten trotzdem sicher bleiben // DevO...Security DevOps - Wie Sie in agilen Projekten trotzdem sicher bleiben // DevO...
Security DevOps - Wie Sie in agilen Projekten trotzdem sicher bleiben // DevO...
 
Romulus OWASP
Romulus OWASPRomulus OWASP
Romulus OWASP
 
Effective DevSecOps
Effective DevSecOpsEffective DevSecOps
Effective DevSecOps
 
[OWASP Poland Day] Application frameworks' vulnerabilities
[OWASP Poland Day] Application frameworks' vulnerabilities[OWASP Poland Day] Application frameworks' vulnerabilities
[OWASP Poland Day] Application frameworks' vulnerabilities
 
Problems with parameters b sides-msp
Problems with parameters b sides-mspProblems with parameters b sides-msp
Problems with parameters b sides-msp
 
Web Based Security
Web Based SecurityWeb Based Security
Web Based Security
 
Hacking WebApps for fun and profit : how to approach a target?
Hacking WebApps for fun and profit : how to approach a target?Hacking WebApps for fun and profit : how to approach a target?
Hacking WebApps for fun and profit : how to approach a target?
 
OWASP App Sec US - 2010
OWASP App Sec US - 2010OWASP App Sec US - 2010
OWASP App Sec US - 2010
 
Oleh Shpyrna "Security Testing Basics: Check your Webapp for gaps before l_unch"
Oleh Shpyrna "Security Testing Basics: Check your Webapp for gaps before l_unch"Oleh Shpyrna "Security Testing Basics: Check your Webapp for gaps before l_unch"
Oleh Shpyrna "Security Testing Basics: Check your Webapp for gaps before l_unch"
 
Hacking Client Side Insecurities
Hacking Client Side InsecuritiesHacking Client Side Insecurities
Hacking Client Side Insecurities
 
Technical Architecture of RASP Technology
Technical Architecture of RASP TechnologyTechnical Architecture of RASP Technology
Technical Architecture of RASP Technology
 
Web Application Defences
Web Application DefencesWeb Application Defences
Web Application Defences
 
Identifying Web Servers: A First-look Into the Future of Web Server Fingerpri...
Identifying Web Servers: A First-look Into the Future of Web Server Fingerpri...Identifying Web Servers: A First-look Into the Future of Web Server Fingerpri...
Identifying Web Servers: A First-look Into the Future of Web Server Fingerpri...
 
Static code analysis with sonar qube
Static code analysis with sonar qubeStatic code analysis with sonar qube
Static code analysis with sonar qube
 
Cyber ppt
Cyber pptCyber ppt
Cyber ppt
 
Jon Stace Web Cryptography API
Jon Stace Web Cryptography APIJon Stace Web Cryptography API
Jon Stace Web Cryptography API
 
Introduction to Mod security session April 2016
Introduction to Mod security session April 2016Introduction to Mod security session April 2016
Introduction to Mod security session April 2016
 
Web Application Security
Web Application SecurityWeb Application Security
Web Application Security
 

Recently uploaded

UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Zilliz
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Zilliz
 

Recently uploaded (20)

UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
 

Why Johnny Can't Pentest: An Analysis of Black-box Web Vulnerability Scanners

  • 1. Adam Doupé, Marco Cova and Giovanni Vigna University of California, Santa Barbara DIMVA 2010 - 7/8/10
  • 2. Introduction to black box web vulnerability scanners  Design of custom vulnerable website – WackoPicko  Results  Analysis
  • 3. Describe the design of a testing web application  Identify a number of challenges that scanners need to overcome when testing modern web applications  Test the performance of eleven real-world scanners and identify areas that need further work
  • 4. Server Crawler Attack Analysis
  • 5. Authentication  Upload Pictures  Comment on Pictures  “Purchase” Pictures  Tag Search  Guestbook  Admin Area
  • 6. XSS ◦ Reflected, Stored, and Reflected behind JavaScript  Session ID  Weak Password  Reflected SQL Injection  Command Line Injection  File Inclusion  File Exposure  Parameter Manipulation
  • 7. Reflected XSS behind Flash  Stored SQL Injection  Directory Traversal  Multi-step Stored XSS  Forceful Browsing  Logic Flaw
  • 8. HTML Parsing  Multi-Step Process / State  Infinite Website  Authentication  Client-side Code ◦ Web Input Vector Extractor Teaser (WIVET)
  • 9. Name Price Acunetix $4,995 - $6,350 AppScan $12,550 - $32,500 Burp £125 ($190.82) Grendel-Scan Open source Hailstorm $10,000 Milescan $495 - $1,495 N-Stalker $899 - $6,299 NTOSpider $10,000 Paros Open source w3af Open source Webinspect $6,000 - $30,000
  • 10. Each scanner run four times: ◦ WackoPicko  Initial – No configuration (point and click)  Config – Given valid Username/Password  Manual – Used proxy to thoroughly browse site. ◦ WIVET – Testing JavaScript capabilities  Limitations
  • 11. Name Reflected Stored SQL Command File File XSS via XSS via XSS XSS Injection line Inclusion Exposure JavaScript Flash Injection Acunetix Initial Initial Initial Initial Initial Initial AppScan Initial Initial Initial Initial Initial Burp Initial Manual Initial Initial Initial Manual Grendel- Manual Config Scan Hailstorm Initial Config Config Manual Milescan Initial Manual Config N-Stalker Initial Manual Manual Initial Initial Manual NTOSpider Initial Initial Initial Paros Initial Initial Config Manual w3af Initial Manual Initial Initial Manual Webinspect Initial Initial Initial Initial Initial Manual
  • 12.
  • 13. Missed by all scanners ◦ Session ID ◦ Weak Password ◦ Parameter Manipulation ◦ Forceful Browsing ◦ Logic Flaw  Will discuss later ◦ Stored SQL Injection ◦ Directory Traversal ◦ Stored XSS Behind Login
  • 14. Ranged from 0 to 200+ ◦ Average was ~25  Why? ◦ Server Path Disclosure  “Actual” False Positives ◦ Hailstorm  XSS, 2 Code Injection ◦ NTOSpider  3 XSS ◦ w3af  PHP eval() Injection
  • 15. Strictly Dominates
  • 17. Default values  XSS attacks  Command-line Injection  SQL Injection  File Exposure  Remote Code Execution
  • 18. Number of Accesses ◦ Range from ~50 per page to ~3,000 per page ◦ Hailstorm accessed vulnerable pages that required an account on INITIAL scan!  HTML ◦ Burp and N-Stalker  <TEXTAREA> ◦ Milescan and Grendel-Scan  POST ◦ Hailstorm  No-Injection ◦ w3af  No Default
  • 19. Uploading a Picture ◦ 2 Scanners uploaded without help ◦ 3 Scanners unable to upload one!
  • 20. WIVET ◦ 3 Scanners couldn’t complete  Paros and Burp - <base>  N-Stalker – Frame? ◦ Dynamic JavaScript  Webinspect, Acunetix, NTOSpider, Hailstorm ◦ JavaScript library ◦ No Flash
  • 21. Created an account successfully ◦ 4 Scanners  Hailstorm  N-Stalker  NTOSpider  WebInspect
  • 22. Incorporate lots of logging in the application  Two versions of the site ◦ No vulnerabilities ◦ All vulnerabilities  Script running the tests  Include: ◦ File upload forms ◦ AJAX ◦ Several JavaScript UI Libraries
  • 23. Ability to crawl as important as detection  Many vulnerabilities cannot be detected  Cost not directly proportional to functionality