277
PRAGMATIC SECURITY AND RUGGED DEVOPS WORKSHOP @WICKETT // @MATTJAY

Pragmatic Security and Rugged DevOps - SXSW 2015

Embed Size (px)

Citation preview

Page 1: Pragmatic Security and Rugged DevOps - SXSW 2015

PRAGMATIC SECURITY AND RUGGED DEVOPS

WORKSHOP

@WICKETT // @MATTJAY

Page 2: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

CONVERSATION

#SXSW + #RUGGED CODE

Page 3: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

50% OFF GAUNTLT BOOK FOR SXSW ATTENDEES!

leanpub.com/hands-on-gauntlt/c/50percentoff

Page 4: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE63% HANDS ON LABS!

APPLIEDTHEORY

Page 5: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WORKSHOP PLEDGE

Page 6: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY You/Me

I will not attempt to access my neighbor’s computer

I will not hack the wifi

I will be friendly to those around me

Page 7: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

TWO 5-MINUTE BREAK

Page 8: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

HANDS-ON LABS

~8 Mini Labs lasting 5 to 10 minutes each

Let us know if you are having a problem, and we will help

We will also be around after the class to help as well

Page 9: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

TIPS FOR THE LABS

Open the labs folder in your browser to follow along to benefit from markdown display

Run all commands from the ~/gauntlt-demo

Page 10: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WHY ARE YOU HERE?

Page 11: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

Page 12: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

OUR GOAL: EQUIP YOU WITH PRAGMATIC APPROACHES TO

SECURITY THAT CAN HELP YOU MAKE A DIFFERENCE

Page 13: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WHO ARE WE?

Page 14: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

JAMES WICKETTSr. Engineer at Signal Sciences

Austin, TX

Gauntlt Core Team

DevOps Days Austin Organizer

Velocity, LASCON, ISC2, AppSecUSA, B-Sides, …

Page 15: Pragmatic Security and Rugged DevOps - SXSW 2015

signalsciences.com

Page 16: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

MATT JOHANSEN

Houston, TX

Sr. Manager, TRC WhiteHat Security

BlackHat, DEFCON, RSA, more++

Wannabe Dev (node.js, angularjs)

I’m hiring

Page 17: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WHY DOES THIS MATTER?

Page 18: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

SONY, SONY, SONY, SONY, SONY SONY, SONY, SONY, SONY, SONY SONY, SONY, SONY, SONY, SONY SONY, SONY, SONY, SONY, SONY SONY, SONY, SONY, SONY, SONY SONY, SONY, SONY, SONY, SONY

Page 19: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

HUMANS OPTIMIZE FOR THE PROBABLE

Page 20: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WE OPTIMIZE FOR THE PROBABLE

Page 21: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

UNIT TESTING

Page 22: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

INTEGRATION TESTING

Page 23: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

HAPPY PATH ENGINEERING

Page 24: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WE OPTIMIZE FOR THE POSSIBLE

Page 25: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

OVER ENGINEERING

Page 26: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

STRESS AND LOAD TESTING

Page 27: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WE OPTIMIZE FOR THE PERCEIVED PROBABLE

Page 28: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

HOW DO WE PERCEIVE WHAT IS PROBABLE?

Page 29: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

EPISTEMOLOGICAL PROBLEM OF SOFTWARE DEVELOPMENT

Page 30: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WE ATTEMPT TO SOLVE IT BY GATHERING DATA OR RHETORIC

Page 31: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

3 APPROACHES TO SOLVE THE EPISTEMOLOGICAL PROBLEM OF

SOFTWARE DEVELOPMENT

Page 32: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

ARC 1: AGILE

Page 33: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

AGILE SIDE-STEPS THE PROBLEM

Page 34: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

AGILE SAYS WE DON’T KNOW WHAT WE ARE BUILDING

Page 35: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

SOLUTION: RELEASE FEATURES TO CUSTOMERS RAPIDLY

Page 36: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

JUST SHIP IT!

Page 37: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

BEHAVIOR DRIVEN DEV

Page 38: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

BEHAVIOR DRIVEN DEVELOPMENT IS A SECOND-GENERATION, OUTSIDE–IN, PULL-BASED,

