SlideShare ist ein Scribd-Unternehmen logo
1 von 35
Downloaden Sie, um offline zu lesen
Exploring the
Security Testers
Toolkit
Dan Billing – New Voice Media
@thetestdoctor | thetestdoctor.wordpress.com
Objectives for the day
 Introductions
 An introduction to threat modelling and an activity to
generate test ideas
 An introduction to the OWASP Top 10
 An introduction to some useful tools and how to use them
 Explore an application to discover some vulnerabilities
 Talk about threats and what they mean in context
 Talk about attacks and how they can be used in testing
 Practice some attacks
 Consolidate and challenge our thinking
Introduction
 Tester for 13 years, 4 years as a self employed consultant
 Worked in the private and public sector in the UK
 AOL Time Warner
 Capita
 Northgate
 UK Government
 Brightpearl
 Now a Test Engineer at New Voice Media
 @TheTestDoctor
 www.thetestdoctor.wordpress.com
Introductions
About you?
What do you want to get out of
the day?
A Security Testing Mnemonic
 EX – EXPLORE
 T – THREATS
 E – EXPERIMENT
 R – RISKS
 M – MONITOR
 IN – INTERROGATE
 A – ANALYSIS
 T – TARGETED
 E - EXPEDITED
Image courtesy of Andy
Glover @cartoontester
Gruyere – the cheesy web app
 Navigate your browser of choice to:
 http://google-gruyere.appspot.com/start
 Built by Google
 Deliberately vulnerable web application for training
 Don’t enter personal data into it!
AltoroMutual – the reliable
banking application
 Navigate your browser of choice to:
 http://altoromutual.com/
 Built by IBM (as a marketing tool for AppScan)
 Deliberately vulnerable web application for training
 Don’t enter personal data into it!
Explore the application
 Work in groups
 Explore the application 10-15 mins
 What can you find out?
 User scenarios?
 What can you do with the application?
 Critical assets?
 Features and functionality?
 Areas for testing?
 Feedback to the group
Tools of the Trade
 Browser tools
 Built in DOM tools and consoles – available in all
modern browsers
 Firebug
 Monitor errors, resources, traffic and scripts
 Add, delete and modify cookies
 Plugins e.g. Tamper Data, EditThisCookie
 OWASP Mantra
 API tools e.g The Postman, Advanced Rest Client
Tools of the Trade
 Proxy tools
 Fiddler
 Zed Attack Proxy,
 BurpSuite
Intercepting HTTP/HTTPS traffic
Modify requests, headers, cookies and other session data
Craft attacks and other harmful scenarios
Spider
Fuzzers
Port Scanning
CSRF
Tools of the Trade
 Network monitors
 Protocol and packet sniffing e.g. Wireshark
 Network mapping e.g Nmap
 Source Code Analysers
 OWASP 02 Platform
 OWASP LAPSE
Fiddler
 Download and Install Fiddler
 http://www.telerik.com/fiddler
 Configure your Browser
 Set the Proxy Server to 127.0.0.1
 Set the Port to 8080
 Configure Fiddler
 Install certificate if required
 Set the Local Proxy to 127.0.0.1
 Set the Port to 8080
 You may need to close and restart the browser/Fiddler
Zed Attack Proxy (ZAP)
 Download and install Zed Attack Proxy
 https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project
 Configure your Browser
 Set the Proxy Server to 127.0.0.1
 Set the Port to 8181
 Configure Zed Attack Proxy
 Install certificate if required
 Set the Local Proxy to 127.0.0.1
 Set the Port to 8181
 You may need to close and restart the browser/ZAP
BurpSuite
 Download and Install Burpsuite (Free Edition)
 http://portswigger.net/burp/download.html
 Configure your Browser
 Set the Proxy Server to 127.0.0.1
 Set the Port to 8080
 Configure Burpsuite
 Install certificate if required
 Set the Local Proxy to 127.0.0.1
 Set the Port to 8282
 You may need to close and restart the browser/ZAP
Threat Modelling
STRIDE
 S – SPOOFING
 T – TAMPERING
 R – REPUDIATION
 I – INFORMATION DISCLOSURE
 D – DENIAL OF SERVICE
 E – ESCALATION OF PRIVILEGE
