SlideShare a Scribd company logo
Parasoft Copyright © 2015 1
2015-06-24
Busting Software Bugs to Boost
Application Security
Arthur “Code Curmudgeon” Hicken
May 2015
Parasoft Copyright © 2015 22
Open and hide your control panel
Join audio:
• Choose “Mic & Speakers” to use
VoIP
• Choose “Telephone” and dial
using the information provided
Submit questions and comments via
the Questions panel
Note: Today’s presentation is being
recorded and will be provided within
48 hours.
Your Participation
GoToWebinar Housekeeping
Parasoft Copyright © 2015 33
Your Presenter
Arthur Hicken has been involved in automating
various practices at Parasoft for over 20 years.
He has worked on projects including database
development, the software development lifecycle,
web publishing and monitoring, and integration
with legacy systems.
Arthur has worked with IT departments in
companies such as Cisco, Vanguard, and
Motorola to help improve their software
development practices.
Parasoft Copyright © 2015 44
Agenda
 How security processes are like quality
processes
 How software bugs are security vulnerabilities
 How static analysis can prevent defects and
improve security
Parasoft Copyright © 2015 55
Internet of Things Vulnerabilities
Parasoft Copyright © 2015 66
One weak spot is all it takes
Parasoft Copyright © 2015 77
Poll 1
 Is software security the same as application
security?
 Yes
 No
 That’s a silly question
Parasoft Copyright © 2015 88
Software Security Defined
 Software security is the idea of engineering
software so that it continues to function
correctly under malicious attack.
 Software security is about building secure
software: designing software to be secure,
making sure that software is secure, and
educating software developers, architects and
users about how to build secure things.
(Gary McGraw, Cigital)
https://buildsecurityin.us-cert.gov/resources/building-security-in/software-security
Parasoft Copyright © 2015 99
Application Security Defined
 Put succinctly, application security is based
primarily on finding and fixing known security
problems after they’ve been exploited in
fielded systems. Software security… identifies
and expunges problems in the software itself.
 Although the notion of protecting software is
an important one, it’s just plain easier to
protect something that is defect-free than
something riddled with vulnerabilities.
(Gary McGraw, Cigital)
Parasoft Copyright © 2015 1010
SEI Research
 Predicting Software Assurance Using Quality
and Reliability Measures
 Security and Reliability are go hand-in-hand
 You can predict security based on defects
 Static Analysis is integral to improvement
 Most critical defects are coding mistakes
http://resources.sei.cmu.edu/library/asset-view.cfm?assetid=428589
Parasoft Copyright © 2015 1111
Security problems
 ½ are design flaws
 Missing authorization
 Improper encryption
 Improper password handling
 Allowing data to be tainted
 …
 ½ are code defects
 Buffer overflow
 Data leakage
 …
Parasoft Copyright © 2015 1212
Security Belongs to Quality
 If you have a quality problem,
you have a security problem.
 Modern systems are complex and defects
don’t always manifest when systems are used
the same as they are tested
 Number of possible conditions my be infinite
 Security and reliability have to be designed
and engineered in. You can’t test them in.
Parasoft Copyright © 2015 1313
Poll 2
 Our security group:
 Is part of DevOps
 Is part of QA
 Stands on it’s own
 Our what now?
Copyright XKCD http://xkcd.com/538/
Parasoft Copyright © 2015 1414
Quality Processes
Policy Management & Enforcement
Peer Code Review
Unit Testing / Continuous Regression
Runtime Error Detection
Hybrid Analysis
Static Code Analysis
Prevention over reaction
Reporting / Analytics
Parasoft Copyright © 2015 1515
Software Security Best Practices
Software Security, Gary McGraw, Copyright 2003 © Cigital
Reprinted from the March/April 2004 issue of IEEE Security & Privacy.
Parasoft Copyright © 2015 1616
Important Steps
 Train developers in secure development so
that they can prevent – or at least find and fix
– security problems
 Design and build your system with a
deliberate focus on quality and security
 Collect/measure defect data (quality AND
security) and use it to assess and improve
your development practices
Parasoft Copyright © 2015 1717
Poll 3
 Do bugs in open-source code represent
security vulnerabilities?
 Yes
 I’m not sure
 No
 I never thought about it
Copyright XKCD http://imgs.xkcd.com/comics/golden_hammer.png
Parasoft Copyright © 2015 1818
Bugs are vulnerabilities
 Heartbleed example
Parasoft Copyright © 2015 1919
HEARTBLEED BUSTED
MISRA C 2004 20.3
• “The validity of values passed to library functions shall be checked”
CWE-20
• “Improper input validation”
CWE-114
• “Process control”
CWE-125
• “Out-of-bounds read”
CWE-130
• “Improper handling of length parameter inconsistency”
Parasoft Copyright © 2015 2020
One “simple” quality problem
 Buffer Security Issues in CWE
 CWE 119 Improper Restriction of Operations
within the Bounds of a Memory Buffer
 CWE 120 Buffer Copy w/o Checking Size of Input
 CWE 121 Stack-based Buffer Overflow
 CWE 122 Heap-based Buffer Overflow
 CWE 125 Out-of-bounds Read
 CWE 131 Incorrect Calculation of Buffer Size
 CWE 680 Integer Overflow to Buffer Overflow
Parasoft Copyright © 2015 2121
Buffer Impact
 CWE Technical Impacts:
 Read memory;
 Modify memory;
 DoS:
 crash / exit / restart;
 resource consumption (CPU);
 resource consumption (memory)
 Execute unauthorized code or commands
Parasoft Copyright © 2015 2222
Are there more
 Run the same coding standard on the rest of
the file
Parasoft Copyright © 2015 2323
Risk management – OWASP style
• Likelihood of an Application Having
that VulnerabilityPrevalence
• Likelihood of an Attacker Discovering
that VulnerabilityDetectability
• Likelihood of An Attacker Successfully
Exploiting that VulnerabilityExploitability
• Typical Technical Impact if that
Vulnerability is Successfully ExploitedImpact
Parasoft Copyright © 2015 2424
Key Points
 Static code analysis eases the burden on QA