MULTIPLE-STAKEHOLDER, MULTIPLE-SCALE, HIGH-AUTOMATION, AGILE METHODOLOGY. IT DESCRIBES A CYCLE OF INTERACTIONS WITH WELL-DEFINED

OUTPUTS, RESULTING IN THE DELIVERY OF WORKING, TESTED SOFTWARE THAT MATTERS.

DAN NORTH , 2009

Page 39: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

AMPLIFY THE

FEEDBACK LOOP

Page 40: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

TLDR

RAPID ITERATIONS WIN

Page 41: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

AGILE IS OUR

GUIDING LIGHT

Page 42: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

PEOPLE MATTER

Page 43: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WE DON'T SELL CD’S ANYMORE

#SXSW #RUGGEDCODE

Page 44: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

SOFTWARE AS A SERVICE

Page 45: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

THE LAST 15 YEARS HAVE BROUGHT A COMPLETE CHANGE IN OUR

DELIVERY CADENCE, DISTRIBUTION, AND REVENUE MODELS

Page 46: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

DEVOPS IS THE APPLICATION OF AGILE METHODOLOGY TO SYSTEM

ADMINISTRATION - THE PRACTICE OF CLOUD SYSTEM ADMINISTRATION BOOK

Page 47: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODEARC 2: DEVOPS

Page 48: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

Page 49: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

AGILE INFRASTRUCTURE

http://itrevolution.com/the-history-of-devops/

Page 50: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

http://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr

Page 51: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

FIRST DEVOPS DAYS, GHENT 2009

@PATRICKDEBOIS

Page 52: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

THE OPPOSITE OF DEVOPS IS DESPAIR - GENE KIM

#SXSW #RUGGEDCODE

Page 53: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

http://dev2ops.org/blog/2010/2/22/what-is-devops.html

Page 54: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

Page 55: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

DEVOPS REALIZED THAT OPS DOESN'T KNOW WHAT DEVS KNOW

AND VICE VERSA

Page 56: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

DEV : OPS 10 : 1

Page 57: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

DEVOPS IS AN EPISTEMOLOGICAL BREAKTHROUGH JOINING DISPARATE

PEOPLE AROUND A COMMON PROBLEM

Page 58: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

DEVOPS IS AN INCLUSIVE MOVEMENT THAT CODIFIES A CULTURE

- ADAM JACOBS

Page 59: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

CULTURE IS THE MOST IMPORTANT ASPECT TO DEVOPS SUCCEEDING IN

THE ENTERPRISE

Page 60: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WHAT WE VALUE DETERMINES OUR

CULTURE

Page 61: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

#SXSW #RUGGEDCODE

Page 62: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

MUTUAL UNDERSTANDING SHARED LANGUAGE

OPENNESS VISUALIZATION

TOOLING

Page 63: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

DEVOPS IS THE INEVITABLE RESULT OF NEEDING TO DO EFFICIENT OPERATIONS IN A [DISTRIBUTED

COMPUTING AND CLOUD] ENVIRONMENT. - TOM LIMONCELLI

Page 64: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

DEVOPS IS NOT A TECHNOLOGICAL PROBLEM. DEVOPS IS A BUSINESS PROBLEM.

- DAMON EDWARDS

Page 65: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

http://puppetlabs.com/sites/default/files/2014-state-of-devops-report.pdf

Page 66: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

THE FIRST SCIENTIFIC STUDY OF THE RELATIONSHIP BETWEEN

ORGANIZATIONAL PERFORMANCE, IT PERFORMANCE

AND DEVOPS PRACTICES

Page 67: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

DEVOPS PRACTICES IMPROVE IT PERFORMANCE

Page 68: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

CULTURE AUTOMATION

MEASUREMENT SHARING

@BOTCHAGALUPE @DAMONEDWARDS

Page 69: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

ANTIPATTERN: REBRAND YOUR

OPS TEAM TO DEVOPS TEAM

Page 70: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

ANTIPATTERN: MANUAL

CONFIG OF PRODUCTION

ENVIRONMENT#SXSW

#RUGGEDCODE

Page 71: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

CHEF, PUPPET, ANSIBLE, CFENGINE RUNDECK, MCOLLECTIVE

JENKINS, TRAVIS, KITCHEN CUCUMBER, GAUNTLT, SERVERSPEC