Spoofing
Threat action aimed to illegally
access and use another user's
credentials, such as username and
password.
Tampering
Threat action aimed to maliciously
change/modify persistent data,
such as persistent data in a
database, and the alteration of
data in transit between two
computers over an open network,
such as the Internet.
Repudiation
Threat action aimed to perform
illegal operations in a system that
lacks the ability to trace the
prohibited operations.
Information Disclosure
Threat action to read a file that
one was not granted access to, or
to read data in transit.
Denial of Service
Threat aimed to deny access to
valid users, such as by making a
web server temporarily unavailable
or unusable.
Escalation of Privilege
Threat aimed to gain privileged
access to resources for gaining
unauthorized access to information
or to compromise a system.
Threat Mind Map
 Grab some post-its
 Identify threats to your application – Gruyere or
Altoromutual
 How might they happen?
 What are the risks?
 What might be the impact?
 Mind-map them as a team on the board
 Feedback to the group
OWASP Top 10 2013
 1 – Injection
 2 – Broken Authentication and Session Management
 3 – Cross Site Scripting (XSS)
 4 – Insecure Direct Object References
 5 – Security Misconfiguration
 6 – Sensitive Data Exposure
 7 – Missing Function Level Access Control
 8 – Cross Site Request Forgery (CSRF)
 9 – Using Components with Known Vulnerabilities
 10 – Unvalidated Redirects and Forwards
SQL Injection
Exploits of a Mom – www.xkcd.com/327
Cross Site Scripting (XSS)
1. Sends URL containing a
hidden script
4. Browser executes script
and sends private data
2. Follows URL containing
script
3. Serves page containing
script
5. Impersonates user at
website
Cross Site Request Forgery (CSRF)
1. Victim browses a
malicious page with
content
2. Script or image
executed in
browser
3. Attacker can
access browser
sessions, modify
config or send
malicious content
Using Scanning Tools
 Practice on a training website or on a virtual
machine
 Agree with stakeholders
 Don’t use against a site you don’t have permission
to test on
 Understand risks to assets
 Schedule appropriately
Passive Scanning
 Explore the website under test
 Observe the behaviour of the scanning tool
 What information does it provide?
 How is the information structured?
 Any testing ideas?
 What would you test first?
Spidering
 Discovers more areas of your application to test
 Physically interacts with the application
 Use with caution
 What information does it provide?
 How is the information structured?
 Any testing ideas?
Active Scanning
 Performs physical attacks against the application
under test
 Injection
 XSS
 Cookie Poisoning
 What information does it provide?
 How is the information structured?
 Any testing ideas?
 What do we test next?
Fuzzing
 Inputs random, invalid or unexpected data
 Might indicate an exception that could cause
crashes, performance issues or memory leaks
 What information does it provide?
 How is the information structured?
 Any testing ideas?
Proxy Chaining
 All tools work differently
 They all have similar but varied features and
functions
 Linking them together will enhance your testing
 Comparison of results from different tools
 Try modifying the upstream and downstream
proxy settings
Extending your toolset
 Can be built into a continuous integration solution
 Scripting interfaces e.g. Python, Ruby
 API
 Reporting
Wrap Up
 Is there something we haven’t covered that you
want to talk about?
 Has this workshop met your expectations?
 Any questions?
 Thanks for taking part 
Getting in Touch
 Twitter @TheTestDoctor
 Blog thetestdoctor.wordpress.com
 www.newvoicemedia.com

Weitere ähnliche Inhalte

Was ist angesagt?

How to find Zero day vulnerabilities
How to find Zero day vulnerabilitiesHow to find Zero day vulnerabilities
How to find Zero day vulnerabilitiesMohammed A. Imran
 
Perform fuzz on appplications web interface
Perform fuzz on appplications web interfacePerform fuzz on appplications web interface
Perform fuzz on appplications web interfaceIndicThreads
 
Simplified Security Code Review Process
Simplified Security Code Review ProcessSimplified Security Code Review Process
Simplified Security Code Review ProcessSherif Koussa
 
Web security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-kearyWeb security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-kearydrewz lin
 
Introduction to penetration testing
Introduction to penetration testingIntroduction to penetration testing
Introduction to penetration testingAmine SAIGHI
 
Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)
Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)
Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)OWASP Ottawa
 
Penetration testing dont just leave it to chance
Penetration testing dont just leave it to chancePenetration testing dont just leave it to chance
Penetration testing dont just leave it to chanceDr. Anish Cheriyan (PhD)
 
Web application security: Threats & Countermeasures
Web application security: Threats & CountermeasuresWeb application security: Threats & Countermeasures
Web application security: Threats & CountermeasuresAung Thu Rha Hein
 
My Null Android Penetration Session
My Null  Android Penetration Session My Null  Android Penetration Session
My Null Android Penetration Session Avinash Sinha
 