allowing for development work to continue in
parallel with manual testing efforts.
 Root cause analysis of defects can influence the
development policy in order to prevent making
the same mistake again.
Parasoft Copyright © 2015 2525
Prevention
Parasoft Copyright © 2015 2626
Flavor of the month
 The only way to find the Heartbleed bug with
today’s leading tools is to write custom rules
or overrides, which means that you have to
anticipate that this code is bad in the
first place. You’d be better off spending your
time reviewing or testing the code more
carefully instead.
Jim Bird – Building Real Software Blog
Parasoft Copyright © 2015 2727
Purpose of Coding Standards
 “Proven programming practices leading to safe,
reliable, testable, and maintainable code”
 “Address potentially unsafe C language features,
and provide programming rules to avoid those
pitfalls”
 “By providing “safer” alternatives to “unsafe”
facilities, known problems … are avoided. In
essence, programs are written in a “safer” subset
of a superset.”
Parasoft Copyright © 2015 2828
Standard Standards
Misra
ISO 26262
FDA
HIPPA
Section 508
OWASP Top 10
JSF
DISA STIG
CWE
Parasoft Copyright © 2015 2929
Simple Prevention Process – an example
Detect the error
•Load testing shows leaking connections to the database
Find the cause
•Open connections aren’t being closed, causing resource leaks
Locate the point in production that caused the error
•Developer has forgotten to close db connections upon client termination
Implement preventative process
•Use a coding standard to ensure each open connection is closed before
exit
Monitor the process
•Use static analysis to enforce the standard
Add regression test
•Add a test to see the problem was fixed and doesn’t return
Parasoft Copyright © 2015 3030
Preventative standards examples
Object-Oriented
•Avoid "public"/"protected"/package-private instance fields
•Do not override an instance "private" method
•Do not hide inherited fields
•…
Best Practices
•Avoid returning "handles" to internal data from const member functions.
•Declare at least one constructor to prevent the compiler from doing so.
•Declare reference parameters as const references whenever possible
•…
Unused Code
•Avoid unused local variables
•Avoid unused "private" fields
•…
Class Metrics
•Follow the limit for Cyclomatic Complexity (default<30)
•Follow the limit for number of “<type>" fields (private,etc.)
•Follow the limit on class hierarchy depth
•…
…
Parasoft Copyright © 2015 3131
Pattern-Based Static Analysis
What:
• Identify specific patterns in the code
Why:
• Find dangerous practices
• Prevents defects
• Ensure inclusion of required items
• Security
• Authentication
• Encryption
Parasoft Copyright © 2015 3232
Data Flow Analysis
What:
• Simulate execution to find patterns
• Analyze paths
• Analyze data usage
Why:
• Find real bugs
• Find security vulnerabilities
Parasoft Copyright © 2015 3333
Penetration Testing
 Verify that security policy is working
 Tests from the outside in
 Variety of scenarios such as
 Parameter fuzzing
 SQL and Xpath injection
 Cross Site Scripting
 XML Bombs
 …
Parasoft Copyright © 2015 3434
IAST Defined
 IAST – Interactive Application Security Testing
 SAST – Static Application Security Testing
 DAST – Dynamic Application Security Testing
 IAST combines SAST and DAST techniques
 IAST Improves accuracy
 IAST determines which code is related to a
vulnerability found in testing
Parasoft Copyright © 2015 3535
Hybrid Security Analysis - IAST
 Penetration testing to automatically generate
and run penetration attack scenarios
 Runtime error detection to monitor the back-
end during test execution to determine
whether security is actually compromised
 Correlates each runtime error with the
functional test being run—allowing you to
trace each reported error to the specific use
case
Parasoft Copyright © 2015 3636
Conclusion
 Standards and static analysis applied properly
prevent errors
 Integrated results provides control,
measurement, and traceability
 Cost of solid prevention methodology is less
than the cost of dealing with bad software
Parasoft Copyright © 2015 3737
Coming up
June 2-4
•Device Developer
Conference
June
10-12
•QCon Conference
June
10-11
•Better Software
Conference West
http://www.parasoft.com/media/events
Parasoft Copyright © 2015 3838
Security Resources
CWE – Common Weakness Enumeration
• http://cwe.mitre.org
OWASP - Open Web Application Security Project
• http://www.owasp.org
PCI – Payment Card Industry Security Standards
• https://www.pcisecuritystandards.org
Hack.me – Community based security learning project
• https://hack.me
Build Security In – Collaborative security effort
• https://buildsecurityin.us-cert.gov
Parasoft Copyright © 2015 3939
 Web
 http://www.parasoft.com/jsp/resources
 Blog
 http://alm.parasoft.com
Social
 Facebook: https://www.facebook.com/parasoftcorporation
 Twitter: @Parasoft @MustRead4Dev @CodeCurmudgeon
 LinkedIn: http://www.linkedin.com/company/parasoft
 Google+ Community: Static Analysis for Fun and Profit

More Related Content

What's hot

[OPD 2019] AST Platform and the importance of multi-layered application secu...
[OPD 2019]  AST Platform and the importance of multi-layered application secu...[OPD 2019]  AST Platform and the importance of multi-layered application secu...
[OPD 2019] AST Platform and the importance of multi-layered application secu...
OWASP
 
Application Security at DevOps Speed and Portfolio Scale
Application Security at DevOps Speed and Portfolio ScaleApplication Security at DevOps Speed and Portfolio Scale
Application Security at DevOps Speed and Portfolio Scale
Jeff Williams
 
Automation of Security scanning easy or cheese
Automation of Security scanning easy or cheeseAutomation of Security scanning easy or cheese
Automation of Security scanning easy or cheese
Katherine Golovinova
 
Automation of Security scanning easy or cheese?
Automation of Security scanning easy or cheese?Automation of Security scanning easy or cheese?
Automation of Security scanning easy or cheese?
Dmitriy Gumeniuk
 