VAGRANT, DOCKER

Page 72: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

BEWARE OF THE

DEVOPS SOFTWARE SOLUTION

Page 73: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

“THAT THE WORD #DEVOPS GETS REDUCED TO TECHNOLOGY IS A MANIFESTATION OF HOW

BADLY WE NEED A CULTURAL SHIFT” - @PATRICKDEBOIS

http://www.slideshare.net/cm6051/london-devops-31-5-years-of-devops

Page 74: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

BUSINESS METRICS EVENT CORRELATION

USAGE BASED MONITORING

Page 75: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

Page 76: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

ARC 3: CONTINUOUS

DELIVERY

Page 77: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

CONTINUOUS DELIVERY IS NOT MERELY HOW OFTEN YOU DELIVER BUT HOW LITTLE YOU CAN DELIVER AT A TIME

Page 78: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

#SXSW #RUGGEDCODE

Page 79: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

BATCH SIZE OF 1

Page 80: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

OLD WAY

CHANGES BREAK STUFF, SO LIMIT THEM AND BATCH THEM ALL TOGETHER

Page 81: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

NEW WAY

DELIVERY OF ONE CHANGE AT A TIME REDUCES OUTAGES,

INCREASES PERFORMANCE, AND LIMITS TECHNICAL DEBT

Page 82: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

NEVER PASS DEFECTS TO THE NEXT STEP

The Practice of Cloud System Administration

Page 83: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

YOU MUST DEPLOY YOUR STUFF

#SXSW #RUGGEDCODE

Page 84: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

LET THE BOTS TROLL THE USERS FOR THE LOLZ.

Page 85: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

ALLOCATE TIME TO ENHANCE THE BUILD, TEST AND DEPLOY SYSTEM

The Practice of Cloud System Administration

Page 86: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

REDUCE CODE LATENCY AND INCREASE CODE VELOCITY

Page 87: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

THE NEXT ARC: SECURITYRugged

Page 88: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

“… THOSE STUPID DEVELOPERS” - SECURITY PERSON

Page 89: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

“SECURITY PREFERS A SYSTEM POWERED OFF AND UNPLUGGED”

- DEVELOPER

Page 90: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

CULTURAL UNREST WITH SECURITY IN AN ORGANIZATION

Page 91: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

COMPLIANCE DRIVEN CULTURE: PCI, SOX, …

Page 92: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

“[RISK ASSESSMENT] INTRODUCES A DANGEROUS FALLACY: THAT STRUCTURED

INADEQUACY IS ALMOST AS GOOD AS ADEQUACY AND THAT UNDERFUNDED

SECURITY EFFORTS PLUS RISK MANAGEMENT ARE ABOUT AS GOOD AS PROPERLY FUNDED SECURITY WORK”

Page 93: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

RATIO PROBLEM DEVS : OPS : SECURITY

100 : 10 : 1

Page 94: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

SECURITY TOOLS ARE RUN OUT-OF-BAND

Page 95: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

SECURITY TOOLS ARE CONFUSING

Page 96: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

Page 97: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

AND WHEN THEY ARE DONE THEY GIVE YOU THIS LOVELY GEM

Page 98: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

THE TIDE IS CHANGING

Page 99: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

RESILIENCY ENGINEERING

Page 100: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

THE INFAMOUS NETFLIX CHAOS

MONKEY

Page 101: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

RUGGED

Page 102: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

Page 103: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

Page 104: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

THE RUGGED MANIFESTO (EXCERPTS)

Page 105: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

I AM RUGGED AND, MORE IMPORTANTLY, MY CODE IS RUGGED.

I RECOGNIZE THAT SOFTWARE HAS BECOME A FOUNDATION OF OUR MODERN WORLD.

I RECOGNIZE THE AWESOME RESPONSIBILITY THAT COMES WITH THIS FOUNDATIONAL ROLE.

Page 106: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

I AM RUGGED BECAUSE MY CODE CAN FACE THESE CHALLENGES AND PERSIST IN SPITE

OF THEM.

Page 107: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

#RUGGEDDEVOPS #DEVOPSSEC

Page 108: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

http://www.slideshare.net/wickett/putting-rugged-into-your-devops-toolchain

Page 109: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

RUGGED JOURNEY

Page 110: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

