SlideShare a Scribd company logo
MILAN 20/21.11.2015
Continuous Security: ZAP your security
issues now!
Carlo Bonamico & Gabriele Guasco
carlo.bonamico@nispro.it gabriele.guasco@nispro.it
@carlobonamico @gabrieleguasco
NIS s.r.l.
http://www.nispro.it
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
define Security
requirements at
the start
do some security
tests at the end
write your code …
faster than light
What’s in this Security Sandwich?
https://www.thoughtworks.com/radar/techniques/security-sandwich
Application Security
Ensuring Application
guarantees
● Confidentiality
● Integrity
● Availability
● Accountability
of the Information
it processes
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
why this sandwich
is not so good?
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Usually it’ just half-a-sandwich
no security design
no security tests
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Does not keep up with Agile processes
where new Design choices, and even Requirements,
emerge through the project lifespan
and this includes their impact on Security
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
When problems are discovered...
there is no more time ...or no more $$$
bug fixing starts after final PenTest
near planned release date
# of vulnerabilities # of vulnerabilities
theory sad reality
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
The more time passes
the more cost-to-fix increases
● because the change
implies revising
components writtens
months before
● possibly by developers
no more with the team
● because the complexity
of the project has
increased
● steep cost / delay
increase after release
to production
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
With the security sandwich it’
s often too late
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Continuous Security
Embed Security validation (bread) across the entire Software
Development Lifecycle
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Continuous Security - Analysis & Design
At project start
- evaluate Risk Level and potential threats (Threat Model)
- define high level Security Requirements and guidelines
- evaluate Team need for Security Training
High level Architecture Review
- ask for security expert as an advisor
- good ROI because you can solve root cause on many security problems in
design phase
Design Reviews
- when changing security sensitive parts
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Continuous Security - Implementation
Detail Design and Implementation
- follow Secure Coding Principles
At first “vertical slice” prototype
- Vulnerability Assessment & Pen Test
- check for implementation errors
on design decisions,
- avoid errors in future implementation
add feature / component 1
- non-regression security tests
...
add feature / component N
- non-regression security tests
Secure Coding Principles
Do not trust inputs
Minimize attack surface area (and
window of opportunity)
Establish secure defaults
Principle of Least privilege
Principle of Defense in depth
Fail securely
Don’t trust services
Separation of duties
Avoid security by obscurity
Keep security simple
Fix security issues correctly
If you can't protect, detect
Get your users involved
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Continuous Security - Test & Production
At pre-production stage
- full Vulnerability Assessment & Pen Test
- pre-allocate time for final fixing
In production
- log application - level Security Events
- failed logins, unauthorized requests
- accesses from unusual clients
- Keep Users Involved
- give them information needed to detect potential threats
Updates and new releases
- non-regression security tests
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Why is this better?
Identify Design flaws and vulnerabilities as they occur
Easier (and cheaper) to fix within their context
vs
The team constantly learns about security issues and fixes
and can apply this experience in the rest of the project
vs
There are 15
vulnerabilities in your
50kloc codebase
There is 1 vulnerability
in feature X that you
committed yesterday
Nice VA report, but
starting tomorrow I’ll
move to another project
That’s interesting… we’
ll avoid this in the next
features
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
lines of code
security bugs
end-of-project
vulnerability assessment
security bugs
to be fixed …
in no time :-)
Security sandwich approach
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
lines of
code security bugs
vulnerability assessment
Continuous Security: tests & fix during SDLC
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Security tests during SDLC
types of bugs
lines of code
non regression
security tests
d-day for pre-production release
(pentest)
security bugs
found with
“simple” test
and/or with
known solution
security bugs discovered
during vuln. assesment
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Residual Vulnerabilities will never be 0
Residual vulnerabilities
- detected but to
complex to fix
- NOT detected by
VA
- there is no
magic see-it-
all tool!
Need a Risk Management approach
minimize probability - minimize impact
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Continuous Security recipe in short
● Security throughout the whole SDLC
● Complementary techniques and tools
(again, sorry there ‘s no single-magic-silver-bullet)
● Synergy of the whole Team + external security Experts
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Objections:
Security through the whole SDLC
● I don’t have time to do security tests too
● Security is an overhead
Different techniques and instruments
● I don’t have the tools
● Tools costs $$$
Synergy of the whole team + external security experts
● team doesn’t have the skills
● cannot hire Security Experts for a long time
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
To stay healthy….
in many cases
you can check on
your own
sometimes you
need super-
experts
periodically you
need an
advice/review
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
To stay secure...
in many cases
you can check on
your own
sometimes you
need super-
experts
periodically you
need an
advice/review
Developer , IDE,
C.I. server
Professional
PenTester
Security-trained
Architect
Besides, many checks can also be
automatic or semi-automatic
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Manual validation
● Better Security Requirements with
OWASP Application Security Verification Standard (ASVS)
○ standardized criteria for common security Use Cases: authentication,
authorization, …
○ increasing levels of protection
■ web portals vs medical records
● Review by Security Architect
Promising approach to partially automate Security
Requirement definition and tracking http:
//securitycompass.com/sdelements
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Manual validations & test
● Design review
● Full Vulnerability Assessment & Penetration Test
○ at 1st prototype
○ at pre-production stage
● Focused Vulnerability Assessment everytime a new
“integration point” is introduced
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Automatic test
Static Analysis with FindSecurityBugs
Integrated with IDE
Run by the developer while
writing code
Very reliable for SQL Injections
and dangerous API calls
Can annotate and disable false
positives
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Automatic test - Owasp ZAP Proxy
Intercepts and analyzes all requests to the application, then:
● spidering
(with context)
● passive scan
● active attack
● ….and more
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Automatic test with ZAP
Use of ZAP to check http security headers (X-XSS
protection, X-Frame-options, Content-Security-Policy, etc.)
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Automatic test with ZAP
Use of ZAP to check http cookie parameters (flag http-only, flag secure, scope,
lifetime)
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Automatic test
SSL settings active test
Open Source: https://github.com/rbsec/sslscan & ZAP plugins
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Semi-automatic test: components
(execution is “simple”, results needs review)
owasp
dependency
check
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Semi-automatic test Configuration
and deployment check
●
● SCREENSHOT
port scanning (nmap)
vulnerability scanning
OpenVAS,
Nessus (Commercial)
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Security Tests vs Continuous Integration
and Continuous Delivery
DEV IDE
C.I / C.D.
Server
Test EnvSCM
Repo
Artifact
Repo
PRE-PROD
Env
PROD
Env
Internet OSS
Repo
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Continuous Integration - Static Analysis
Jenkins running FindSecurityBugs at each build
Effective for
● avoiding dangerous APIs
● detecting SQL injection
Aim at constantly bring down
count to zero
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Continuous Integration - Comp. Security
Jenkins running Dependency Check at each build
C.I / C.D.
Server
Artifact
Repo
OSS
Repo
Even more sophisticated Dependency filtering and analysis in tools like Nexus Lifecycle (Commercial)
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Continuous Integration - ZAP
Jenkins running ZAP daily
Jenkins Job
vb
Build WAR
Deploy
Start ZAP,
Webapp
Functional
Tests
Trigger
ZAP attack
Stop Server
ZAP
Publish
Report
ZAP Server
(e.g. Tomcat)
WebAppProxy
Spider /
Attack
REST
API
xml / html
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Phase Activity Who? Tools / Methods Type
Analysis Define
Requirements
Dev, Analyst
Security Architect
Owasp ASVS
Thread Model, Risk review
Manual
Design Architecture - High
Level Design
Review
Security Architect
and/or Expert
Diagrams, Documents,
Secure Coding Principles
Manual
Implementation Write Code Developers Secure Coding Principles Manual
Implementation Vuln. Assessment &
Pen Test
Security Expert ZAP, Nmap, Nessus
(commercial), many others
Manual
Semi-
AutoAutom
atic
Implementation Add other features Developers Static Code Analysis in IDE
FindSecBugs, ZAP,
DepCheck
Mostly
Automatic
Test Vulnerability
Assessment & Pen
Test
Security Expert ZAP, Nmap, Nessus
(commercial), many others
Manual
Semi-
autoAutom
atic
Production Monitoring Sysadmin/DevOps Log Application-Level
Security Events
Semi-auto
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Remember three things
1. Fail Fast …. validate security & perform tests as early as
possible
2. Automate where you can …
you’ll earn more time to focus on tougher security issues
3. don’t skip periodic expert Design Review
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
References
Owasp Secure Coding Principles
● https://www.owasp.org/index.php/Secure_Coding_Principles
OWASP Testing Guide
● https://www.owasp.org/index.php/OWASP_Testing_Guide_v4_Table_of_Contents
OWASP Application Security Verification Standard
https://www.owasp.org/index.php/Category:
OWASP_Application_Security_Verification_Standard_Project
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
The Tools - Open Source
ZAP
● https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project
Jenkins
● https://jenkins-ci.org/
Plugins
● https://wiki.jenkins-ci.org/display/JENKINS/OWASP+Dependency-Check+Plugin
● https://wiki.jenkins-ci.org/display/JENKINS/Static+Code+Analysis+Plug-ins
● https://wiki.jenkins-ci.org/display/JENKINS/ZAProxy+Plugin
Find Security Bugs
● http://h3xstream.github.io/find-sec-bugs/
Dependency Check
● https://www.owasp.org/index.php/OWASP_Dependency_Check
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
The Tools - Commercial
Coverity
● http://www.coverity.com/
Nessus
● http://www.tenable.com/products/nessus-vulnerability-scanner
Sonatype Nexus Lifecycle
● http://www.sonatype.com/nexus/product-overview/nexus-lifecycle
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
Leave your feedback on Joind.in!
https://m.joind.in/event/codemotion-milan-2015
Interested?
● attend our Web Application Security / Continuous Delivery trainings
● engage us for Design/Code Reviews, Vulnerability Assessments & team mentoring
● Read more on
○ http://www.nispro.it
○ http://www.slideshare.net/carlo.bonamico
● Follow us on twitter
○ @nis_srl @carlobonamico @gabrieleguasco
○ updates on Security, AngularJS, Continuous Delivery
Questions? carlo.bonamico@nispro.it - gabriele.guasco@nispro.it
MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
lines of
code
security bugs
vulnerability assessment
Security sandwich approach
bug growing rate

