SlideShare a Scribd company logo
Static Analysis for Security
JUNE 2016
FABDULWAHAB.COM
Security is Requirement
 Testing code against common security risks to ensure the quality before
release(before attacker access)
 Help in implementation best practices and prioritize the risks
 Also called white box testing or source code review
Software developers are the first and
best line of defense for the security
of their code
Types
 Static
 Analyze the code before go to run
 Automated by tools (also can analyze the binary code or (bytecode) but with limitations)
 Also include code review by senior developers and professionals
 Find risks like business logic , exception handling and NULLL issues
 Dynamic
 Analyze the application behavior during the run phase
 Automated by tools
 Used when no code access or knowledge
 Find risks like XSS , Injection or configuration issues
 Better to go with both types (defense in depth)
Development Process
 Study past security errors and prevent them from happening in the future
 All portions of the program must be secure
 Still need best practices , training and skills
 Whitelist vs. blacklist validation
 Good design and good implementation need
each other
 Manual Code review is very important
 Including configuration analysis
Tools
 Information security department focus on dynamic analysis tools for pen testing
 Development department focus on static analysis and sometime also for dynamic
analysis tools
 In most cases ,Static analysis tools integrated with IDE
 Tools has rules to validate the code like searching for user inputs like Request[] or
searching for injection like SQL Command in code …
 Remember , running tools doesn’t make application secure
false negatives are more troublesome
than false positives
Tools
 Static analysis tools categories
 Type checking
 Style checking (whitespace , naming , program structure …)
 Program understanding (find all uses of this methods or variable …)
 Program verification and Property checking (check against rules and specifications)
 Bug finding
 Security review
Tools
 Commercial/free
 Open source
 Support Development Standards and Compliance (PCI , ISO …)
 Based on programming Languages
 Examples
 https://sourceforge.net/projects/visualcodegrepp/
 https://sourceforge.net/projects/agnitiotool/
 https://www.microsoft.com/en-us/download/details.aspx?id=6544
 ttps://www.microsoft.com/en-us/download/details.aspx?id=19968
 http://www8.hp.com/us/en/software-solutions/application-security/index.html
 https://www.checkmarx.com/
 https://samate.nist.gov/index.php/Source_Code_Security_Analyzers.html (list)
Demo 01 – Visual Studio Code Analysis
 Identify potential issues based on Microsoft’s rules and best practices
 http://nugetmusthaves.com/Tag/CodeAnalysis
 http://fxcopaspnetsecurity.codeplex.com/
 https://blogs.msdn.microsoft.com/hkamel/2013/10/24/visual-studio-2013-static-
code-analysis-in-depth-what-when-and-how/
Demo 02 – WCSA
 To analyze the web.config
 https://code.google.com/archive/p/wcsa/downloads
References
 https://www.owasp.org/index.php/Static_Code_Analysis
 Secure Programming with Static Analysis book , By Brian and Jacob

More Related Content

PPTX
Quality in Cyber security Awareness
PDF
A5-Security misconfiguration-OWASP 2013
PPTX
Security testing operation vijay
PPTX
A5: Security Misconfiguration
PPTX
ASP.NET security vulnerabilities
PDF
The Complete Web Application Security Testing Checklist
PPTX
Web Application Security 101
PDF
Web Application Security 101
Quality in Cyber security Awareness
A5-Security misconfiguration-OWASP 2013
Security testing operation vijay
A5: Security Misconfiguration
ASP.NET security vulnerabilities
The Complete Web Application Security Testing Checklist
Web Application Security 101
Web Application Security 101

What's hot (20)