http://videos.2012.appsecusa.org/video/54250716

Page 111: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

http://www.youtube.com/watch?v=jQblKuMuS0Y

Page 112: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

https://speakerdeck.com/garethr/security-monitoring-penetration-testing-meets-monitoring

Page 113: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

HTTPS://SPEAKERDECK.COM/MKONDA/APPSECUSA-2013-INSECURE-EXPECTATIONS

http://vimeo.com/75930344

Page 114: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

SECURITY TOOLING TO DELIVERY PIPELINE

Page 115: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

…TO INFLUENCE CULTURE, AUTOMATION, MEASUREMENT AND

SHARING

Page 116: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

RUGGED WEB APPS

Page 117: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

VULNERABLE CODE IS EVERYWHERE

Page 118: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

CROSS SITE SCRIPTING [XSS]

Page 119: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

WHAT IS IT? [XSS]

Page 120: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

REFLECTIVE [XSS]

Page 121: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 122: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

PERSISTENT [XSS]

Page 123: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

DOM BASED [XSS]

Page 124: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

WHY IS IT BAD? [XSS]

Page 125: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

DOCUMENT.COOKIE [XSS]

Page 126: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 127: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

DOCUMENT.LOCATION [XSS]

Page 128: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

HOW DO I FIX IT? [XSS]

Page 129: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

GOOD: INPUT SANITIZATION [XSS]

Page 130: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

BLACKLIST :( [XSS]

Page 131: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

WHITELIST :) [XSS]

Page 132: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

BETTER: OUTPUT ENCODING [XSS]

Page 133: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

< > BECOME &LT; &GT; [XSS]

Page 134: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

SQL INJECTION [SQLi]

Page 135: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

WHAT IS IT? [SQLi]

Page 136: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

WHY IS IT BAD? [SQLi]

Page 137: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 138: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 139: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

CREDIT: XKCD

Page 140: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

HOW WOULD YOU EXPLOIT?

Page 141: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

‘;

Page 142: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

PWNED

Page 143: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

HOW DO I FIX IT? [SQLi]

Page 144: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

PARAMETERIZED QUERIES [SQLi]

Page 145: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

PARAMETERIZED QUERIES (PHP) [SQLi]

Page 146: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

PARAMETERIZED QUERIES (JAVA) [SQLi]

Page 147: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

CROSS SITE REQUEST FORGERY [CSRF]

Page 148: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

WHAT IS IT? [CSRF]

Page 149: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

WHY IS IT BAD? [CSRF]

Page 150: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 151: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 152: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

HOW DO I FIX IT? [CSRF]

Page 153: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 154: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

TOKENS! [CSRF]

Page 155: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

IMAGE CREDIT: DOTNETBIPS.COM

Page 156: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

AGAIN… VULNERABLE CODE IS EVERYWHERE

Page 157: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

GETS FIXED SLOWLY

Page 158: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

GETS FIXED SLOWLY

Page 159: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

…IF EVER

Page 160: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

OWASP TOP 10

Page 161: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

LAB #1 - SETUP

Page 162: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

SETUP

github.com/gauntlt/gauntlt-demo

Open the Labs in your browser > https://github.com/gauntlt/gauntlt-demo/tree/master/labs/sxsw-2015

You need Vagrant and VirtualBox installed on your laptop

Page 163: Pragmatic Security and Rugged DevOps - SXSW 2015
Page 164: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

LAB INSTRUCTIONS

For this lab, you will complete:├── 01_Overview.md

├── 02_Setup using Vagrant.md

Page 165: Pragmatic Security and Rugged DevOps - SXSW 2015
Page 166: Pragmatic Security and Rugged DevOps - SXSW 2015

├── 02_Setup using Vagrant.md

Page 167: Pragmatic Security and Rugged DevOps - SXSW 2015

├── 02_Setup using Vagrant.md

Page 168: Pragmatic Security and Rugged DevOps - SXSW 2015

├── 02_Setup using Vagrant.md

Page 169: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

5-MINUTE BREAK

Page 170: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

LAB #2 - WEB APP HACKING

Page 171: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

XSS DEMO

Page 172: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 173: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 174: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

FIND THE VULN

Page 175: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

FIND THE VULN

Page 176: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

LAB INSTRUCTIONS