More Related Content

Similar to Continuous Security: Zap security bugs now Codemotion-2015

Kim van Wilgen - Continuous security - Codemotion Rome 2019
Kim van Wilgen - Continuous security - Codemotion Rome 2019Kim van Wilgen - Continuous security - Codemotion Rome 2019
Kim van Wilgen - Continuous security - Codemotion Rome 2019
Codemotion
 
Kim van Wilgen - Continuous security - Codemotion Amsterdam 2019
Kim van Wilgen - Continuous security - Codemotion Amsterdam 2019Kim van Wilgen - Continuous security - Codemotion Amsterdam 2019
Kim van Wilgen - Continuous security - Codemotion Amsterdam 2019
Codemotion
 
Agile software security assurance
Agile software security assuranceAgile software security assurance
Agile software security assurance
Ollie Whitehouse
 
Application Security - Dont leave your AppSec for the last moment Meetup 2104...
Application Security - Dont leave your AppSec for the last moment Meetup 2104...Application Security - Dont leave your AppSec for the last moment Meetup 2104...
Application Security - Dont leave your AppSec for the last moment Meetup 2104...
lior mazor
 
Дмитро Терещенко, "How to secure your application with Secure SDLC"
Дмитро Терещенко, "How to secure your application with Secure SDLC"Дмитро Терещенко, "How to secure your application with Secure SDLC"
Дмитро Терещенко, "How to secure your application with Secure SDLC"
Sigma Software
 