Adaptive Testing Methodology [ ATM ]
Adaptive Testing Methodology [ ATM ]Adaptive Testing Methodology [ ATM ]
Adaptive Testing Methodology [ ATM ]Daniel Miessler
 
Cloud Security vs Security in the Cloud
Cloud Security vs Security in the CloudCloud Security vs Security in the Cloud
Cloud Security vs Security in the CloudTjylen Veselyj
 
Continuous security testing - sharing responsibility
Continuous security testing - sharing responsibilityContinuous security testing - sharing responsibility
Continuous security testing - sharing responsibilityVodqaBLR
 
Web Application Security with PHP
Web Application Security with PHPWeb Application Security with PHP
Web Application Security with PHPjikbal
 
Authentication without Authentication - AppSec California
Authentication without Authentication - AppSec CaliforniaAuthentication without Authentication - AppSec California
Authentication without Authentication - AppSec CaliforniaSoluto
 
Web Application Security And Getting Into Bug Bounties
Web Application Security And Getting Into Bug BountiesWeb Application Security And Getting Into Bug Bounties
Web Application Security And Getting Into Bug Bountieskunwaratul hax0r
 
Automating Web Applications Security Assessments Through Scanners
Automating Web Applications Security Assessments Through ScannersAutomating Web Applications Security Assessments Through Scanners
Automating Web Applications Security Assessments Through Scannersnfteodoro
 

Was ist angesagt? (20)

How to find Zero day vulnerabilities
How to find Zero day vulnerabilitiesHow to find Zero day vulnerabilities
How to find Zero day vulnerabilities
 
Perform fuzz on appplications web interface
Perform fuzz on appplications web interfacePerform fuzz on appplications web interface
Perform fuzz on appplications web interface
 
Simplified Security Code Review Process
Simplified Security Code Review ProcessSimplified Security Code Review Process
Simplified Security Code Review Process
 
Web application Testing
Web application TestingWeb application Testing
Web application Testing
 
Web security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-kearyWeb security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-keary
 
Introduction to penetration testing
Introduction to penetration testingIntroduction to penetration testing
Introduction to penetration testing
 
Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)
Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)
Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)
 
Penetration testing dont just leave it to chance
Penetration testing dont just leave it to chancePenetration testing dont just leave it to chance
Penetration testing dont just leave it to chance
 
Web application security: Threats & Countermeasures
Web application security: Threats & CountermeasuresWeb application security: Threats & Countermeasures
Web application security: Threats & Countermeasures
 
My Null Android Penetration Session
My Null  Android Penetration Session My Null  Android Penetration Session
My Null Android Penetration Session
 
Adaptive Testing Methodology [ ATM ]
Adaptive Testing Methodology [ ATM ]Adaptive Testing Methodology [ ATM ]
Adaptive Testing Methodology [ ATM ]
 
Security testing
Security testingSecurity testing
Security testing
 
Cloud Security vs Security in the Cloud
Cloud Security vs Security in the CloudCloud Security vs Security in the Cloud
Cloud Security vs Security in the Cloud
 
Continuous security testing - sharing responsibility
Continuous security testing - sharing responsibilityContinuous security testing - sharing responsibility
Continuous security testing - sharing responsibility
 
Web Application Security with PHP
Web Application Security with PHPWeb Application Security with PHP
Web Application Security with PHP
 
Authentication without Authentication - AppSec California
Authentication without Authentication - AppSec CaliforniaAuthentication without Authentication - AppSec California
Authentication without Authentication - AppSec California
 
Web Application Security And Getting Into Bug Bounties
Web Application Security And Getting Into Bug BountiesWeb Application Security And Getting Into Bug Bounties
Web Application Security And Getting Into Bug Bounties
 
Cyber ppt
Cyber pptCyber ppt
Cyber ppt
 
Security testing
Security testingSecurity testing
Security testing
 
Automating Web Applications Security Assessments Through Scanners
Automating Web Applications Security Assessments Through ScannersAutomating Web Applications Security Assessments Through Scanners
Automating Web Applications Security Assessments Through Scanners
 

Ähnlich wie Daniel billing exploring the security testers toolbox

Security Testing Approach for Web Application Testing.pdf
Security Testing Approach for Web Application Testing.pdfSecurity Testing Approach for Web Application Testing.pdf
Security Testing Approach for Web Application Testing.pdfAmeliaJonas2
 
INTERNSHIPREVIEW-ISHAQ (1) [Recovered].pptx
INTERNSHIPREVIEW-ISHAQ (1) [Recovered].pptxINTERNSHIPREVIEW-ISHAQ (1) [Recovered].pptx
INTERNSHIPREVIEW-ISHAQ (1) [Recovered].pptxSuhailShaik16
 
