SlideShare a Scribd company logo
Confidential & proprietary © Sqreen, 2015
Rails Security Continuous Integration
We make products antifragile.
Confidential & proprietary © Sqreen, 2015
Jean-Baptiste Aviat
Sqreen CTO (https://sqreen.io)
Former Apple software security engineer
Former white hat hacker
Twitter: @JbAviat
Email: jb@sqreen.io
Confidential & proprietary © Sqreen, 2015
–Agent Smith
“Never send a human to
do a machine's job.”
Confidential & proprietary © Sqreen, 2015
Continuous Integration
Quality: automate everything you can
Unit tests at every commit
Integration tests at every commit
Test against a production like stack
Maximize confidence for every commit
Confidential & proprietary © Sqreen, 2015
–Edsger W. Dijkstra
“Testing shows the presence,
not the absence of bugs.”
Confidential & proprietary © Sqreen, 2015
Static & Dynamic analysis
Confidential & proprietary © Sqreen, 2015
Static analysis - Brakeman
http://brakemanscanner.org/
Written in Ruby
Dedicated to Ruby on Rails
Open source: https://github.com/presidentbeef/brakeman
Podcast: Ruby Rogues #219
Confidential & proprietary © Sqreen, 2015
Static analysis - Jenkins integration
Jenkins plugin:
https://wiki.jenkins-ci.org/display/JENKINS/Brakeman+Plugin
Install Gem on test server
Add an adequate test to Jenkins
Done.
Confidential & proprietary © Sqreen, 2015
Dynamic analysis - Arachni
http://www.arachni-scanner.com/
Written in Ruby
Compatible with any Web application
Open source: https://github.com/Arachni/arachni/
Powerful but complex
Confidential & proprietary © Sqreen, 2015
Dynamic analysis - Jenkins integration
No Jenkins plugin
Do it yourself JUnit XML (contact me)
Order tests by sensitivity
Set a short timeout
Dynamic tests: the faster server the better
Puma did well
Confidential & proprietary © Sqreen, 2015
Demo
Confidential & proprietary © Sqreen, 2015
Brakeman detects 2 XSS
Confidential & proprietary © Sqreen, 2015
Brakeman detected XSS details
Undetected
issue
Fake issue:
@secure
is static!
Real XSS
Confidential & proprietary © Sqreen, 2015
Arachne scan result
Confidential & proprietary © Sqreen, 2015
Arachne issue details
Confidential & proprietary © Sqreen, 2015
Issues
False positives lower CI confidence
Cannot test against production (dangerous), lead to more false
positives
Tools updates depend on maintainers will
Need to iteratively adapt your code
Vulnerabilities debt (legacy)
Security tests are not written by you
Need deep attack knowledge to understand them
Confidential & proprietary © Sqreen, 2015
Sqreen: you code, we protect
We automatically protect your apps
Strong and transparent
Beta program available:
Come and see me if you have Rails or Sinatra based
applications
Sqreen is hiring : http://sqreen.io/jobs.html

More Related Content

PDF
Instrument Rack to visualize
 Rails requests processing
PDF
Tune your App Perf (and get fit for summer)
PDF
Application Security from the Inside - OWASP
PDF
Serverless security - how to protect what you don't see?
PDF
Securing Serverless - By Breaking In
PPTX
Signal r core workshop - netconf
PPTX
AWS Security Week | Getting to Continuous Security and Compliance Monitoring ...
PDF
Application Security in a Container World - Akash Mahajan - BCC 2017
Instrument Rack to visualize
 Rails requests processing
Tune your App Perf (and get fit for summer)
Application Security from the Inside - OWASP
Serverless security - how to protect what you don't see?
Securing Serverless - By Breaking In
Signal r core workshop - netconf
AWS Security Week | Getting to Continuous Security and Compliance Monitoring ...
Application Security in a Container World - Akash Mahajan - BCC 2017

What's hot (19)

PDF
DerbyCon 2019: Prepare to be Boarded! A Tale of Kubernetes, Plunder, and Cryp...
PPTX
Lacework | Top 10 Cloud Security Threats
PDF
Mitigate Security Threats with SIEM
PPTX
Self Service for IT Infrastructure
PDF
Security in OSS DevOps
PDF
Better Bug Stomping with Zend Studio and Zend Server
PDF
Enforce compliance policy with model-driven automation
PPT
Automating security test using Selenium and OWASP ZAP - Practical DevSecOps
PDF
Set up a Development Environment in 5 Minutes
PDF
All Your Containers Are Belong To Us
PDF
Principles Of Chaos Engineering - Chaos Engineering Hamburg
PDF
Manage Your Akamai-as-Code with Terraform
PDF
Deployment Automation & Self-Healing with Dynatrace & Ansible
PDF
Infrastructure as Code
PDF
BSides Denver 2019 - Cloud Wars Episode V: The Cryptojacker Strikes Back
PPTX
Automated Intrusion Detection and Response on AWS
PPTX
.NET Security (Radu Vunvulea)
PDF
Ignite Denver - Robots!
PPTX
Programming for the Internet of Things
DerbyCon 2019: Prepare to be Boarded! A Tale of Kubernetes, Plunder, and Cryp...
Lacework | Top 10 Cloud Security Threats
Mitigate Security Threats with SIEM
Self Service for IT Infrastructure
Security in OSS DevOps
Better Bug Stomping with Zend Studio and Zend Server
Enforce compliance policy with model-driven automation
Automating security test using Selenium and OWASP ZAP - Practical DevSecOps
Set up a Development Environment in 5 Minutes
All Your Containers Are Belong To Us
Principles Of Chaos Engineering - Chaos Engineering Hamburg
Manage Your Akamai-as-Code with Terraform
Deployment Automation & Self-Healing with Dynatrace & Ansible
Infrastructure as Code
BSides Denver 2019 - Cloud Wars Episode V: The Cryptojacker Strikes Back
Automated Intrusion Detection and Response on AWS
.NET Security (Radu Vunvulea)
Ignite Denver - Robots!
Programming for the Internet of Things
Ad

Viewers also liked (20)

PPTX
How to-use-buffer-by-ella
PDF
From Second Screen to Multi-Screen: We Are Social's Guide to Social Screens
PDF
Security DevOps - Free pentesters' time to focus on high-hanging fruits // Ha...
PDF
SteadyBudget's Seed Funding Pitch Deck
PDF
7 Tips to Beautiful PowerPoint by @itseugenec
PDF
The Minimum Loveable Product
PDF
How I got 2.5 Million views on Slideshare (by @nickdemey - Board of Innovation)
PDF
The Seven Deadly Social Media Sins
PDF
Five Killer Ways to Design The Same Slide
PPTX
How People Really Hold and Touch (their Phones)
PDF
Upworthy: 10 Ways To Win The Internets
PDF
What 33 Successful Entrepreneurs Learned From Failure
PDF
Design Your Career 2018
PPTX
Why Content Marketing Fails
PDF
The History of SEO
PDF
How To (Really) Get Into Marketing
PDF
The What If Technique presented by Motivate Design
PDF
Displaying Data
PPTX
10 Powerful Body Language Tips for your next Presentation
PDF
Crap. The Content Marketing Deluge.
How to-use-buffer-by-ella
From Second Screen to Multi-Screen: We Are Social's Guide to Social Screens
Security DevOps - Free pentesters' time to focus on high-hanging fruits // Ha...
SteadyBudget's Seed Funding Pitch Deck
7 Tips to Beautiful PowerPoint by @itseugenec
The Minimum Loveable Product
How I got 2.5 Million views on Slideshare (by @nickdemey - Board of Innovation)
The Seven Deadly Social Media Sins
Five Killer Ways to Design The Same Slide
How People Really Hold and Touch (their Phones)
Upworthy: 10 Ways To Win The Internets
What 33 Successful Entrepreneurs Learned From Failure
Design Your Career 2018
Why Content Marketing Fails
The History of SEO
How To (Really) Get Into Marketing
The What If Technique presented by Motivate Design
Displaying Data
10 Powerful Body Language Tips for your next Presentation
Crap. The Content Marketing Deluge.
Ad

Similar to Ruby on Rails security in your Continuous Integration (20)

PPTX
Kim van Wilgen - Continuous security - Codemotion Amsterdam 2019
PDF
Continuous security
PPTX
Kim van Wilgen - Continuous security - Codemotion Rome 2019
PDF
Shift Left Security
PPTX
SPI Dynamics web application security 101
PDF
AWS live hack: Atlassian + Snyk OSS on AWS
PPTX
Making Security Agile
PDF
Security as Code: DOES15
PDF
Security Teams & Tech In A Cloud World
PPTX
360° Kubernetes Security: From Source Code to K8s Configuration Security
PDF
Secure DevOps: A Puma's Tail
PDF
Reducing Risk of Credential Compromise at Netflix
PPTX
Making Security Agile - Oleg Gryb
PPTX
Automating Your Tools: How to Free Up Your Security Professionals for Actual ...
PPTX
AppSec California 2016 - Making Security Agile
PPTX
Security Observability for Cloud Based Applications
PDF
Devops security-An Insight into Secure-SDLC
PDF
LF_APIStrat17_Bulletproofing Your API's
DOCX
Resume - Varsharani
PDF
DEFCON 23 - Nir Valtman and Moshe Ferber - from zero to secure in 1
Kim van Wilgen - Continuous security - Codemotion Amsterdam 2019
Continuous security
Kim van Wilgen - Continuous security - Codemotion Rome 2019
Shift Left Security
SPI Dynamics web application security 101
AWS live hack: Atlassian + Snyk OSS on AWS
Making Security Agile
Security as Code: DOES15
Security Teams & Tech In A Cloud World
360° Kubernetes Security: From Source Code to K8s Configuration Security
Secure DevOps: A Puma's Tail
Reducing Risk of Credential Compromise at Netflix
Making Security Agile - Oleg Gryb
Automating Your Tools: How to Free Up Your Security Professionals for Actual ...
AppSec California 2016 - Making Security Agile
Security Observability for Cloud Based Applications
Devops security-An Insight into Secure-SDLC
LF_APIStrat17_Bulletproofing Your API's
Resume - Varsharani
DEFCON 23 - Nir Valtman and Moshe Ferber - from zero to secure in 1

Recently uploaded (20)

PDF
medical staffing services at VALiNTRY
PPT
Introduction Database Management System for Course Database
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PPTX
Introduction to Artificial Intelligence
PPTX
Transform Your Business with a Software ERP System
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PPTX
ai tools demonstartion for schools and inter college
PDF
AI in Product Development-omnex systems
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PPTX
history of c programming in notes for students .pptx
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
PTS Company Brochure 2025 (1).pdf.......
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
medical staffing services at VALiNTRY
Introduction Database Management System for Course Database
VVF-Customer-Presentation2025-Ver1.9.pptx
Introduction to Artificial Intelligence
Transform Your Business with a Software ERP System
Operating system designcfffgfgggggggvggggggggg
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
ai tools demonstartion for schools and inter college
AI in Product Development-omnex systems
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
history of c programming in notes for students .pptx
How Creative Agencies Leverage Project Management Software.pdf
Which alternative to Crystal Reports is best for small or large businesses.pdf
Odoo Companies in India – Driving Business Transformation.pdf
PTS Company Brochure 2025 (1).pdf.......
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Odoo POS Development Services by CandidRoot Solutions
Navsoft: AI-Powered Business Solutions & Custom Software Development
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf

Ruby on Rails security in your Continuous Integration

  • 1. Confidential & proprietary © Sqreen, 2015 Rails Security Continuous Integration We make products antifragile.
  • 2. Confidential & proprietary © Sqreen, 2015 Jean-Baptiste Aviat Sqreen CTO (https://sqreen.io) Former Apple software security engineer Former white hat hacker Twitter: @JbAviat Email: jb@sqreen.io
  • 3. Confidential & proprietary © Sqreen, 2015 –Agent Smith “Never send a human to do a machine's job.”
  • 4. Confidential & proprietary © Sqreen, 2015 Continuous Integration Quality: automate everything you can Unit tests at every commit Integration tests at every commit Test against a production like stack Maximize confidence for every commit
  • 5. Confidential & proprietary © Sqreen, 2015 –Edsger W. Dijkstra “Testing shows the presence, not the absence of bugs.”
  • 6. Confidential & proprietary © Sqreen, 2015 Static & Dynamic analysis
  • 7. Confidential & proprietary © Sqreen, 2015 Static analysis - Brakeman http://brakemanscanner.org/ Written in Ruby Dedicated to Ruby on Rails Open source: https://github.com/presidentbeef/brakeman Podcast: Ruby Rogues #219
  • 8. Confidential & proprietary © Sqreen, 2015 Static analysis - Jenkins integration Jenkins plugin: https://wiki.jenkins-ci.org/display/JENKINS/Brakeman+Plugin Install Gem on test server Add an adequate test to Jenkins Done.
  • 9. Confidential & proprietary © Sqreen, 2015 Dynamic analysis - Arachni http://www.arachni-scanner.com/ Written in Ruby Compatible with any Web application Open source: https://github.com/Arachni/arachni/ Powerful but complex
  • 10. Confidential & proprietary © Sqreen, 2015 Dynamic analysis - Jenkins integration No Jenkins plugin Do it yourself JUnit XML (contact me) Order tests by sensitivity Set a short timeout Dynamic tests: the faster server the better Puma did well
  • 11. Confidential & proprietary © Sqreen, 2015 Demo
  • 12. Confidential & proprietary © Sqreen, 2015 Brakeman detects 2 XSS
  • 13. Confidential & proprietary © Sqreen, 2015 Brakeman detected XSS details Undetected issue Fake issue: @secure is static! Real XSS
  • 14. Confidential & proprietary © Sqreen, 2015 Arachne scan result
  • 15. Confidential & proprietary © Sqreen, 2015 Arachne issue details
  • 16. Confidential & proprietary © Sqreen, 2015 Issues False positives lower CI confidence Cannot test against production (dangerous), lead to more false positives Tools updates depend on maintainers will Need to iteratively adapt your code Vulnerabilities debt (legacy) Security tests are not written by you Need deep attack knowledge to understand them
  • 17. Confidential & proprietary © Sqreen, 2015 Sqreen: you code, we protect We automatically protect your apps Strong and transparent Beta program available: Come and see me if you have Rails or Sinatra based applications Sqreen is hiring : http://sqreen.io/jobs.html