DefCamp 2013 - Are we there yet?
DefCamp 2013 - Are we there yet?DefCamp 2013 - Are we there yet?
DefCamp 2013 - Are we there yet?DefCamp
 
Secure Agile SDLC BSides 14 - 2017 - Raphael Denipotti
Secure Agile SDLC BSides 14 - 2017 - Raphael DenipottiSecure Agile SDLC BSides 14 - 2017 - Raphael Denipotti
Secure Agile SDLC BSides 14 - 2017 - Raphael Denipotti
Raphael Denipotti
 
Ethical Hacking Conference 2015- Building Secure Products -a perspective
 Ethical Hacking Conference 2015- Building Secure Products -a perspective Ethical Hacking Conference 2015- Building Secure Products -a perspective
Ethical Hacking Conference 2015- Building Secure Products -a perspective
Dr. Anish Cheriyan (PhD)
 
How GitLab and HackerOne help organizations innovate faster without compromis...
How GitLab and HackerOne help organizations innovate faster without compromis...How GitLab and HackerOne help organizations innovate faster without compromis...
How GitLab and HackerOne help organizations innovate faster without compromis...
HackerOne
 
Making Security Agile
Making Security AgileMaking Security Agile
Making Security Agile
Oleg Gryb
 
CPX 2016 Moti Sagey Security Vendor Landscape
CPX 2016 Moti Sagey Security Vendor LandscapeCPX 2016 Moti Sagey Security Vendor Landscape
CPX 2016 Moti Sagey Security Vendor Landscape
Moti Sagey מוטי שגיא
 
Software-Defined Segmentation Done Easily, Quickly and Right
Software-Defined Segmentation Done Easily, Quickly and RightSoftware-Defined Segmentation Done Easily, Quickly and Right
Software-Defined Segmentation Done Easily, Quickly and Right
SBWebinars
 