Bug Bounty Guide Tools and Resource.pdf
Bug Bounty Guide Tools and Resource.pdfBug Bounty Guide Tools and Resource.pdf
Bug Bounty Guide Tools and Resource.pdfhacktube5
 
Asegurarme de la Seguridad?, Un Vistazo al Penetration Testing
Asegurarme de la Seguridad?, Un Vistazo al Penetration TestingAsegurarme de la Seguridad?, Un Vistazo al Penetration Testing
Asegurarme de la Seguridad?, Un Vistazo al Penetration TestingSoftware Guru
 
CohenNancyPresentation.ppt
CohenNancyPresentation.pptCohenNancyPresentation.ppt
CohenNancyPresentation.pptmypc72
 
Splunk Discovery: Warsaw 2018 - Solve Your Security Challenges with Splunk En...
Splunk Discovery: Warsaw 2018 - Solve Your Security Challenges with Splunk En...Splunk Discovery: Warsaw 2018 - Solve Your Security Challenges with Splunk En...
Splunk Discovery: Warsaw 2018 - Solve Your Security Challenges with Splunk En...Splunk
 
Best Practices, Types, and Tools for Security Testing in 2023.docx
Best Practices, Types, and Tools for Security Testing in 2023.docxBest Practices, Types, and Tools for Security Testing in 2023.docx
Best Practices, Types, and Tools for Security Testing in 2023.docxAfour tech
 
Deep Learning based Threat / Intrusion detection system
Deep Learning based Threat / Intrusion detection systemDeep Learning based Threat / Intrusion detection system
Deep Learning based Threat / Intrusion detection systemAffine Analytics
 
VAPT_FINAL SLIDES.pptx
VAPT_FINAL SLIDES.pptxVAPT_FINAL SLIDES.pptx
VAPT_FINAL SLIDES.pptxkarthikvcyber
 
Vulnerability Assessment and Penetration Testing Framework by Falgun Rathod
Vulnerability Assessment and Penetration Testing Framework by Falgun RathodVulnerability Assessment and Penetration Testing Framework by Falgun Rathod
Vulnerability Assessment and Penetration Testing Framework by Falgun RathodFalgun Rathod
 
Vulnerability Ass... Penetrate What?
Vulnerability Ass... Penetrate What?Vulnerability Ass... Penetrate What?
Vulnerability Ass... Penetrate What?Jorge Orchilles
 
7 Steps to Threat Modeling
7 Steps to Threat Modeling7 Steps to Threat Modeling
7 Steps to Threat ModelingDanny Wong
 
Hands on Security, Disrupting the Kill Chain, SplunkLive! Austin
Hands on Security, Disrupting the Kill Chain, SplunkLive! AustinHands on Security, Disrupting the Kill Chain, SplunkLive! Austin
Hands on Security, Disrupting the Kill Chain, SplunkLive! AustinSplunk
 
(Training) Malware - To the Realm of Malicious Code
(Training) Malware - To the Realm of Malicious Code(Training) Malware - To the Realm of Malicious Code
(Training) Malware - To the Realm of Malicious CodeSatria Ady Pradana
 

Ähnlich wie Daniel billing exploring the security testers toolbox (20)

Security Testing Approach for Web Application Testing.pdf
Security Testing Approach for Web Application Testing.pdfSecurity Testing Approach for Web Application Testing.pdf
Security Testing Approach for Web Application Testing.pdf
 
INTERNSHIPREVIEW-ISHAQ (1) [Recovered].pptx
INTERNSHIPREVIEW-ISHAQ (1) [Recovered].pptxINTERNSHIPREVIEW-ISHAQ (1) [Recovered].pptx
INTERNSHIPREVIEW-ISHAQ (1) [Recovered].pptx
 
Application security
Application securityApplication security
Application security
 
Bug Bounty Guide Tools and Resource.pdf
Bug Bounty Guide Tools and Resource.pdfBug Bounty Guide Tools and Resource.pdf
Bug Bounty Guide Tools and Resource.pdf
 
Asegurarme de la Seguridad?, Un Vistazo al Penetration Testing
Asegurarme de la Seguridad?, Un Vistazo al Penetration TestingAsegurarme de la Seguridad?, Un Vistazo al Penetration Testing
Asegurarme de la Seguridad?, Un Vistazo al Penetration Testing
 
CohenNancyPresentation.ppt
CohenNancyPresentation.pptCohenNancyPresentation.ppt
CohenNancyPresentation.ppt
 