Static Application Security Testing Strategies for Automation and Continuous ...
Static Application Security Testing Strategies for Automation and Continuous ...Static Application Security Testing Strategies for Automation and Continuous ...
Static Application Security Testing Strategies for Automation and Continuous ...
Kevin Fealey
 
Agnitio: its static analysis, but not as we know it
Agnitio: its static analysis, but not as we know itAgnitio: its static analysis, but not as we know it
Agnitio: its static analysis, but not as we know it
Security BSides London
 
8 Patterns For Continuous Code Security by Veracode CTO Chris Wysopal
8 Patterns For Continuous Code Security by Veracode CTO Chris Wysopal8 Patterns For Continuous Code Security by Veracode CTO Chris Wysopal
8 Patterns For Continuous Code Security by Veracode CTO Chris Wysopal
Threat Stack
 
Dev seccon london 2016 intelliment security
Dev seccon london 2016   intelliment securityDev seccon london 2016   intelliment security
Dev seccon london 2016 intelliment security
DevSecCon
 
Making the Strategic Shift to Open Source at Fujitsu Network Communication
Making the Strategic Shift to Open Source at Fujitsu Network CommunicationMaking the Strategic Shift to Open Source at Fujitsu Network Communication
Making the Strategic Shift to Open Source at Fujitsu Network Communication
Black Duck by Synopsys
 
Owasp top 10 2017 (en)
Owasp top 10 2017 (en)Owasp top 10 2017 (en)
Owasp top 10 2017 (en)
PrashantDhakol
 
Innovating Faster with Continuous Application Security
Innovating Faster with Continuous Application Security Innovating Faster with Continuous Application Security
Innovating Faster with Continuous Application Security
Jeff Williams
 
Devops security-An Insight into Secure-SDLC
Devops security-An Insight into Secure-SDLCDevops security-An Insight into Secure-SDLC
Devops security-An Insight into Secure-SDLC
Suman Sourav
 
Software Security Assurance for DevOps
Software Security Assurance for DevOpsSoftware Security Assurance for DevOps
Software Security Assurance for DevOps
Black Duck by Synopsys
 
Dynamic Security Analysis & Static Security Analysis for Android Apps.
Dynamic Security Analysis & Static Security Analysis for Android Apps.Dynamic Security Analysis & Static Security Analysis for Android Apps.
Dynamic Security Analysis & Static Security Analysis for Android Apps.
VodqaBLR
 
Aliens in Your Apps! Are You Using Components With Known Vulnerabilities?
Aliens in Your Apps! Are You Using Components With Known Vulnerabilities?Aliens in Your Apps! Are You Using Components With Known Vulnerabilities?
Aliens in Your Apps! Are You Using Components With Known Vulnerabilities?
Sonatype
 
Continuous and Visible Security Testing with BDD-Security
Continuous and Visible Security Testing with BDD-SecurityContinuous and Visible Security Testing with BDD-Security
Continuous and Visible Security Testing with BDD-Security
Stephen de Vries
 
Static Analysis For Security and DevOps Happiness w/ Justin Collins
Static Analysis For Security and DevOps Happiness w/ Justin CollinsStatic Analysis For Security and DevOps Happiness w/ Justin Collins
Static Analysis For Security and DevOps Happiness w/ Justin Collins
Sonatype
 
FLIGHT WEST 2018 Presentation - Continuous Monitoring of Open Source Componen...
FLIGHT WEST 2018 Presentation - Continuous Monitoring of Open Source Componen...FLIGHT WEST 2018 Presentation - Continuous Monitoring of Open Source Componen...
FLIGHT WEST 2018 Presentation - Continuous Monitoring of Open Source Componen...
Black Duck by Synopsys
 
FLIGHT WEST 2018 Presentation - Integrating Security into Your Development an...
FLIGHT WEST 2018 Presentation - Integrating Security into Your Development an...FLIGHT WEST 2018 Presentation - Integrating Security into Your Development an...
FLIGHT WEST 2018 Presentation - Integrating Security into Your Development an...
Black Duck by Synopsys
 
Software Composition Analysis Deep Dive
Software Composition Analysis Deep DiveSoftware Composition Analysis Deep Dive
Software Composition Analysis Deep Dive
Ulisses Albuquerque
 

What's hot (20)

[OPD 2019] AST Platform and the importance of multi-layered application secu...
[OPD 2019]  AST Platform and the importance of multi-layered application secu...[OPD 2019]  AST Platform and the importance of multi-layered application secu...
[OPD 2019] AST Platform and the importance of multi-layered application secu...
 
Application Security at DevOps Speed and Portfolio Scale
Application Security at DevOps Speed and Portfolio ScaleApplication Security at DevOps Speed and Portfolio Scale
Application Security at DevOps Speed and Portfolio Scale
 
Automation of Security scanning easy or cheese
Automation of Security scanning easy or cheeseAutomation of Security scanning easy or cheese
Automation of Security scanning easy or cheese
 
Automation of Security scanning easy or cheese?
Automation of Security scanning easy or cheese?Automation of Security scanning easy or cheese?
Automation of Security scanning easy or cheese?
 
Static Application Security Testing Strategies for Automation and Continuous ...
Static Application Security Testing Strategies for Automation and Continuous ...Static Application Security Testing Strategies for Automation and Continuous ...
Static Application Security Testing Strategies for Automation and Continuous ...
 
Agnitio: its static analysis, but not as we know it
Agnitio: its static analysis, but not as we know itAgnitio: its static analysis, but not as we know it
Agnitio: its static analysis, but not as we know it
 
8 Patterns For Continuous Code Security by Veracode CTO Chris Wysopal
8 Patterns For Continuous Code Security by Veracode CTO Chris Wysopal8 Patterns For Continuous Code Security by Veracode CTO Chris Wysopal
8 Patterns For Continuous Code Security by Veracode CTO Chris Wysopal
 
Dev seccon london 2016 intelliment security
Dev seccon london 2016   intelliment securityDev seccon london 2016   intelliment security
Dev seccon london 2016 intelliment security
 