Agentless System Crawler - InterConnect 2016
Agentless System Crawler - InterConnect 2016Agentless System Crawler - InterConnect 2016
Agentless System Crawler - InterConnect 2016
Canturk Isci
 
Application Security in an Agile World - Agile Singapore 2016
Application Security in an Agile World - Agile Singapore 2016Application Security in an Agile World - Agile Singapore 2016
Application Security in an Agile World - Agile Singapore 2016
Stefan Streichsbier
 
Integration into the Secure SDLC Process.ppt
Integration into the Secure SDLC Process.pptIntegration into the Secure SDLC Process.ppt
Integration into the Secure SDLC Process.ppt
Imam Halim Mursyidin
 
Digital Product Security
Digital Product SecurityDigital Product Security
Digital Product Security
SoftServe
 
Continuous Delivery in a Legacy Shop—One Step at a Time
Continuous Delivery in a Legacy Shop—One Step at a TimeContinuous Delivery in a Legacy Shop—One Step at a Time
Continuous Delivery in a Legacy Shop—One Step at a Time
TechWell
 
Product Pre Release Security Validation Checklist v1.0
Product Pre Release Security Validation Checklist v1.0Product Pre Release Security Validation Checklist v1.0
Product Pre Release Security Validation Checklist v1.0
Mike Horton
 
Building better product security
Building better product securityBuilding better product security
Building better product security
Bohdan Serednytskyi
 
AppSec California 2016 - Making Security Agile
AppSec California 2016 - Making Security AgileAppSec California 2016 - Making Security Agile
AppSec California 2016 - Making Security Agile
Oleg Gryb
 

Similar to Continuous Security: Zap security bugs now Codemotion-2015 (20)

Kim van Wilgen - Continuous security - Codemotion Rome 2019
Kim van Wilgen - Continuous security - Codemotion Rome 2019Kim van Wilgen - Continuous security - Codemotion Rome 2019
Kim van Wilgen - Continuous security - Codemotion Rome 2019
 
Kim van Wilgen - Continuous security - Codemotion Amsterdam 2019
Kim van Wilgen - Continuous security - Codemotion Amsterdam 2019Kim van Wilgen - Continuous security - Codemotion Amsterdam 2019
Kim van Wilgen - Continuous security - Codemotion Amsterdam 2019
 
Agile software security assurance
Agile software security assuranceAgile software security assurance
Agile software security assurance
 
Application Security - Dont leave your AppSec for the last moment Meetup 2104...
Application Security - Dont leave your AppSec for the last moment Meetup 2104...Application Security - Dont leave your AppSec for the last moment Meetup 2104...
Application Security - Dont leave your AppSec for the last moment Meetup 2104...
 
Дмитро Терещенко, "How to secure your application with Secure SDLC"
Дмитро Терещенко, "How to secure your application with Secure SDLC"Дмитро Терещенко, "How to secure your application with Secure SDLC"
Дмитро Терещенко, "How to secure your application with Secure SDLC"
 
DefCamp 2013 - Are we there yet?
DefCamp 2013 - Are we there yet?DefCamp 2013 - Are we there yet?
DefCamp 2013 - Are we there yet?
 
Secure Agile SDLC BSides 14 - 2017 - Raphael Denipotti
Secure Agile SDLC BSides 14 - 2017 - Raphael DenipottiSecure Agile SDLC BSides 14 - 2017 - Raphael Denipotti
Secure Agile SDLC BSides 14 - 2017 - Raphael Denipotti
 
Ethical Hacking Conference 2015- Building Secure Products -a perspective
 Ethical Hacking Conference 2015- Building Secure Products -a perspective Ethical Hacking Conference 2015- Building Secure Products -a perspective
Ethical Hacking Conference 2015- Building Secure Products -a perspective
 
How GitLab and HackerOne help organizations innovate faster without compromis...
How GitLab and HackerOne help organizations innovate faster without compromis...How GitLab and HackerOne help organizations innovate faster without compromis...
How GitLab and HackerOne help organizations innovate faster without compromis...
 
Making Security Agile
Making Security AgileMaking Security Agile
Making Security Agile
 
CPX 2016 Moti Sagey Security Vendor Landscape
CPX 2016 Moti Sagey Security Vendor LandscapeCPX 2016 Moti Sagey Security Vendor Landscape
CPX 2016 Moti Sagey Security Vendor Landscape
 
Software-Defined Segmentation Done Easily, Quickly and Right
Software-Defined Segmentation Done Easily, Quickly and RightSoftware-Defined Segmentation Done Easily, Quickly and Right
Software-Defined Segmentation Done Easily, Quickly and Right
 