Splunk Discovery: Warsaw 2018 - Solve Your Security Challenges with Splunk En...
Splunk Discovery: Warsaw 2018 - Solve Your Security Challenges with Splunk En...Splunk Discovery: Warsaw 2018 - Solve Your Security Challenges with Splunk En...
Splunk Discovery: Warsaw 2018 - Solve Your Security Challenges with Splunk En...
 
Best Practices, Types, and Tools for Security Testing in 2023.docx
Best Practices, Types, and Tools for Security Testing in 2023.docxBest Practices, Types, and Tools for Security Testing in 2023.docx
Best Practices, Types, and Tools for Security Testing in 2023.docx
 
Deep Learning based Threat / Intrusion detection system
Deep Learning based Threat / Intrusion detection systemDeep Learning based Threat / Intrusion detection system
Deep Learning based Threat / Intrusion detection system
 
VAPT_FINAL SLIDES.pptx
VAPT_FINAL SLIDES.pptxVAPT_FINAL SLIDES.pptx
VAPT_FINAL SLIDES.pptx
 
Vulnerability Assessment and Penetration Testing Framework by Falgun Rathod
Vulnerability Assessment and Penetration Testing Framework by Falgun RathodVulnerability Assessment and Penetration Testing Framework by Falgun Rathod
Vulnerability Assessment and Penetration Testing Framework by Falgun Rathod
 
Vulnerability Ass... Penetrate What?
Vulnerability Ass... Penetrate What?Vulnerability Ass... Penetrate What?
Vulnerability Ass... Penetrate What?
 
7 Steps to Threat Modeling
7 Steps to Threat Modeling7 Steps to Threat Modeling
7 Steps to Threat Modeling
 
Hands on Security, Disrupting the Kill Chain, SplunkLive! Austin
Hands on Security, Disrupting the Kill Chain, SplunkLive! AustinHands on Security, Disrupting the Kill Chain, SplunkLive! Austin
Hands on Security, Disrupting the Kill Chain, SplunkLive! Austin
 
Zero Trust Model Presentation
Zero Trust Model PresentationZero Trust Model Presentation
Zero Trust Model Presentation
 
(Training) Malware - To the Realm of Malicious Code
(Training) Malware - To the Realm of Malicious Code(Training) Malware - To the Realm of Malicious Code
(Training) Malware - To the Realm of Malicious Code
 
Advanced Threat Protection
Advanced Threat ProtectionAdvanced Threat Protection
Advanced Threat Protection
 
Lan & Wan
Lan & WanLan & Wan
Lan & Wan
 
Lan & Wan
Lan & WanLan & Wan
Lan & Wan
 
ATP
ATPATP
ATP
 

Mehr von Romania Testing

Baris sarialioglu testing on the move, mobile testing
Baris sarialioglu   testing on the move, mobile testingBaris sarialioglu   testing on the move, mobile testing
Baris sarialioglu testing on the move, mobile testingRomania Testing
 
Jan jaap TMMi facts and figures v2
Jan jaap TMMi facts and figures v2Jan jaap TMMi facts and figures v2
Jan jaap TMMi facts and figures v2Romania Testing
 
Kiran karnad rtc2014 ghdb-final
Kiran karnad rtc2014 ghdb-finalKiran karnad rtc2014 ghdb-final
Kiran karnad rtc2014 ghdb-finalRomania Testing
 
Luis fraile exploratory testing myths ro
Luis fraile   exploratory testing myths roLuis fraile   exploratory testing myths ro
Luis fraile exploratory testing myths roRomania Testing
 
Stephen janaway mobile testing - that's just a smaller screen, right
Stephen janaway  mobile testing - that's just a smaller screen, rightStephen janaway  mobile testing - that's just a smaller screen, right
Stephen janaway mobile testing - that's just a smaller screen, rightRomania Testing
 
Roland van leusden mobile performance testing rtc 2014 v0.6
Roland van leusden   mobile performance testing  rtc 2014 v0.6Roland van leusden   mobile performance testing  rtc 2014 v0.6
Roland van leusden mobile performance testing rtc 2014 v0.6Romania Testing
 
Rene tuinhout passionate dating for testers and vice versa
Rene tuinhout   passionate dating for testers and vice versaRene tuinhout   passionate dating for testers and vice versa
Rene tuinhout passionate dating for testers and vice versaRomania Testing
 
Georgi hristov continuous integration-for mobile test automation
Georgi hristov   continuous integration-for mobile test automationGeorgi hristov   continuous integration-for mobile test automation
Georgi hristov continuous integration-for mobile test automationRomania Testing
 