For this lab, you will complete:├── 04_Start up Vulnerable Target.md

Page 177: Pragmatic Security and Rugged DevOps - SXSW 2015
Page 178: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

For this lab, poke around and try to find a second XSS vulnerability

Let us know when you find it…

Page 179: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

INTRO TO GAUNTLT

Page 180: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WOULDN’T IT BE GREAT IF WE COULD AUTOMATE OUR SECURITY

TESTS…

Page 181: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

http://static.hothdwallpaper.net/51b8e4ee5a5ae19808.jpg

Page 182: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

GAUNTLT IS AN OPINIONATED FRAMEWORK TO DO RUGGED TESTING

Page 183: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

GAUNTLT IS OPEN SOURCE MIT LICENSED

Page 184: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

GAUNTLT AUTOMATES SECURITY TOOLS

Page 185: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

GAUNTLT = SECURITY + CUCUMBER

Page 186: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

Page 187: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

Page 188: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

Page 189: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 190: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

CODE

GARMR NMAP CURL ARACHNI

Page 191: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

GARMR NMAP CURL ARACHNI

CODE

Page 192: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 193: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

BUILT ON CUCUMBER

Page 194: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

GAUNTLT PHILOSOPHYGauntlt comes with pre-canned steps that hook security testing tools

Gauntlt does not install tools

Gauntlt wants to be part of the CI/CD pipeline

Be a good citizen of exit status and stdout/stderr

Page 195: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

GAUNTLT IS COLLABORATION

Page 196: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

*.attack

something.attackelse.attack

GAUNTLT IN ACTION

Page 197: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

FeatureBackground

Scenario

DescriptionSetup

Logic

ATTACK STRUCTURE

Page 198: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

ATTACK LOGIC

Given

When

Then

Page 199: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Given “arachni” is installed

Setup steps

Check Resource Available

ATTACK STEP: GIVEN

Page 200: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

ATTACK STEP: WHEN

Action steps

When I launch an “arachni-xss” attack

Page 201: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

ATTACK STEP: THEN

Parsing Steps

Then the output should not contain “fail”

Page 202: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

LET’S PUT IT ALL TOGETHER

Page 203: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 204: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

LAB #3 - HELLO WORLD

Page 205: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

LAB INSTRUCTIONS

For this lab, you will complete:├── 05_Hello World with Gauntlt.md

Page 206: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

HELLO WORLD

Page 207: Pragmatic Security and Rugged DevOps - SXSW 2015
Page 208: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

LAB #4 - BASIC PORT CHECK

Page 209: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

LAB INSTRUCTIONS

For this lab, you will complete:├── 06_Port Check.md

Page 210: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 211: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

$ nmap -F localhost $ nmap -F scanme.nmap.org

TRY OUT NMAP

Page 212: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 213: Pragmatic Security and Rugged DevOps - SXSW 2015

@challenge @slow Feature: check to make sure the right ports are open on our server

Background: Given "nmap" is installed And the following profile: | name | value | | host | localhost |

Scenario: Verify server is open on expected ports When I launch an "nmap" attack with: """ nmap -F <host> """ # Then ... # TODO: figure out a way to parse the output and determine what is passing # For hints consult the README.md

Page 214: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

$ bundle exec gauntlt --allsteps

Page 215: Pragmatic Security and Rugged DevOps - SXSW 2015

@final @slow Feature: check to make sure the right ports are open on our server

Background: Given "nmap" is installed And the following profile: | name | value | | host | localhost |

Scenario: Verify server is open on expected ports When I launch an "nmap" attack with: """ nmap -F <host> """ Then the output should contain: """ 8008 """

SOLUTION

Page 216: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

LAB #5 - CLI AND REGEX

Page 217: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

LAB INSTRUCTIONS

For this lab, you will complete:├── 07_Working with Gauntlt CLI.md

├── 08_Regex.md

Page 218: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Open 07_Working with Gauntlt CLI.md and run the following:

Page 219: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

08_Regex.md

Page 220: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Then the output should match: """ 8008\/tcp\s+open """ Then the output should not match /3001.tcp\s+open/

SOLUTION

Page 221: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

LAB #6 - GARMR

Page 222: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

LAB INSTRUCTIONS

For this lab, you will complete:├── 09_Garmr and Web Security.md