Agentless System Crawler - InterConnect 2016
Agentless System Crawler - InterConnect 2016Agentless System Crawler - InterConnect 2016
Agentless System Crawler - InterConnect 2016
 
Application Security in an Agile World - Agile Singapore 2016
Application Security in an Agile World - Agile Singapore 2016Application Security in an Agile World - Agile Singapore 2016
Application Security in an Agile World - Agile Singapore 2016
 
Integration into the Secure SDLC Process.ppt
Integration into the Secure SDLC Process.pptIntegration into the Secure SDLC Process.ppt
Integration into the Secure SDLC Process.ppt
 
Digital Product Security
Digital Product SecurityDigital Product Security
Digital Product Security
 
Continuous Delivery in a Legacy Shop—One Step at a Time
Continuous Delivery in a Legacy Shop—One Step at a TimeContinuous Delivery in a Legacy Shop—One Step at a Time
Continuous Delivery in a Legacy Shop—One Step at a Time
 
Product Pre Release Security Validation Checklist v1.0
Product Pre Release Security Validation Checklist v1.0Product Pre Release Security Validation Checklist v1.0
Product Pre Release Security Validation Checklist v1.0
 
Building better product security
Building better product securityBuilding better product security
Building better product security
 
AppSec California 2016 - Making Security Agile
AppSec California 2016 - Making Security AgileAppSec California 2016 - Making Security Agile
AppSec California 2016 - Making Security Agile
 

More from Carlo Bonamico

Build Your Own Angular Component Library
Build Your Own Angular Component LibraryBuild Your Own Angular Component Library
Build Your Own Angular Component Library
Carlo Bonamico
 
Angular Rebooted: Components Everywhere
Angular Rebooted: Components EverywhereAngular Rebooted: Components Everywhere
Angular Rebooted: Components Everywhere
Carlo Bonamico
 
AngularJS Security: defend your Single Page Application
AngularJS Security: defend your Single Page Application AngularJS Security: defend your Single Page Application
AngularJS Security: defend your Single Page Application
Carlo Bonamico
 
Angular 1.x reloaded: improve your app now! and get ready for 2.0
Angular 1.x reloaded:  improve your app now! and get ready for 2.0Angular 1.x reloaded:  improve your app now! and get ready for 2.0
Angular 1.x reloaded: improve your app now! and get ready for 2.0
Carlo Bonamico
 
Real World AngularJS recipes: beyond TodoMVC
Real World AngularJS recipes: beyond TodoMVCReal World AngularJS recipes: beyond TodoMVC
Real World AngularJS recipes: beyond TodoMVC
Carlo Bonamico
 
codemotion-docker-2014
codemotion-docker-2014codemotion-docker-2014
codemotion-docker-2014
Carlo Bonamico
 
Mobile HTML5 websites and Hybrid Apps with AngularJS
Mobile HTML5 websites and Hybrid Apps with AngularJSMobile HTML5 websites and Hybrid Apps with AngularJS
Mobile HTML5 websites and Hybrid Apps with AngularJS
Carlo Bonamico
 
AngularJS: How to code today with tomorrow tools - Codemotion Milan 2013
AngularJS: How to code today with tomorrow tools - Codemotion Milan 2013AngularJS: How to code today with tomorrow tools - Codemotion Milan 2013
AngularJS: How to code today with tomorrow tools - Codemotion Milan 2013
Carlo Bonamico
 
Infrastructure as Data with Ansible for easier Continuous Delivery
Infrastructure as Data with Ansible for easier Continuous DeliveryInfrastructure as Data with Ansible for easier Continuous Delivery
Infrastructure as Data with Ansible for easier Continuous Delivery
Carlo Bonamico
 
Infrastructure as Data with Ansible
Infrastructure as Data with AnsibleInfrastructure as Data with Ansible
Infrastructure as Data with Ansible
Carlo Bonamico
 
Maven 2 in the real world
Maven 2 in the real worldMaven 2 in the real world
Maven 2 in the real world
Carlo Bonamico
 
Nasa World Wind For Java (by Fabrizio Giudici)
Nasa World Wind For Java (by Fabrizio Giudici)Nasa World Wind For Java (by Fabrizio Giudici)
Nasa World Wind For Java (by Fabrizio Giudici)Carlo Bonamico
 
Continuous Integration With Hudson (and Jenkins)
Continuous Integration With Hudson (and Jenkins)Continuous Integration With Hudson (and Jenkins)
Continuous Integration With Hudson (and Jenkins)
Carlo Bonamico
 