Gabriel carabat a healthy approach for test automation
Gabriel carabat   a healthy approach for test automationGabriel carabat   a healthy approach for test automation
Gabriel carabat a healthy approach for test automationRomania Testing
 
Codruta bunea establishing a test approach for a private cloud environment
Codruta bunea   establishing a test approach for a private cloud environmentCodruta bunea   establishing a test approach for a private cloud environment
Codruta bunea establishing a test approach for a private cloud environmentRomania Testing
 
Ciprian balea automated performance-testing
Ciprian balea   automated performance-testingCiprian balea   automated performance-testing
Ciprian balea automated performance-testingRomania Testing
 
Andy glover - Artist within everyone
Andy glover - Artist within everyoneAndy glover - Artist within everyone
Andy glover - Artist within everyoneRomania Testing
 
Andy glover - Visual Testing Workshop
Andy glover  - Visual Testing WorkshopAndy glover  - Visual Testing Workshop
Andy glover - Visual Testing WorkshopRomania Testing
 
Ady beleanu automate-theprocessdelivery
Ady beleanu   automate-theprocessdeliveryAdy beleanu   automate-theprocessdelivery
Ady beleanu automate-theprocessdeliveryRomania Testing
 
Adrian bolboaca sherlock holmesandpairing-adibolboaca
Adrian bolboaca   sherlock holmesandpairing-adibolboacaAdrian bolboaca   sherlock holmesandpairing-adibolboaca
Adrian bolboaca sherlock holmesandpairing-adibolboacaRomania Testing
 
Stephen blower inspiring testers - rtc2014
Stephen blower   inspiring testers - rtc2014Stephen blower   inspiring testers - rtc2014
Stephen blower inspiring testers - rtc2014Romania Testing
 
Testing-as-a-service on demand
Testing-as-a-service on demandTesting-as-a-service on demand
Testing-as-a-service on demandRomania Testing
 
10 Lessons learned in test automation
10 Lessons learned in test automation10 Lessons learned in test automation
10 Lessons learned in test automationRomania Testing
 
Programming skills for test automation
Programming skills for test automationProgramming skills for test automation
Programming skills for test automationRomania Testing
 
Mentoring embedded testing
Mentoring embedded testingMentoring embedded testing
Mentoring embedded testingRomania Testing
 

Mehr von Romania Testing (20)

Baris sarialioglu testing on the move, mobile testing
Baris sarialioglu   testing on the move, mobile testingBaris sarialioglu   testing on the move, mobile testing
Baris sarialioglu testing on the move, mobile testing
 
Jan jaap TMMi facts and figures v2
Jan jaap TMMi facts and figures v2Jan jaap TMMi facts and figures v2
Jan jaap TMMi facts and figures v2
 
Kiran karnad rtc2014 ghdb-final
Kiran karnad rtc2014 ghdb-finalKiran karnad rtc2014 ghdb-final
Kiran karnad rtc2014 ghdb-final
 
Luis fraile exploratory testing myths ro
Luis fraile   exploratory testing myths roLuis fraile   exploratory testing myths ro
Luis fraile exploratory testing myths ro
 
Stephen janaway mobile testing - that's just a smaller screen, right
Stephen janaway  mobile testing - that's just a smaller screen, rightStephen janaway  mobile testing - that's just a smaller screen, right
Stephen janaway mobile testing - that's just a smaller screen, right
 
Roland van leusden mobile performance testing rtc 2014 v0.6
Roland van leusden   mobile performance testing  rtc 2014 v0.6Roland van leusden   mobile performance testing  rtc 2014 v0.6
Roland van leusden mobile performance testing rtc 2014 v0.6
 
Rene tuinhout passionate dating for testers and vice versa
Rene tuinhout   passionate dating for testers and vice versaRene tuinhout   passionate dating for testers and vice versa
Rene tuinhout passionate dating for testers and vice versa
 
Georgi hristov continuous integration-for mobile test automation
Georgi hristov   continuous integration-for mobile test automationGeorgi hristov   continuous integration-for mobile test automation
Georgi hristov continuous integration-for mobile test automation
 
Gabriel carabat a healthy approach for test automation
Gabriel carabat   a healthy approach for test automationGabriel carabat   a healthy approach for test automation
Gabriel carabat a healthy approach for test automation
 
Codruta bunea establishing a test approach for a private cloud environment
Codruta bunea   establishing a test approach for a private cloud environmentCodruta bunea   establishing a test approach for a private cloud environment
Codruta bunea establishing a test approach for a private cloud environment
 