Making the Strategic Shift to Open Source at Fujitsu Network Communication
Making the Strategic Shift to Open Source at Fujitsu Network CommunicationMaking the Strategic Shift to Open Source at Fujitsu Network Communication
Making the Strategic Shift to Open Source at Fujitsu Network Communication
 
Owasp top 10 2017 (en)
Owasp top 10 2017 (en)Owasp top 10 2017 (en)
Owasp top 10 2017 (en)
 
Innovating Faster with Continuous Application Security
Innovating Faster with Continuous Application Security Innovating Faster with Continuous Application Security
Innovating Faster with Continuous Application Security
 
Devops security-An Insight into Secure-SDLC
Devops security-An Insight into Secure-SDLCDevops security-An Insight into Secure-SDLC
Devops security-An Insight into Secure-SDLC
 
Software Security Assurance for DevOps
Software Security Assurance for DevOpsSoftware Security Assurance for DevOps
Software Security Assurance for DevOps
 
Dynamic Security Analysis & Static Security Analysis for Android Apps.
Dynamic Security Analysis & Static Security Analysis for Android Apps.Dynamic Security Analysis & Static Security Analysis for Android Apps.
Dynamic Security Analysis & Static Security Analysis for Android Apps.
 
Aliens in Your Apps! Are You Using Components With Known Vulnerabilities?
Aliens in Your Apps! Are You Using Components With Known Vulnerabilities?Aliens in Your Apps! Are You Using Components With Known Vulnerabilities?
Aliens in Your Apps! Are You Using Components With Known Vulnerabilities?
 
Continuous and Visible Security Testing with BDD-Security
Continuous and Visible Security Testing with BDD-SecurityContinuous and Visible Security Testing with BDD-Security
Continuous and Visible Security Testing with BDD-Security
 
Static Analysis For Security and DevOps Happiness w/ Justin Collins
Static Analysis For Security and DevOps Happiness w/ Justin CollinsStatic Analysis For Security and DevOps Happiness w/ Justin Collins
Static Analysis For Security and DevOps Happiness w/ Justin Collins
 
FLIGHT WEST 2018 Presentation - Continuous Monitoring of Open Source Componen...
FLIGHT WEST 2018 Presentation - Continuous Monitoring of Open Source Componen...FLIGHT WEST 2018 Presentation - Continuous Monitoring of Open Source Componen...
FLIGHT WEST 2018 Presentation - Continuous Monitoring of Open Source Componen...
 
FLIGHT WEST 2018 Presentation - Integrating Security into Your Development an...
FLIGHT WEST 2018 Presentation - Integrating Security into Your Development an...FLIGHT WEST 2018 Presentation - Integrating Security into Your Development an...
FLIGHT WEST 2018 Presentation - Integrating Security into Your Development an...
 
Software Composition Analysis Deep Dive
Software Composition Analysis Deep DiveSoftware Composition Analysis Deep Dive
Software Composition Analysis Deep Dive
 

Viewers also liked

Môi trường
Môi trườngMôi trường
Môi trường
Phạm Anh
 
Are Your Continuous Tests Too Fragile for Agile?
Are Your Continuous Tests Too Fragile for Agile?Are Your Continuous Tests Too Fragile for Agile?
Are Your Continuous Tests Too Fragile for Agile?
Parasoft
 
What does ghostwriting mean
What does ghostwriting meanWhat does ghostwriting mean
What does ghostwriting mean
Swati Sharma
 
How to donate eyes
How to donate eyesHow to donate eyes
How to donate eyes
Swati Sharma
 
Leveraging Static Analysis to Secure Software
Leveraging Static Analysis to Secure SoftwareLeveraging Static Analysis to Secure Software
Leveraging Static Analysis to Secure Software
Parasoft
 
Temporary jobs for freshers
Temporary jobs for freshersTemporary jobs for freshers
Temporary jobs for freshers
Swati Sharma
 
How to increase youtube traffic
How to increase youtube trafficHow to increase youtube traffic
How to increase youtube traffic
Swati Sharma
 

Viewers also liked (7)

Môi trường
Môi trườngMôi trường
Môi trường
 
Are Your Continuous Tests Too Fragile for Agile?
Are Your Continuous Tests Too Fragile for Agile?Are Your Continuous Tests Too Fragile for Agile?
Are Your Continuous Tests Too Fragile for Agile?
 
What does ghostwriting mean
What does ghostwriting meanWhat does ghostwriting mean
What does ghostwriting mean
 
How to donate eyes
How to donate eyesHow to donate eyes
How to donate eyes
 
Leveraging Static Analysis to Secure Software
Leveraging Static Analysis to Secure SoftwareLeveraging Static Analysis to Secure Software
Leveraging Static Analysis to Secure Software
 
Temporary jobs for freshers
Temporary jobs for freshersTemporary jobs for freshers
Temporary jobs for freshers
 
How to increase youtube traffic
How to increase youtube trafficHow to increase youtube traffic
How to increase youtube traffic
 

Similar to BUSTED! How to Find Security Bugs Fast!

Create code confidence for better application security
Create code confidence for better application securityCreate code confidence for better application security
Create code confidence for better application security
Rogue Wave Software
 
Static Analysis Security Testing for Dummies... and You
Static Analysis Security Testing for Dummies... and YouStatic Analysis Security Testing for Dummies... and You
Static Analysis Security Testing for Dummies... and You
Kevin Fealey
 
Jason Kent - AppSec Without Additional Tools
Jason Kent - AppSec Without Additional ToolsJason Kent - AppSec Without Additional Tools
Jason Kent - AppSec Without Additional Tools
centralohioissa
 
What Every Developer And Tester Should Know About Software Security
What Every Developer And Tester Should Know About Software SecurityWhat Every Developer And Tester Should Know About Software Security
What Every Developer And Tester Should Know About Software Security
Anne Oikarinen
 
Top 5 best practice for delivering secure in-vehicle software
Top 5 best practice for delivering secure in-vehicle softwareTop 5 best practice for delivering secure in-vehicle software
Top 5 best practice for delivering secure in-vehicle software
Rogue Wave Software
 