Build Automation Tips
Build Automation TipsBuild Automation Tips
Build Automation Tips
Carlo Bonamico
 

More from Carlo Bonamico (14)

Build Your Own Angular Component Library
Build Your Own Angular Component LibraryBuild Your Own Angular Component Library
Build Your Own Angular Component Library
 
Angular Rebooted: Components Everywhere
Angular Rebooted: Components EverywhereAngular Rebooted: Components Everywhere
Angular Rebooted: Components Everywhere
 
AngularJS Security: defend your Single Page Application
AngularJS Security: defend your Single Page Application AngularJS Security: defend your Single Page Application
AngularJS Security: defend your Single Page Application
 
Angular 1.x reloaded: improve your app now! and get ready for 2.0
Angular 1.x reloaded:  improve your app now! and get ready for 2.0Angular 1.x reloaded:  improve your app now! and get ready for 2.0
Angular 1.x reloaded: improve your app now! and get ready for 2.0
 
Real World AngularJS recipes: beyond TodoMVC
Real World AngularJS recipes: beyond TodoMVCReal World AngularJS recipes: beyond TodoMVC
Real World AngularJS recipes: beyond TodoMVC
 
codemotion-docker-2014
codemotion-docker-2014codemotion-docker-2014
codemotion-docker-2014
 
Mobile HTML5 websites and Hybrid Apps with AngularJS
Mobile HTML5 websites and Hybrid Apps with AngularJSMobile HTML5 websites and Hybrid Apps with AngularJS
Mobile HTML5 websites and Hybrid Apps with AngularJS
 
AngularJS: How to code today with tomorrow tools - Codemotion Milan 2013
AngularJS: How to code today with tomorrow tools - Codemotion Milan 2013AngularJS: How to code today with tomorrow tools - Codemotion Milan 2013
AngularJS: How to code today with tomorrow tools - Codemotion Milan 2013
 
Infrastructure as Data with Ansible for easier Continuous Delivery
Infrastructure as Data with Ansible for easier Continuous DeliveryInfrastructure as Data with Ansible for easier Continuous Delivery
Infrastructure as Data with Ansible for easier Continuous Delivery
 
Infrastructure as Data with Ansible
Infrastructure as Data with AnsibleInfrastructure as Data with Ansible
Infrastructure as Data with Ansible
 
Maven 2 in the real world
Maven 2 in the real worldMaven 2 in the real world
Maven 2 in the real world
 
Nasa World Wind For Java (by Fabrizio Giudici)
Nasa World Wind For Java (by Fabrizio Giudici)Nasa World Wind For Java (by Fabrizio Giudici)
Nasa World Wind For Java (by Fabrizio Giudici)
 
Continuous Integration With Hudson (and Jenkins)
Continuous Integration With Hudson (and Jenkins)Continuous Integration With Hudson (and Jenkins)
Continuous Integration With Hudson (and Jenkins)
 
Build Automation Tips
Build Automation TipsBuild Automation Tips
Build Automation Tips
 

Recently uploaded

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
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
ShamsuddeenMuhammadA
 
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaTop 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Yara Milbes
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
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
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
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
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
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
 
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
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
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
 

Recently uploaded (20)

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
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
 
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaTop 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.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
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
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
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
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...
 
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...
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
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
 