Ciprian balea automated performance-testing
Ciprian balea   automated performance-testingCiprian balea   automated performance-testing
Ciprian balea automated performance-testing
 
Andy glover - Artist within everyone
Andy glover - Artist within everyoneAndy glover - Artist within everyone
Andy glover - Artist within everyone
 
Andy glover - Visual Testing Workshop
Andy glover  - Visual Testing WorkshopAndy glover  - Visual Testing Workshop
Andy glover - Visual Testing Workshop
 
Ady beleanu automate-theprocessdelivery
Ady beleanu   automate-theprocessdeliveryAdy beleanu   automate-theprocessdelivery
Ady beleanu automate-theprocessdelivery
 
Adrian bolboaca sherlock holmesandpairing-adibolboaca
Adrian bolboaca   sherlock holmesandpairing-adibolboacaAdrian bolboaca   sherlock holmesandpairing-adibolboaca
Adrian bolboaca sherlock holmesandpairing-adibolboaca
 
Stephen blower inspiring testers - rtc2014
Stephen blower   inspiring testers - rtc2014Stephen blower   inspiring testers - rtc2014
Stephen blower inspiring testers - rtc2014
 
Testing-as-a-service on demand
Testing-as-a-service on demandTesting-as-a-service on demand
Testing-as-a-service on demand
 
10 Lessons learned in test automation
10 Lessons learned in test automation10 Lessons learned in test automation
10 Lessons learned in test automation
 
Programming skills for test automation
Programming skills for test automationProgramming skills for test automation
Programming skills for test automation
 
Mentoring embedded testing
Mentoring embedded testingMentoring embedded testing
Mentoring embedded testing
 