SCS DevSecOps Seminar - State of DevSecOps
SCS DevSecOps Seminar - State of DevSecOpsSCS DevSecOps Seminar - State of DevSecOps
SCS DevSecOps Seminar - State of DevSecOps
Stefan Streichsbier
 
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare ☁
 
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare ☁
 
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare ☁
 
Cyber security - It starts with the embedded system
Cyber security - It starts with the embedded systemCyber security - It starts with the embedded system
Cyber security - It starts with the embedded system
Rogue Wave Software
 
Create code confidence for better application security
Create code confidence for better application security Create code confidence for better application security
Create code confidence for better application security
Rogue Wave Software
 
Security engineering 101 when good design & security work together
Security engineering 101  when good design & security work togetherSecurity engineering 101  when good design & security work together
Security engineering 101 when good design & security work together
Wendy Knox Everette
 
Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...
Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...
Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...
Achim D. Brucker
 
The road towards better automotive cybersecurity
The road towards better automotive cybersecurityThe road towards better automotive cybersecurity
The road towards better automotive cybersecurity
Rogue Wave Software
 
Succeeding-Marriage-Cybersecurity-DevOps final
Succeeding-Marriage-Cybersecurity-DevOps finalSucceeding-Marriage-Cybersecurity-DevOps final
Succeeding-Marriage-Cybersecurity-DevOps finalrkadayam
 
Mike Spaulding - Building an Application Security Program
Mike Spaulding - Building an Application Security ProgramMike Spaulding - Building an Application Security Program
Mike Spaulding - Building an Application Security Program
centralohioissa
 
Building an AppSec Team Extended Cut
Building an AppSec Team Extended CutBuilding an AppSec Team Extended Cut
Building an AppSec Team Extended CutMike Spaulding
 
Application Security Testing for Software Engineers: An approach to build sof...
Application Security Testing for Software Engineers: An approach to build sof...Application Security Testing for Software Engineers: An approach to build sof...
Application Security Testing for Software Engineers: An approach to build sof...
Michael Hidalgo
 
Programming languages and techniques for today’s embedded andIoT world
Programming languages and techniques for today’s embedded andIoT worldProgramming languages and techniques for today’s embedded andIoT world
Programming languages and techniques for today’s embedded andIoT world
Rogue Wave Software
 
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Perforce
 

Similar to BUSTED! How to Find Security Bugs Fast! (20)

Create code confidence for better application security
Create code confidence for better application securityCreate code confidence for better application security
Create code confidence for better application security
 
Static Analysis Security Testing for Dummies... and You
Static Analysis Security Testing for Dummies... and YouStatic Analysis Security Testing for Dummies... and You
Static Analysis Security Testing for Dummies... and You
 
Jason Kent - AppSec Without Additional Tools
Jason Kent - AppSec Without Additional ToolsJason Kent - AppSec Without Additional Tools
Jason Kent - AppSec Without Additional Tools
 
What Every Developer And Tester Should Know About Software Security
What Every Developer And Tester Should Know About Software SecurityWhat Every Developer And Tester Should Know About Software Security
What Every Developer And Tester Should Know About Software Security
 
Top 5 best practice for delivering secure in-vehicle software
Top 5 best practice for delivering secure in-vehicle softwareTop 5 best practice for delivering secure in-vehicle software
Top 5 best practice for delivering secure in-vehicle software
 
SCS DevSecOps Seminar - State of DevSecOps
SCS DevSecOps Seminar - State of DevSecOpsSCS DevSecOps Seminar - State of DevSecOps
SCS DevSecOps Seminar - State of DevSecOps
 
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
 
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
 
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
 
Cyber security - It starts with the embedded system
Cyber security - It starts with the embedded systemCyber security - It starts with the embedded system
Cyber security - It starts with the embedded system
 
Create code confidence for better application security
Create code confidence for better application security Create code confidence for better application security
Create code confidence for better application security
 
Security engineering 101 when good design & security work together
Security engineering 101  when good design & security work togetherSecurity engineering 101  when good design & security work together
Security engineering 101 when good design & security work together
 
Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...
Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...
Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...
 
The road towards better automotive cybersecurity
The road towards better automotive cybersecurityThe road towards better automotive cybersecurity
The road towards better automotive cybersecurity
 
Succeeding-Marriage-Cybersecurity-DevOps final
Succeeding-Marriage-Cybersecurity-DevOps finalSucceeding-Marriage-Cybersecurity-DevOps final
Succeeding-Marriage-Cybersecurity-DevOps final
 
Mike Spaulding - Building an Application Security Program
Mike Spaulding - Building an Application Security ProgramMike Spaulding - Building an Application Security Program
Mike Spaulding - Building an Application Security Program
 
Building an AppSec Team Extended Cut
Building an AppSec Team Extended CutBuilding an AppSec Team Extended Cut
Building an AppSec Team Extended Cut
 
Application Security Testing for Software Engineers: An approach to build sof...
Application Security Testing for Software Engineers: An approach to build sof...Application Security Testing for Software Engineers: An approach to build sof...
Application Security Testing for Software Engineers: An approach to build sof...
 
Programming languages and techniques for today’s embedded andIoT world
Programming languages and techniques for today’s embedded andIoT worldProgramming languages and techniques for today’s embedded andIoT world
Programming languages and techniques for today’s embedded andIoT world
 
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
 

More from Parasoft

Better Software East 2016: Evolving Automated to Continuous
Better Software East 2016: Evolving Automated to ContinuousBetter Software East 2016: Evolving Automated to Continuous
Better Software East 2016: Evolving Automated to Continuous
Parasoft
 
Testing a Microservices Architecture
Testing a Microservices ArchitectureTesting a Microservices Architecture
Testing a Microservices Architecture
Parasoft
 
ABC's of Service Virtualization
ABC's of Service VirtualizationABC's of Service Virtualization
ABC's of Service Virtualization
Parasoft
 
The Legend of Software Hollow: Defeating the Headless Horseman of Faulty Appl...
The Legend of Software Hollow: Defeating the Headless Horseman of Faulty Appl...The Legend of Software Hollow: Defeating the Headless Horseman of Faulty Appl...
The Legend of Software Hollow: Defeating the Headless Horseman of Faulty Appl...
Parasoft
 