Continuous Security: Zap security bugs now Codemotion-2015

  • 1. MILAN 20/21.11.2015 Continuous Security: ZAP your security issues now! Carlo Bonamico & Gabriele Guasco carlo.bonamico@nispro.it gabriele.guasco@nispro.it @carlobonamico @gabrieleguasco NIS s.r.l. http://www.nispro.it
  • 2. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
  • 3. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco define Security requirements at the start do some security tests at the end write your code … faster than light What’s in this Security Sandwich? https://www.thoughtworks.com/radar/techniques/security-sandwich Application Security Ensuring Application guarantees ● Confidentiality ● Integrity ● Availability ● Accountability of the Information it processes
  • 4. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco why this sandwich is not so good?
  • 5. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Usually it’ just half-a-sandwich no security design no security tests
  • 6. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Does not keep up with Agile processes where new Design choices, and even Requirements, emerge through the project lifespan and this includes their impact on Security
  • 7. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco When problems are discovered... there is no more time ...or no more $$$ bug fixing starts after final PenTest near planned release date # of vulnerabilities # of vulnerabilities theory sad reality
  • 8. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco The more time passes the more cost-to-fix increases ● because the change implies revising components writtens months before ● possibly by developers no more with the team ● because the complexity of the project has increased ● steep cost / delay increase after release to production
  • 9. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco With the security sandwich it’ s often too late
  • 10. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Continuous Security Embed Security validation (bread) across the entire Software Development Lifecycle
  • 11. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Continuous Security - Analysis & Design At project start - evaluate Risk Level and potential threats (Threat Model) - define high level Security Requirements and guidelines - evaluate Team need for Security Training High level Architecture Review - ask for security expert as an advisor - good ROI because you can solve root cause on many security problems in design phase Design Reviews - when changing security sensitive parts
  • 12. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Continuous Security - Implementation Detail Design and Implementation - follow Secure Coding Principles At first “vertical slice” prototype - Vulnerability Assessment & Pen Test - check for implementation errors on design decisions, - avoid errors in future implementation add feature / component 1 - non-regression security tests ... add feature / component N - non-regression security tests Secure Coding Principles Do not trust inputs Minimize attack surface area (and window of opportunity) Establish secure defaults Principle of Least privilege Principle of Defense in depth Fail securely Don’t trust services Separation of duties Avoid security by obscurity Keep security simple Fix security issues correctly If you can't protect, detect Get your users involved
  • 13. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Continuous Security - Test & Production At pre-production stage - full Vulnerability Assessment & Pen Test - pre-allocate time for final fixing In production - log application - level Security Events - failed logins, unauthorized requests - accesses from unusual clients - Keep Users Involved - give them information needed to detect potential threats Updates and new releases - non-regression security tests
  • 14. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Why is this better? Identify Design flaws and vulnerabilities as they occur Easier (and cheaper) to fix within their context vs The team constantly learns about security issues and fixes and can apply this experience in the rest of the project vs There are 15 vulnerabilities in your 50kloc codebase There is 1 vulnerability in feature X that you committed yesterday Nice VA report, but starting tomorrow I’ll move to another project That’s interesting… we’ ll avoid this in the next features
  • 15. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco lines of code security bugs end-of-project vulnerability assessment security bugs to be fixed … in no time :-) Security sandwich approach
  • 16. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco lines of code security bugs vulnerability assessment Continuous Security: tests & fix during SDLC
  • 17. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Security tests during SDLC types of bugs lines of code non regression security tests d-day for pre-production release (pentest) security bugs found with “simple” test and/or with known solution security bugs discovered during vuln. assesment
  • 18. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Residual Vulnerabilities will never be 0 Residual vulnerabilities - detected but to complex to fix - NOT detected by VA - there is no magic see-it- all tool! Need a Risk Management approach minimize probability - minimize impact
  • 19. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Continuous Security recipe in short ● Security throughout the whole SDLC ● Complementary techniques and tools (again, sorry there ‘s no single-magic-silver-bullet) ● Synergy of the whole Team + external security Experts
  • 20. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco
  • 21. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Objections: Security through the whole SDLC ● I don’t have time to do security tests too ● Security is an overhead Different techniques and instruments ● I don’t have the tools ● Tools costs $$$ Synergy of the whole team + external security experts ● team doesn’t have the skills ● cannot hire Security Experts for a long time
  • 22. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco To stay healthy…. in many cases you can check on your own sometimes you need super- experts periodically you need an advice/review
  • 23. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco To stay secure... in many cases you can check on your own sometimes you need super- experts periodically you need an advice/review Developer , IDE, C.I. server Professional PenTester Security-trained Architect Besides, many checks can also be automatic or semi-automatic
  • 24. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Manual validation ● Better Security Requirements with OWASP Application Security Verification Standard (ASVS) ○ standardized criteria for common security Use Cases: authentication, authorization, … ○ increasing levels of protection ■ web portals vs medical records ● Review by Security Architect Promising approach to partially automate Security Requirement definition and tracking http: //securitycompass.com/sdelements
  • 25. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Manual validations & test ● Design review ● Full Vulnerability Assessment & Penetration Test ○ at 1st prototype ○ at pre-production stage ● Focused Vulnerability Assessment everytime a new “integration point” is introduced
  • 26. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Automatic test Static Analysis with FindSecurityBugs Integrated with IDE Run by the developer while writing code Very reliable for SQL Injections and dangerous API calls Can annotate and disable false positives
  • 27. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Automatic test - Owasp ZAP Proxy Intercepts and analyzes all requests to the application, then: ● spidering (with context) ● passive scan ● active attack ● ….and more
  • 28. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Automatic test with ZAP Use of ZAP to check http security headers (X-XSS protection, X-Frame-options, Content-Security-Policy, etc.)
  • 29. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Automatic test with ZAP Use of ZAP to check http cookie parameters (flag http-only, flag secure, scope, lifetime)
  • 30. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Automatic test SSL settings active test Open Source: https://github.com/rbsec/sslscan & ZAP plugins
  • 31. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Semi-automatic test: components (execution is “simple”, results needs review) owasp dependency check
  • 32. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Semi-automatic test Configuration and deployment check ● ● SCREENSHOT port scanning (nmap) vulnerability scanning OpenVAS, Nessus (Commercial)
  • 33. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Security Tests vs Continuous Integration and Continuous Delivery DEV IDE C.I / C.D. Server Test EnvSCM Repo Artifact Repo PRE-PROD Env PROD Env Internet OSS Repo
  • 34. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Continuous Integration - Static Analysis Jenkins running FindSecurityBugs at each build Effective for ● avoiding dangerous APIs ● detecting SQL injection Aim at constantly bring down count to zero
  • 35. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Continuous Integration - Comp. Security Jenkins running Dependency Check at each build C.I / C.D. Server Artifact Repo OSS Repo Even more sophisticated Dependency filtering and analysis in tools like Nexus Lifecycle (Commercial)
  • 36. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Continuous Integration - ZAP Jenkins running ZAP daily Jenkins Job vb Build WAR Deploy Start ZAP, Webapp Functional Tests Trigger ZAP attack Stop Server ZAP Publish Report ZAP Server (e.g. Tomcat) WebAppProxy Spider / Attack REST API xml / html
  • 37. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Phase Activity Who? Tools / Methods Type Analysis Define Requirements Dev, Analyst Security Architect Owasp ASVS Thread Model, Risk review Manual Design Architecture - High Level Design Review Security Architect and/or Expert Diagrams, Documents, Secure Coding Principles Manual Implementation Write Code Developers Secure Coding Principles Manual Implementation Vuln. Assessment & Pen Test Security Expert ZAP, Nmap, Nessus (commercial), many others Manual Semi- AutoAutom atic Implementation Add other features Developers Static Code Analysis in IDE FindSecBugs, ZAP, DepCheck Mostly Automatic Test Vulnerability Assessment & Pen Test Security Expert ZAP, Nmap, Nessus (commercial), many others Manual Semi- autoAutom atic Production Monitoring Sysadmin/DevOps Log Application-Level Security Events Semi-auto
  • 38. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Remember three things 1. Fail Fast …. validate security & perform tests as early as possible 2. Automate where you can … you’ll earn more time to focus on tougher security issues 3. don’t skip periodic expert Design Review
  • 39. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco References Owasp Secure Coding Principles ● https://www.owasp.org/index.php/Secure_Coding_Principles OWASP Testing Guide ● https://www.owasp.org/index.php/OWASP_Testing_Guide_v4_Table_of_Contents OWASP Application Security Verification Standard https://www.owasp.org/index.php/Category: OWASP_Application_Security_Verification_Standard_Project
  • 40. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco The Tools - Open Source ZAP ● https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project Jenkins ● https://jenkins-ci.org/ Plugins ● https://wiki.jenkins-ci.org/display/JENKINS/OWASP+Dependency-Check+Plugin ● https://wiki.jenkins-ci.org/display/JENKINS/Static+Code+Analysis+Plug-ins ● https://wiki.jenkins-ci.org/display/JENKINS/ZAProxy+Plugin Find Security Bugs ● http://h3xstream.github.io/find-sec-bugs/ Dependency Check ● https://www.owasp.org/index.php/OWASP_Dependency_Check
  • 41. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco The Tools - Commercial Coverity ● http://www.coverity.com/ Nessus ● http://www.tenable.com/products/nessus-vulnerability-scanner Sonatype Nexus Lifecycle ● http://www.sonatype.com/nexus/product-overview/nexus-lifecycle
  • 42. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco Leave your feedback on Joind.in! https://m.joind.in/event/codemotion-milan-2015 Interested? ● attend our Web Application Security / Continuous Delivery trainings ● engage us for Design/Code Reviews, Vulnerability Assessments & team mentoring ● Read more on ○ http://www.nispro.it ○ http://www.slideshare.net/carlo.bonamico ● Follow us on twitter ○ @nis_srl @carlobonamico @gabrieleguasco ○ updates on Security, AngularJS, Continuous Delivery Questions? carlo.bonamico@nispro.it - gabriele.guasco@nispro.it
  • 43. MILAN 20/21.11.2015 - Carlo Bonamico & Gabriele Guasco lines of code security bugs vulnerability assessment Security sandwich approach bug growing rate