Page 223: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WHAT IS GARMR?

Page 224: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

GARMR IS A SCRIPT FROM MOZILLA THAT CHECKS FOR A

BUNCH OF SECURITY POLICIES IN WEB APPS

Page 225: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

MOZILLA SECURITY POLICY DISTILLED FOR THE REST OF US

Page 226: Pragmatic Security and Rugged DevOps - SXSW 2015
Page 227: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

LAB #7 - XSS WITH ARACHNI

Page 228: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

LAB INSTRUCTIONS

For this lab, you will complete:├── 10_Arachni and XSS testing.md

Page 229: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

XSS LAB!

Page 230: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

arachni --modules=xss --depth=1 \ --link-count=10 --auto-redundant=2 \ scanme.nmap.org

TRY OUT ARACHNI

Page 231: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

BONUS POINTS, FIND THE VULN!

Page 232: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Hint….

When I launch an "arachni-full_xss" attack

Page 233: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

LET US KNOW WHEN YOU HAVE FOUND IT

Page 234: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Arachni found XSS in Gruyere, Oh noes!localhost:8008/signup/<script>alert(1)</script>

Page 235: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

LAB #8 - ADVANCED GAUNTLT

Page 236: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

LAB INSTRUCTIONS

For this lab, you will complete:├── 11_Assert Network.md

├── 12_Output to HTML.md

└── 13_Working with Environment Variables.md

Page 237: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 238: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

bundle exec gauntlt --format html > out.html

HTML OUTPUT

Page 239: Pragmatic Security and Rugged DevOps - SXSW 2015

out.html

Page 240: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 241: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

RUGGED TESTING ON EVERY COMMIT

Page 242: Pragmatic Security and Rugged DevOps - SXSW 2015
Page 243: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

WE HAVE BEEN DOING CONTINUOUS INTEGRATION WITH GAUNTLT THIS

WHOLE TIME WITH THE LABS!

Page 244: Pragmatic Security and Rugged DevOps - SXSW 2015
Page 245: Pragmatic Security and Rugged DevOps - SXSW 2015
Page 246: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

SAHWEET!

Page 247: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

YOU VERY OWN BUILD SYSTEM

Page 248: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

bit.ly/secure-pipeline-lab0

Page 249: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

YOU NEED: GITHUB ACCOUNT

TRAVIS CI ACCOUNT

Page 250: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

FORK THE REPO

Page 251: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 252: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 253: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 254: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

YOU SHOULD HAVE: A FORK OF THE REPO

UNDERSTANDING OF TRAVIS.YML

Page 255: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

bit.ly/secure-pipeline-lab1

Page 256: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

IN TRAVIS CI SET THE REPO TO ‘ON’

In Travis CI set the repo to ‘ON’

Page 257: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

ADD THE TRAVIS BADGE IN README.md

Page 258: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

ADD THE TRAVIS BADGE IN README.md

Page 259: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 260: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 261: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 262: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 263: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

READ THE RAKEFILErails-travis-example/Rakefile

Page 264: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 265: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 266: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 267: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 268: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

HOMEWORK / EXTRAS

Page 269: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

Page 270: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

http://localhost:3000

Page 271: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

<script>alert('The Obligatory XSS Popup');</script>

Page 272: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

arachni http://localhost:3000 \ --plugin=autologin:url=http://localhost:3000/users/ sign_in,params='user[email][email protected]&user[passwo rd]=testtest',check='Logout \[email protected]' \ -e /users/sign_out

http://support.arachni-scanner.com/kb/general-use/logging-in-and-maintaining-a-valid-session

Page 273: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

@WICKETT // @MATTJAY

BRAKEMAN

Page 274: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

NOW WHAT?

Page 275: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

50% OFF GAUNTLT BOOK FOR SXSW ATTENDEES!

leanpub.com/hands-on-gauntlt/c/50percentoff

Page 276: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

Google Group > groups.google.com/d/forum/gauntltWiki > github.com/gauntlt/gauntlt/wikiTwitter > @gauntltIRC > #gauntlt on freenodeIssue tracking > github.com/gauntlt/gauntlt

Page 277: Pragmatic Security and Rugged DevOps - SXSW 2015

#SXSW #RUGGEDCODE

QUESTIONS?