AppsSec In a DevOps World
AppsSec In a DevOps WorldAppsSec In a DevOps World
AppsSec In a DevOps World
Parasoft
 
Driving Risks Out of Embedded Automotive Software
Driving Risks Out of Embedded Automotive SoftwareDriving Risks Out of Embedded Automotive Software
Driving Risks Out of Embedded Automotive Software
Parasoft
 
Rx for FDA Software Compliance
Rx for FDA Software ComplianceRx for FDA Software Compliance
Rx for FDA Software Compliance
Parasoft
 
Software Safety and Security Through Standards
Software Safety and Security Through Standards Software Safety and Security Through Standards
Software Safety and Security Through Standards
Parasoft
 
No Devops Without Continuous Testing
No Devops Without Continuous TestingNo Devops Without Continuous Testing
No Devops Without Continuous Testing
Parasoft
 
Accelerate Agile Development with Service Virtualization - Czech Test
Accelerate Agile Development with Service Virtualization - Czech TestAccelerate Agile Development with Service Virtualization - Czech Test
Accelerate Agile Development with Service Virtualization - Czech Test
Parasoft
 
Evolving from Automated to Continous Testing for Agile and DevOps
Evolving from Automated to Continous Testing for Agile and DevOpsEvolving from Automated to Continous Testing for Agile and DevOps
Evolving from Automated to Continous Testing for Agile and DevOps
Parasoft
 
Deploy + Destroy Complete Test Environments
Deploy + Destroy Complete Test EnvironmentsDeploy + Destroy Complete Test Environments
Deploy + Destroy Complete Test Environments
Parasoft
 
MedicAlert API Testing Case Study
MedicAlert API Testing Case StudyMedicAlert API Testing Case Study
MedicAlert API Testing Case Study
Parasoft
 
Software Development Metrics You Can Count On
Software Development Metrics You Can Count On Software Development Metrics You Can Count On
Software Development Metrics You Can Count On
Parasoft
 
Accelerating Mobile Testing
Accelerating Mobile TestingAccelerating Mobile Testing
Accelerating Mobile Testing
Parasoft
 
C/C++test Qualification Kit for DO-178B/C Compliance
C/C++test Qualification Kit for DO-178B/C ComplianceC/C++test Qualification Kit for DO-178B/C Compliance
C/C++test Qualification Kit for DO-178B/C Compliance
Parasoft
 
Extreme Automation Enables DirecTV to ”Shift Left” API Testing
Extreme Automation Enables DirecTV to ”Shift Left” API TestingExtreme Automation Enables DirecTV to ”Shift Left” API Testing
Extreme Automation Enables DirecTV to ”Shift Left” API Testing
Parasoft
 
A Comparison of Three Bug-Finding Techniques and Their Relative Effectiveness
A Comparison of Three Bug-Finding Techniques and Their Relative EffectivenessA Comparison of Three Bug-Finding Techniques and Their Relative Effectiveness
A Comparison of Three Bug-Finding Techniques and Their Relative Effectiveness
Parasoft
 
How to Avoid Continuously Delivering Faulty Software
How to Avoid Continuously Delivering Faulty SoftwareHow to Avoid Continuously Delivering Faulty Software
How to Avoid Continuously Delivering Faulty Software
Parasoft
 

More from Parasoft (19)

Better Software East 2016: Evolving Automated to Continuous
Better Software East 2016: Evolving Automated to ContinuousBetter Software East 2016: Evolving Automated to Continuous
Better Software East 2016: Evolving Automated to Continuous
 
Testing a Microservices Architecture
Testing a Microservices ArchitectureTesting a Microservices Architecture
Testing a Microservices Architecture
 
ABC's of Service Virtualization
ABC's of Service VirtualizationABC's of Service Virtualization
ABC's of Service Virtualization
 
The Legend of Software Hollow: Defeating the Headless Horseman of Faulty Appl...
The Legend of Software Hollow: Defeating the Headless Horseman of Faulty Appl...The Legend of Software Hollow: Defeating the Headless Horseman of Faulty Appl...
The Legend of Software Hollow: Defeating the Headless Horseman of Faulty Appl...
 
AppsSec In a DevOps World
AppsSec In a DevOps WorldAppsSec In a DevOps World
AppsSec In a DevOps World
 
Driving Risks Out of Embedded Automotive Software
Driving Risks Out of Embedded Automotive SoftwareDriving Risks Out of Embedded Automotive Software
Driving Risks Out of Embedded Automotive Software
 
Rx for FDA Software Compliance
Rx for FDA Software ComplianceRx for FDA Software Compliance
Rx for FDA Software Compliance
 
Software Safety and Security Through Standards
Software Safety and Security Through Standards Software Safety and Security Through Standards
Software Safety and Security Through Standards
 
No Devops Without Continuous Testing
No Devops Without Continuous TestingNo Devops Without Continuous Testing
No Devops Without Continuous Testing
 
Accelerate Agile Development with Service Virtualization - Czech Test
Accelerate Agile Development with Service Virtualization - Czech TestAccelerate Agile Development with Service Virtualization - Czech Test
Accelerate Agile Development with Service Virtualization - Czech Test
 
Evolving from Automated to Continous Testing for Agile and DevOps
Evolving from Automated to Continous Testing for Agile and DevOpsEvolving from Automated to Continous Testing for Agile and DevOps
Evolving from Automated to Continous Testing for Agile and DevOps
 
Deploy + Destroy Complete Test Environments
Deploy + Destroy Complete Test EnvironmentsDeploy + Destroy Complete Test Environments
Deploy + Destroy Complete Test Environments
 
MedicAlert API Testing Case Study
MedicAlert API Testing Case StudyMedicAlert API Testing Case Study
MedicAlert API Testing Case Study
 
Software Development Metrics You Can Count On
Software Development Metrics You Can Count On Software Development Metrics You Can Count On
Software Development Metrics You Can Count On
 