PPTX
Uniface Web Application Security
PPTX
Microsoft Fakes, Unit Testing the (almost) Untestable Code
PPTX
Security Testing
PPTX
Application Security Tools
PDF
Testing Web Application Security
PDF
5 Important Secure Coding Practices
ODP
OWASP Secure Coding
PDF
Threat Detection using Analytics & Machine Learning
PPTX
Security misconfiguration
PPTX
Web application security
PDF
OWASP Secure Coding Practices - Quick Reference Guide
PDF
[Wroclaw #6] Introduction to desktop browser add-ons
PPTX
Application Security-Understanding The Horizon
PPT
Get Ready for Web Application Security Testing
PPTX
3. backup file artifacts - mazin ahmed
PPT
Step by step guide for web application security testing
PPTX
Owasp top10salesforce
PPTX
Security Testing for Web Application
PPT
Owasp Top 10 - Owasp Pune Chapter - January 2008
PPTX
Owasp first5 presentation
Uniface Web Application Security
Microsoft Fakes, Unit Testing the (almost) Untestable Code
Security Testing
Application Security Tools
Testing Web Application Security
5 Important Secure Coding Practices
OWASP Secure Coding
Threat Detection using Analytics & Machine Learning
Security misconfiguration
Web application security
OWASP Secure Coding Practices - Quick Reference Guide
[Wroclaw #6] Introduction to desktop browser add-ons
Application Security-Understanding The Horizon
Get Ready for Web Application Security Testing
3. backup file artifacts - mazin ahmed
Step by step guide for web application security testing
Owasp top10salesforce
Security Testing for Web Application
Owasp Top 10 - Owasp Pune Chapter - January 2008
Owasp first5 presentation
Ad

Viewers also liked (20)

PDF
Null 11 june_Malware CNC: Advance Evasion techniques_by Avkash k and dhawal shah
PDF
Introduction to burp suite
PPTX
OWASP Zed Attack Proxy
PPTX
Webinar: Ransomware - Five Reasons You’re Not As Protected As You Think
PDF
Using Massively Distributed Malware in APT-Style Attacks
PDF
Base64 Encoding
KEY
Scénarios d'exploitation Metasploit - FR : Scénario 1
ODP
2600 av evasion_deuce
PDF
The old is new, again. CVE-2011-2461 is back!
PPT
Pentesting Using Burp Suite
PDF
Attaque metasploite
KEY
Scénarios d'exploitation Metasploit - FR : Scénario 3
PPTX
Fuzzing | Null OWASP Mumbai | 2016 June
PPTX
Burp Suite Starter
PDF
14 Jan17- Nullmeets -Blockchain concept decoded by Ninad Sarang
PDF
Null Mumbai 14th May Lesser Known Webapp attacks by Ninad Sarang
PDF
An EyeWitness View into your Network
ODP
Introduction to ethereum_public
PPTX
Pen Testing, Red Teaming, and More
PDF
Offensive OSINT
Null 11 june_Malware CNC: Advance Evasion techniques_by Avkash k and dhawal shah
Introduction to burp suite
OWASP Zed Attack Proxy
Webinar: Ransomware - Five Reasons You’re Not As Protected As You Think
Using Massively Distributed Malware in APT-Style Attacks
Base64 Encoding
Scénarios d'exploitation Metasploit - FR : Scénario 1
2600 av evasion_deuce
The old is new, again. CVE-2011-2461 is back!
Pentesting Using Burp Suite
Attaque metasploite
Scénarios d'exploitation Metasploit - FR : Scénario 3
Fuzzing | Null OWASP Mumbai | 2016 June
Burp Suite Starter
14 Jan17- Nullmeets -Blockchain concept decoded by Ninad Sarang
Null Mumbai 14th May Lesser Known Webapp attacks by Ninad Sarang
An EyeWitness View into your Network
Introduction to ethereum_public
Pen Testing, Red Teaming, and More
Offensive OSINT
Ad

Similar to Static analysis for security (20)

PDF
WhiteList Checker: An Eclipse Plugin to Improve Application Security
PDF
Static code analysis
PPT
Ensuring code quality
PDF
Using Third Party Components for Building an Application Might be More Danger...
PPT
Software Security Engineering
PDF
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
PDF
All You Need to Know About Application Security Testing.pdf
PDF
OWASP Secure Coding Quick Reference Guide
PPTX
Secure SDLC in mobile software development.
DOCX
Aardwolf Security's Expert Code Review Services
PPTX
What are DevSecOps Tools and Why Do You Need Them?
PPTX
What are DevSecOps Tools and Why Do You Need Them.pptx
PPT
Chapter 2- Software Security FULL SLIDES.ppt
PPT
Software security engineering
PPT
Software security engineering
PDF
10 Tips to Keep Your Software a Step Ahead of the Hackers
PPT
Software Security Initiatives
PDF
4 approaches to integrate dev secops in development cycle
PDF
Arved sandstrom - the rotwithin - atlseccon2011
PPT
4_25655_SE731_2020_1__2_1_Lecture 1 - Course Outline and Secure SDLC.ppt
WhiteList Checker: An Eclipse Plugin to Improve Application Security
Static code analysis
Ensuring code quality
Using Third Party Components for Building an Application Might be More Danger...
Software Security Engineering
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
All You Need to Know About Application Security Testing.pdf
OWASP Secure Coding Quick Reference Guide
Secure SDLC in mobile software development.
Aardwolf Security's Expert Code Review Services
What are DevSecOps Tools and Why Do You Need Them?
What are DevSecOps Tools and Why Do You Need Them.pptx
Chapter 2- Software Security FULL SLIDES.ppt
Software security engineering
Software security engineering
10 Tips to Keep Your Software a Step Ahead of the Hackers
Software Security Initiatives
4 approaches to integrate dev secops in development cycle
Arved sandstrom - the rotwithin - atlseccon2011
4_25655_SE731_2020_1__2_1_Lecture 1 - Course Outline and Secure SDLC.ppt

Recently uploaded (20)

PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPT
Teaching material agriculture food technology
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Machine learning based COVID-19 study performance prediction
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
Cloud computing and distributed systems.
PDF
NewMind AI Monthly Chronicles - July 2025
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Encapsulation_ Review paper, used for researhc scholars
Understanding_Digital_Forensics_Presentation.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
20250228 LYD VKU AI Blended-Learning.pptx
Chapter 3 Spatial Domain Image Processing.pdf
Teaching material agriculture food technology
Per capita expenditure prediction using model stacking based on satellite ima...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Machine learning based COVID-19 study performance prediction
Unlocking AI with Model Context Protocol (MCP)
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
The AUB Centre for AI in Media Proposal.docx
Cloud computing and distributed systems.
NewMind AI Monthly Chronicles - July 2025

Static analysis for security

  • 1. Static Analysis for Security JUNE 2016 FABDULWAHAB.COM
  • 2. Security is Requirement  Testing code against common security risks to ensure the quality before release(before attacker access)  Help in implementation best practices and prioritize the risks  Also called white box testing or source code review
  • 3. Software developers are the first and best line of defense for the security of their code
  • 4. Types  Static  Analyze the code before go to run  Automated by tools (also can analyze the binary code or (bytecode) but with limitations)  Also include code review by senior developers and professionals  Find risks like business logic , exception handling and NULLL issues  Dynamic  Analyze the application behavior during the run phase  Automated by tools  Used when no code access or knowledge  Find risks like XSS , Injection or configuration issues  Better to go with both types (defense in depth)
  • 5. Development Process  Study past security errors and prevent them from happening in the future  All portions of the program must be secure  Still need best practices , training and skills  Whitelist vs. blacklist validation  Good design and good implementation need each other  Manual Code review is very important  Including configuration analysis
  • 6. Tools  Information security department focus on dynamic analysis tools for pen testing  Development department focus on static analysis and sometime also for dynamic analysis tools  In most cases ,Static analysis tools integrated with IDE  Tools has rules to validate the code like searching for user inputs like Request[] or searching for injection like SQL Command in code …  Remember , running tools doesn’t make application secure
  • 7. false negatives are more troublesome than false positives
  • 8. Tools  Static analysis tools categories  Type checking  Style checking (whitespace , naming , program structure …)  Program understanding (find all uses of this methods or variable …)  Program verification and Property checking (check against rules and specifications)  Bug finding  Security review
  • 9. Tools  Commercial/free  Open source  Support Development Standards and Compliance (PCI , ISO …)  Based on programming Languages  Examples  https://sourceforge.net/projects/visualcodegrepp/  https://sourceforge.net/projects/agnitiotool/  https://www.microsoft.com/en-us/download/details.aspx?id=6544  ttps://www.microsoft.com/en-us/download/details.aspx?id=19968  http://www8.hp.com/us/en/software-solutions/application-security/index.html  https://www.checkmarx.com/  https://samate.nist.gov/index.php/Source_Code_Security_Analyzers.html (list)
  • 10. Demo 01 – Visual Studio Code Analysis  Identify potential issues based on Microsoft’s rules and best practices  http://nugetmusthaves.com/Tag/CodeAnalysis  http://fxcopaspnetsecurity.codeplex.com/  https://blogs.msdn.microsoft.com/hkamel/2013/10/24/visual-studio-2013-static- code-analysis-in-depth-what-when-and-how/
  • 11. Demo 02 – WCSA  To analyze the web.config  https://code.google.com/archive/p/wcsa/downloads