Daniel billing exploring the security testers toolbox

  • 1. Exploring the Security Testers Toolkit Dan Billing – New Voice Media @thetestdoctor | thetestdoctor.wordpress.com
  • 2. Objectives for the day  Introductions  An introduction to threat modelling and an activity to generate test ideas  An introduction to the OWASP Top 10  An introduction to some useful tools and how to use them  Explore an application to discover some vulnerabilities  Talk about threats and what they mean in context  Talk about attacks and how they can be used in testing  Practice some attacks  Consolidate and challenge our thinking
  • 3. Introduction  Tester for 13 years, 4 years as a self employed consultant  Worked in the private and public sector in the UK  AOL Time Warner  Capita  Northgate  UK Government  Brightpearl  Now a Test Engineer at New Voice Media  @TheTestDoctor  www.thetestdoctor.wordpress.com
  • 4. Introductions About you? What do you want to get out of the day?
  • 5. A Security Testing Mnemonic  EX – EXPLORE  T – THREATS  E – EXPERIMENT  R – RISKS  M – MONITOR  IN – INTERROGATE  A – ANALYSIS  T – TARGETED  E - EXPEDITED Image courtesy of Andy Glover @cartoontester
  • 6. Gruyere – the cheesy web app  Navigate your browser of choice to:  http://google-gruyere.appspot.com/start  Built by Google  Deliberately vulnerable web application for training  Don’t enter personal data into it!
  • 7. AltoroMutual – the reliable banking application  Navigate your browser of choice to:  http://altoromutual.com/  Built by IBM (as a marketing tool for AppScan)  Deliberately vulnerable web application for training  Don’t enter personal data into it!
  • 8. Explore the application  Work in groups  Explore the application 10-15 mins  What can you find out?  User scenarios?  What can you do with the application?  Critical assets?  Features and functionality?  Areas for testing?  Feedback to the group
  • 9. Tools of the Trade  Browser tools  Built in DOM tools and consoles – available in all modern browsers  Firebug  Monitor errors, resources, traffic and scripts  Add, delete and modify cookies  Plugins e.g. Tamper Data, EditThisCookie  OWASP Mantra  API tools e.g The Postman, Advanced Rest Client
  • 10. Tools of the Trade  Proxy tools  Fiddler  Zed Attack Proxy,  BurpSuite Intercepting HTTP/HTTPS traffic Modify requests, headers, cookies and other session data Craft attacks and other harmful scenarios Spider Fuzzers Port Scanning CSRF
  • 11. Tools of the Trade  Network monitors  Protocol and packet sniffing e.g. Wireshark  Network mapping e.g Nmap  Source Code Analysers  OWASP 02 Platform  OWASP LAPSE
  • 12. Fiddler  Download and Install Fiddler  http://www.telerik.com/fiddler  Configure your Browser  Set the Proxy Server to 127.0.0.1  Set the Port to 8080  Configure Fiddler  Install certificate if required  Set the Local Proxy to 127.0.0.1  Set the Port to 8080  You may need to close and restart the browser/Fiddler
  • 13. Zed Attack Proxy (ZAP)  Download and install Zed Attack Proxy  https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project  Configure your Browser  Set the Proxy Server to 127.0.0.1  Set the Port to 8181  Configure Zed Attack Proxy  Install certificate if required  Set the Local Proxy to 127.0.0.1  Set the Port to 8181  You may need to close and restart the browser/ZAP
  • 14. BurpSuite  Download and Install Burpsuite (Free Edition)  http://portswigger.net/burp/download.html  Configure your Browser  Set the Proxy Server to 127.0.0.1  Set the Port to 8080  Configure Burpsuite  Install certificate if required  Set the Local Proxy to 127.0.0.1  Set the Port to 8282  You may need to close and restart the browser/ZAP
  • 15. Threat Modelling STRIDE  S – SPOOFING  T – TAMPERING  R – REPUDIATION  I – INFORMATION DISCLOSURE  D – DENIAL OF SERVICE  E – ESCALATION OF PRIVILEGE
  • 16. Spoofing Threat action aimed to illegally access and use another user's credentials, such as username and password.
  • 17. Tampering Threat action aimed to maliciously change/modify persistent data, such as persistent data in a database, and the alteration of data in transit between two computers over an open network, such as the Internet.
  • 18. Repudiation Threat action aimed to perform illegal operations in a system that lacks the ability to trace the prohibited operations.
  • 19. Information Disclosure Threat action to read a file that one was not granted access to, or to read data in transit.
  • 20. Denial of Service Threat aimed to deny access to valid users, such as by making a web server temporarily unavailable or unusable.
  • 21. Escalation of Privilege Threat aimed to gain privileged access to resources for gaining unauthorized access to information or to compromise a system.
  • 22. Threat Mind Map  Grab some post-its  Identify threats to your application – Gruyere or Altoromutual  How might they happen?  What are the risks?  What might be the impact?  Mind-map them as a team on the board  Feedback to the group
  • 23. OWASP Top 10 2013  1 – Injection  2 – Broken Authentication and Session Management  3 – Cross Site Scripting (XSS)  4 – Insecure Direct Object References  5 – Security Misconfiguration  6 – Sensitive Data Exposure  7 – Missing Function Level Access Control  8 – Cross Site Request Forgery (CSRF)  9 – Using Components with Known Vulnerabilities  10 – Unvalidated Redirects and Forwards
  • 24. SQL Injection Exploits of a Mom – www.xkcd.com/327
  • 25. Cross Site Scripting (XSS) 1. Sends URL containing a hidden script 4. Browser executes script and sends private data 2. Follows URL containing script 3. Serves page containing script 5. Impersonates user at website
  • 26. Cross Site Request Forgery (CSRF) 1. Victim browses a malicious page with content 2. Script or image executed in browser 3. Attacker can access browser sessions, modify config or send malicious content
  • 27. Using Scanning Tools  Practice on a training website or on a virtual machine  Agree with stakeholders  Don’t use against a site you don’t have permission to test on  Understand risks to assets  Schedule appropriately
  • 28. Passive Scanning  Explore the website under test  Observe the behaviour of the scanning tool  What information does it provide?  How is the information structured?  Any testing ideas?  What would you test first?
  • 29. Spidering  Discovers more areas of your application to test  Physically interacts with the application  Use with caution  What information does it provide?  How is the information structured?  Any testing ideas?
  • 30. Active Scanning  Performs physical attacks against the application under test  Injection  XSS  Cookie Poisoning  What information does it provide?  How is the information structured?  Any testing ideas?  What do we test next?
  • 31. Fuzzing  Inputs random, invalid or unexpected data  Might indicate an exception that could cause crashes, performance issues or memory leaks  What information does it provide?  How is the information structured?  Any testing ideas?
  • 32. Proxy Chaining  All tools work differently  They all have similar but varied features and functions  Linking them together will enhance your testing  Comparison of results from different tools  Try modifying the upstream and downstream proxy settings
  • 33. Extending your toolset  Can be built into a continuous integration solution  Scripting interfaces e.g. Python, Ruby  API  Reporting
  • 34. Wrap Up  Is there something we haven’t covered that you want to talk about?  Has this workshop met your expectations?  Any questions?  Thanks for taking part 
  • 35. Getting in Touch  Twitter @TheTestDoctor  Blog thetestdoctor.wordpress.com  www.newvoicemedia.com