Accelerating Mobile Testing
Accelerating Mobile TestingAccelerating Mobile Testing
Accelerating Mobile Testing
 
C/C++test Qualification Kit for DO-178B/C Compliance
C/C++test Qualification Kit for DO-178B/C ComplianceC/C++test Qualification Kit for DO-178B/C Compliance
C/C++test Qualification Kit for DO-178B/C Compliance
 
Extreme Automation Enables DirecTV to ”Shift Left” API Testing
Extreme Automation Enables DirecTV to ”Shift Left” API TestingExtreme Automation Enables DirecTV to ”Shift Left” API Testing
Extreme Automation Enables DirecTV to ”Shift Left” API Testing
 
A Comparison of Three Bug-Finding Techniques and Their Relative Effectiveness
A Comparison of Three Bug-Finding Techniques and Their Relative EffectivenessA Comparison of Three Bug-Finding Techniques and Their Relative Effectiveness
A Comparison of Three Bug-Finding Techniques and Their Relative Effectiveness
 
How to Avoid Continuously Delivering Faulty Software
How to Avoid Continuously Delivering Faulty SoftwareHow to Avoid Continuously Delivering Faulty Software
How to Avoid Continuously Delivering Faulty Software
 

Recently uploaded

Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Globus
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
Srikant77
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
kalichargn70th171
 

Recently uploaded (20)

Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
 

BUSTED! How to Find Security Bugs Fast!

  • 1. Parasoft Copyright © 2015 1 2015-06-24 Busting Software Bugs to Boost Application Security Arthur “Code Curmudgeon” Hicken May 2015
  • 2. Parasoft Copyright © 2015 22 Open and hide your control panel Join audio: • Choose “Mic & Speakers” to use VoIP • Choose “Telephone” and dial using the information provided Submit questions and comments via the Questions panel Note: Today’s presentation is being recorded and will be provided within 48 hours. Your Participation GoToWebinar Housekeeping
  • 3. Parasoft Copyright © 2015 33 Your Presenter Arthur Hicken has been involved in automating various practices at Parasoft for over 20 years. He has worked on projects including database development, the software development lifecycle, web publishing and monitoring, and integration with legacy systems. Arthur has worked with IT departments in companies such as Cisco, Vanguard, and Motorola to help improve their software development practices.
  • 4. Parasoft Copyright © 2015 44 Agenda  How security processes are like quality processes  How software bugs are security vulnerabilities  How static analysis can prevent defects and improve security
  • 5. Parasoft Copyright © 2015 55 Internet of Things Vulnerabilities
  • 6. Parasoft Copyright © 2015 66 One weak spot is all it takes
  • 7. Parasoft Copyright © 2015 77 Poll 1  Is software security the same as application security?  Yes  No  That’s a silly question
  • 8. Parasoft Copyright © 2015 88 Software Security Defined  Software security is the idea of engineering software so that it continues to function correctly under malicious attack.  Software security is about building secure software: designing software to be secure, making sure that software is secure, and educating software developers, architects and users about how to build secure things. (Gary McGraw, Cigital) https://buildsecurityin.us-cert.gov/resources/building-security-in/software-security
  • 9. Parasoft Copyright © 2015 99 Application Security Defined  Put succinctly, application security is based primarily on finding and fixing known security problems after they’ve been exploited in fielded systems. Software security… identifies and expunges problems in the software itself.  Although the notion of protecting software is an important one, it’s just plain easier to protect something that is defect-free than something riddled with vulnerabilities. (Gary McGraw, Cigital)
  • 10. Parasoft Copyright © 2015 1010 SEI Research  Predicting Software Assurance Using Quality and Reliability Measures  Security and Reliability are go hand-in-hand  You can predict security based on defects  Static Analysis is integral to improvement  Most critical defects are coding mistakes http://resources.sei.cmu.edu/library/asset-view.cfm?assetid=428589
  • 11. Parasoft Copyright © 2015 1111 Security problems  ½ are design flaws  Missing authorization  Improper encryption  Improper password handling  Allowing data to be tainted  …  ½ are code defects  Buffer overflow  Data leakage  …
  • 12. Parasoft Copyright © 2015 1212 Security Belongs to Quality  If you have a quality problem, you have a security problem.  Modern systems are complex and defects don’t always manifest when systems are used the same as they are tested  Number of possible conditions my be infinite  Security and reliability have to be designed and engineered in. You can’t test them in.
  • 13. Parasoft Copyright © 2015 1313 Poll 2  Our security group:  Is part of DevOps  Is part of QA  Stands on it’s own  Our what now? Copyright XKCD http://xkcd.com/538/
  • 14. Parasoft Copyright © 2015 1414 Quality Processes Policy Management & Enforcement Peer Code Review Unit Testing / Continuous Regression Runtime Error Detection Hybrid Analysis Static Code Analysis Prevention over reaction Reporting / Analytics
  • 15. Parasoft Copyright © 2015 1515 Software Security Best Practices Software Security, Gary McGraw, Copyright 2003 © Cigital Reprinted from the March/April 2004 issue of IEEE Security & Privacy.
  • 16. Parasoft Copyright © 2015 1616 Important Steps  Train developers in secure development so that they can prevent – or at least find and fix – security problems  Design and build your system with a deliberate focus on quality and security  Collect/measure defect data (quality AND security) and use it to assess and improve your development practices
  • 17. Parasoft Copyright © 2015 1717 Poll 3  Do bugs in open-source code represent security vulnerabilities?  Yes  I’m not sure  No  I never thought about it Copyright XKCD http://imgs.xkcd.com/comics/golden_hammer.png
  • 18. Parasoft Copyright © 2015 1818 Bugs are vulnerabilities  Heartbleed example
  • 19. Parasoft Copyright © 2015 1919 HEARTBLEED BUSTED MISRA C 2004 20.3 • “The validity of values passed to library functions shall be checked” CWE-20 • “Improper input validation” CWE-114 • “Process control” CWE-125 • “Out-of-bounds read” CWE-130 • “Improper handling of length parameter inconsistency”
  • 20. Parasoft Copyright © 2015 2020 One “simple” quality problem  Buffer Security Issues in CWE  CWE 119 Improper Restriction of Operations within the Bounds of a Memory Buffer  CWE 120 Buffer Copy w/o Checking Size of Input  CWE 121 Stack-based Buffer Overflow  CWE 122 Heap-based Buffer Overflow  CWE 125 Out-of-bounds Read  CWE 131 Incorrect Calculation of Buffer Size  CWE 680 Integer Overflow to Buffer Overflow
  • 21. Parasoft Copyright © 2015 2121 Buffer Impact  CWE Technical Impacts:  Read memory;  Modify memory;  DoS:  crash / exit / restart;  resource consumption (CPU);  resource consumption (memory)  Execute unauthorized code or commands
  • 22. Parasoft Copyright © 2015 2222 Are there more  Run the same coding standard on the rest of the file
  • 23. Parasoft Copyright © 2015 2323 Risk management – OWASP style • Likelihood of an Application Having that VulnerabilityPrevalence • Likelihood of an Attacker Discovering that VulnerabilityDetectability • Likelihood of An Attacker Successfully Exploiting that VulnerabilityExploitability • Typical Technical Impact if that Vulnerability is Successfully ExploitedImpact
  • 24. Parasoft Copyright © 2015 2424 Key Points  Static code analysis eases the burden on QA allowing for development work to continue in parallel with manual testing efforts.  Root cause analysis of defects can influence the development policy in order to prevent making the same mistake again.
  • 25. Parasoft Copyright © 2015 2525 Prevention
  • 26. Parasoft Copyright © 2015 2626 Flavor of the month  The only way to find the Heartbleed bug with today’s leading tools is to write custom rules or overrides, which means that you have to anticipate that this code is bad in the first place. You’d be better off spending your time reviewing or testing the code more carefully instead. Jim Bird – Building Real Software Blog
  • 27. Parasoft Copyright © 2015 2727 Purpose of Coding Standards  “Proven programming practices leading to safe, reliable, testable, and maintainable code”  “Address potentially unsafe C language features, and provide programming rules to avoid those pitfalls”  “By providing “safer” alternatives to “unsafe” facilities, known problems … are avoided. In essence, programs are written in a “safer” subset of a superset.”
  • 28. Parasoft Copyright © 2015 2828 Standard Standards Misra ISO 26262 FDA HIPPA Section 508 OWASP Top 10 JSF DISA STIG CWE
  • 29. Parasoft Copyright © 2015 2929 Simple Prevention Process – an example Detect the error •Load testing shows leaking connections to the database Find the cause •Open connections aren’t being closed, causing resource leaks Locate the point in production that caused the error •Developer has forgotten to close db connections upon client termination Implement preventative process •Use a coding standard to ensure each open connection is closed before exit Monitor the process •Use static analysis to enforce the standard Add regression test •Add a test to see the problem was fixed and doesn’t return
  • 30. Parasoft Copyright © 2015 3030 Preventative standards examples Object-Oriented •Avoid "public"/"protected"/package-private instance fields •Do not override an instance "private" method •Do not hide inherited fields •… Best Practices •Avoid returning "handles" to internal data from const member functions. •Declare at least one constructor to prevent the compiler from doing so. •Declare reference parameters as const references whenever possible •… Unused Code •Avoid unused local variables •Avoid unused "private" fields •… Class Metrics •Follow the limit for Cyclomatic Complexity (default<30) •Follow the limit for number of “<type>" fields (private,etc.) •Follow the limit on class hierarchy depth •… …
  • 31. Parasoft Copyright © 2015 3131 Pattern-Based Static Analysis What: • Identify specific patterns in the code Why: • Find dangerous practices • Prevents defects • Ensure inclusion of required items • Security • Authentication • Encryption
  • 32. Parasoft Copyright © 2015 3232 Data Flow Analysis What: • Simulate execution to find patterns • Analyze paths • Analyze data usage Why: • Find real bugs • Find security vulnerabilities
  • 33. Parasoft Copyright © 2015 3333 Penetration Testing  Verify that security policy is working  Tests from the outside in  Variety of scenarios such as  Parameter fuzzing  SQL and Xpath injection  Cross Site Scripting  XML Bombs  …
  • 34. Parasoft Copyright © 2015 3434 IAST Defined  IAST – Interactive Application Security Testing  SAST – Static Application Security Testing  DAST – Dynamic Application Security Testing  IAST combines SAST and DAST techniques  IAST Improves accuracy  IAST determines which code is related to a vulnerability found in testing
  • 35. Parasoft Copyright © 2015 3535 Hybrid Security Analysis - IAST  Penetration testing to automatically generate and run penetration attack scenarios  Runtime error detection to monitor the back- end during test execution to determine whether security is actually compromised  Correlates each runtime error with the functional test being run—allowing you to trace each reported error to the specific use case
  • 36. Parasoft Copyright © 2015 3636 Conclusion  Standards and static analysis applied properly prevent errors  Integrated results provides control, measurement, and traceability  Cost of solid prevention methodology is less than the cost of dealing with bad software
  • 37. Parasoft Copyright © 2015 3737 Coming up June 2-4 •Device Developer Conference June 10-12 •QCon Conference June 10-11 •Better Software Conference West http://www.parasoft.com/media/events
  • 38. Parasoft Copyright © 2015 3838 Security Resources CWE – Common Weakness Enumeration • http://cwe.mitre.org OWASP - Open Web Application Security Project • http://www.owasp.org PCI – Payment Card Industry Security Standards • https://www.pcisecuritystandards.org Hack.me – Community based security learning project • https://hack.me Build Security In – Collaborative security effort • https://buildsecurityin.us-cert.gov
  • 39. Parasoft Copyright © 2015 3939  Web  http://www.parasoft.com/jsp/resources  Blog  http://alm.parasoft.com Social  Facebook: https://www.facebook.com/parasoftcorporation  Twitter: @Parasoft @MustRead4Dev @CodeCurmudgeon  LinkedIn: http://www.linkedin.com/company/parasoft  Google+ Community: Static Analysis for Fun and Profit