SlideShare a Scribd company logo
The 5 Stages of Secrets Management Grief
(And How to Prevail)
Josh Bregman
Conjur
Josh has 20 years experience successfully architecting, evangelizing, and delivering
innovative identity management and security products to customers. Prior to joining
Conjur , Josh spent a decade as a solutions and pre-sales leader in the Oracle ecosystem. A
developer at heart, early in his career Josh worked as a software engineer at IBM, GTE
Labs, and Netegrity. He has 3 U.S. patents and received a B.A. in Math from the University
of Rochester in 1995.
Thanks
Dave!
Denial - We don’t have a problem
Anger - Why is this my problem?
Bargaining - A series of trade-offs?
Depression - This isn’t fixed?
Acceptance - We have a problem
Denial - We don’t have a problem
Anger - Why is this my problem?
Bargaining - A series of trade-offs?
Depression - This isn’t fixed?
Acceptance - We have a problem
You’re at Puppet Camp, so your
infrastructure is coded, and
your code is in source control.
class { 'wordpress':
db_user => 'wordpress',
db_password => 'hvyH(S%t("0"16',
db_host => 'db.example.com',
create_db => false,
create_db_user => false,
}
If you put your secrets in
source control, then anyone
who has access to the repo can
access all the secrets.
3/10/16
“Searching GitHub for AWS and
Azure credentials reveals that many
people are making the same
mistake as Ashley Madison, Uber
and D-Link.”
“Ashley Madison’s leaked code
included hard-coded AWS tokens,
database credentials, certificate
private keys and other credentials.
“Uber had a database containing
personal information about drivers
compromised in 2014, after storing
the key in a publicly available
repo”
“...and D-Link recently published its
private code signing keys in the
open source code for a firmware
update.”
“Your cloud credentials are likely to
end up subsidizing Bitcoin miners, who
scan GitHub for keys and use them to
run up hundreds or thousands of
dollars of bills.”
(Sound of everyone
making sure that repo
is private)
Should everyone at your
company who has read access
to the repo have access to the
database?
If you put your secrets in
source control, then anyone
who has access to the repo can
access all the secrets.
Denial - We don’t have a problem
Anger - Why is it my problem?
Bargaining - A Series of Trade-offs?
Depression - This isn’t fixed?
Acceptance - We have a problem
Typical conversation BEFORE
something bad happens…
20
Question to Information Security:
I’m concerned that storing secrets in
source control isn’t safe. Is there a
recommended approach that I should
be following?
21
Answer from Information Security:
We’re super busy right now
protecting the company from APT,
passing our ISO 27001 audit, and
assessing our compliance NIST CSF…
22
Question to Information Security:
Well, this initiative is super important
to the business. Is there anything that
you can recommend?
23
Answer from Information Security:
We’ll we have an existing system that
we use to manage privileged
accounts. You just open a
ServiceNow ticket and…
24
That’s OK….we’ll just figure it out
25
Typical conversation AFTER
something bad happens…
26
“I’m going to automate those *@!
out of a job.” – Anonymous DevOps
“Those *@! are running with
scissors” – Anonymous InfoSec
27
Few organizations practice blame
free post-mortems, if they are on the
front page of the Wall Street Journal.
This is a huge cultural change for
Information Security.
28
SecDevOps or DevSecOps or
RuggedDevOps are all terms for the
inclusion of information security in
the DevOps workflow
29
Automated testing that includes
security tests like code scanning,
application security testing,
automated patching of vulnerabilities
are all pretty easy…
30
…because they can be added without
the direct cooperation of information
security teams.
31
Question: How many people here
have information security
professionals as part of their DevOps
teams?
32
Question: How many people here
ACTIVELY seek out the information
security professionals in their
organization?
33
NIST CyberSecurity Framework - The
Framework Implementation Tiers
(“Tiers”) provide context on how an
organization views
cybersecurity risk and the processes
34
NIST CSF Tiers:
Tier 1 -> Partial
Tier 2 -> Risk Informed
Tier 3 -> Repeatable
Tier 4 -> Adaptive
35
Go Find your Security Engineering
Team. This is the team that owns
and operates security solutions. Tell
them you can help them with
automation.
36
Denial - We don’t have a problem
Anger - It’s their fault!
Bargaining - A Series of Trade-offs?
Depression - This isn’t fixed?
Acceptance - We have a problem
Two main camps on secrets
management with Puppet: Masterful
and Masterless
Masterful: I’m OK if all of my secrets
are on the master; my master is a
hardened command bunker.
Masterless: Secrets are ‘need to
know’ and my master doesn’t.
The “Masterful” approaches can be
accomplished with little commitment
from information security.
If you don’t engage them, and
something goes wrong, it’s all on you.
Masterful - E-Yaml
If you use E-YAML, secrets are
encrypted in source control, and in
the catalog.
If you use E-YAML, you have to figure
out how to secure the keys, and
rotate the keys, and work with
encrypted files...
Another “Masterful” approach that
some customers use is to deploy
separate Production and Non-
Production Puppet Masters
This keeps production information
limited to only those that need
access to production. By design, this
pattern makes Continuous Delivery
hard.
If you use DSL extensions or Hiera
backend, then secrets are in the
catalog, but not in source control.
Retrieves a Secret from Conjur
programmatically
https://github.com/dgrstl/puppet_conjurdemo/blob/master/lib/
puppet/functions/conjur_secret.rb
See it in action
https://github.com/dgrstl/puppet_conjurdemo/
blob/master/tests/notify.pp
Masterless approach - a.k.a - Node
Side Secrets - secrets aren’t in source
control and they are not on the
master
Scenario 1 - Write a configuration file
on the node that has a list of secrets
Puppet::conjur_demo {‘/opt/foo.conf’:
secrets =>
[‘/production/db/user’,
’/production/db/password’],
}
Scenario 2 - Control the value of an
attribute via Conjur
Puppet::conjurdemo_secert_value { ‘foo’:
secret_key_name => ‘bar’,
resource => Wordpress[‘server1’],
field => ‘db_password’,
}
datacat_collector { "$title Conjur secret":
template_body =>
template('puppet_conjurdemo/conjur_simple_secret.erb'),
target_resource => $resource,
target_field => $field,
notify => $resource,
}
<%% require 'conjur/cli'
require 'yaml'
Conjur::Config.load
Conjur::Config.apply
api = Conjur::Authn.connect
-%>
<% @secrets.each do |secret_key| %>
<%% secret = api.variable "<%=secret_key%>" %><%=secret_key%> =
<%%=secret.value-%>
<%end%>
Want to learn more?
Request a Conjur Demo
Denial - We don’t have a problem
Anger - It’s their fault!
Bargaining - A Series of Trade-offs?
Depression - This isn’t fixed?
Acceptance - We have a problem
In both the masterful and masterless
models, the secrets wind up on the
nodes.
This represents a whole new threat
surface - a way that your secret
information can be compromised
Applications and services, not just
infrastructure also need access to
credentials. And applications are
stored in source control.
Summon is an open-source project
that allows for the retrieval of secrets
safely without checking the secrets
into source control
Summon works well with 12 factor
apps - those that expect to get their
configuration from the environment -
e.g. Java Application
secrets.yaml
MYSECRET: !var secret/path
MYSECRET2: !var secret/path2
USAGE:
summon [global options] command
[command options] [arguments...]
Ex: summon -f /opt/secrets.yaml
printenv
Supports simple provider interface
variable = sys.argv[1]
value = keyring.get_password(
os.environ.get('SUMMON_KEYRING_SERVICE', 'summon'),
variable
)
https://github.com/jbregman/puppet-
summon/tree/master/jbregman-summon/tests
Test 1 - Simple secrets.yaml
Test 1a - Parameterized secrets.yaml
Test 2a - Creating Config
Test 3 - facter
Denial - We don’t have a problem
Anger - It’s their fault!
Bargaining - A Series of Trade-offs?
Depression - This isn’t fixed?
Acceptance - We have a problem
This is an evolution from the Conjur Puppet
integration that I presented at Puppet Conf in
2015
Integration with Puppet is an
important but emerging area. These
modules and repos are works in
progress.
Customers are very interested in
additional capabilities such as
rotation, versioning, secure service
lifecycle
Resources:
https://github.com/dgrstl/puppet_conjurdemo
https://puppetlabs.com/blog/using-node-side-
secrets-with-puppet
https://conjurinc.github.io/summon/
Call to action:
• Have a discussion “Are we a
masterless or masterful shop?”
• Make friends with information
security
QUESTIONS?
Want to learn more?
Request a Conjur Demo
THANK
YOU

More Related Content

What's hot

Stephen Sadowski - Securely automating infrastructure in the cloud
Stephen Sadowski - Securely automating infrastructure in the cloudStephen Sadowski - Securely automating infrastructure in the cloud
Stephen Sadowski - Securely automating infrastructure in the cloud
DevSecCon
 
Elizabeth Lawler - Devops, security, and compliance working in unison
Elizabeth Lawler - Devops, security, and compliance working in unisonElizabeth Lawler - Devops, security, and compliance working in unison
Elizabeth Lawler - Devops, security, and compliance working in unison
DevSecCon
 
The Teams Behind DevSecOps
The Teams Behind DevSecOps The Teams Behind DevSecOps
The Teams Behind DevSecOps
Uleska
 
A Throwaway Deck for Cloud Security Essentials 2.0 delivered at RSA 2016
A Throwaway Deck for Cloud Security Essentials 2.0 delivered at RSA 2016A Throwaway Deck for Cloud Security Essentials 2.0 delivered at RSA 2016
A Throwaway Deck for Cloud Security Essentials 2.0 delivered at RSA 2016
Shannon Lietz
 
DevSecOps: Minimizing Risk, Improving Security
DevSecOps: Minimizing Risk, Improving SecurityDevSecOps: Minimizing Risk, Improving Security
DevSecOps: Minimizing Risk, Improving Security
Franklin Mosley
 
DevSecOps in Baby Steps
DevSecOps in Baby StepsDevSecOps in Baby Steps
DevSecOps in Baby Steps
Priyanka Aash
 
Finding Security a Home in a DevOps World
Finding Security a Home in a DevOps WorldFinding Security a Home in a DevOps World
Finding Security a Home in a DevOps World
Shannon Lietz
 
DevSecCon KeyNote London 2015
DevSecCon KeyNote London 2015DevSecCon KeyNote London 2015
DevSecCon KeyNote London 2015
Shannon Lietz
 
You Build It, You Secure It: Introduction to DevSecOps
You Build It, You Secure It: Introduction to DevSecOpsYou Build It, You Secure It: Introduction to DevSecOps
You Build It, You Secure It: Introduction to DevSecOps
Sumo Logic
 
S360 2015 dev_secops_program
S360 2015 dev_secops_programS360 2015 dev_secops_program
S360 2015 dev_secops_program
Shannon Lietz
 
The Journey to DevSecOps
The Journey to DevSecOpsThe Journey to DevSecOps
The Journey to DevSecOps
SeniorStoryteller
 
Security as Code owasp
Security as  Code owaspSecurity as  Code owasp
Security as Code owasp
Shannon Lietz
 
ChaoSlingr: Introducing Security-Based Chaos Testing
ChaoSlingr: Introducing Security-Based Chaos TestingChaoSlingr: Introducing Security-Based Chaos Testing
ChaoSlingr: Introducing Security-Based Chaos Testing
Priyanka Aash
 
Pivotal APJ Security Chaos Engineering
Pivotal APJ Security Chaos EngineeringPivotal APJ Security Chaos Engineering
Pivotal APJ Security Chaos Engineering
Aaron Rinehart
 
DevSecOps Days Istanbul 2020 Security Chaos Engineering
DevSecOps Days Istanbul 2020 Security Chaos EngineeringDevSecOps Days Istanbul 2020 Security Chaos Engineering
DevSecOps Days Istanbul 2020 Security Chaos Engineering
Aaron Rinehart
 
HealthConDX Virtual Summit 2021 - How Security Chaos Engineering is Changing ...
HealthConDX Virtual Summit 2021 - How Security Chaos Engineering is Changing ...HealthConDX Virtual Summit 2021 - How Security Chaos Engineering is Changing ...
HealthConDX Virtual Summit 2021 - How Security Chaos Engineering is Changing ...
Aaron Rinehart
 
VMWare Tech Talk: "The Road from Rugged DevOps to Security Chaos Engineering"
VMWare Tech Talk: "The Road from Rugged DevOps to Security Chaos Engineering"VMWare Tech Talk: "The Road from Rugged DevOps to Security Chaos Engineering"
VMWare Tech Talk: "The Road from Rugged DevOps to Security Chaos Engineering"
Aaron Rinehart
 
Blameless Retrospectives in DevSecOps (at Global Healthcare Giants)
Blameless Retrospectives in DevSecOps (at Global Healthcare Giants)Blameless Retrospectives in DevSecOps (at Global Healthcare Giants)
Blameless Retrospectives in DevSecOps (at Global Healthcare Giants)
DJ Schleen
 
Overcoming Security Challenges in DevOps
Overcoming Security Challenges in DevOpsOvercoming Security Challenges in DevOps
Overcoming Security Challenges in DevOps
Alert Logic
 
Red team-view-gaps-in-the-serverless-application-attack-surface
Red team-view-gaps-in-the-serverless-application-attack-surfaceRed team-view-gaps-in-the-serverless-application-attack-surface
Red team-view-gaps-in-the-serverless-application-attack-surface
Priyanka Aash
 

What's hot (20)

Stephen Sadowski - Securely automating infrastructure in the cloud
Stephen Sadowski - Securely automating infrastructure in the cloudStephen Sadowski - Securely automating infrastructure in the cloud
Stephen Sadowski - Securely automating infrastructure in the cloud
 
Elizabeth Lawler - Devops, security, and compliance working in unison
Elizabeth Lawler - Devops, security, and compliance working in unisonElizabeth Lawler - Devops, security, and compliance working in unison
Elizabeth Lawler - Devops, security, and compliance working in unison
 
The Teams Behind DevSecOps
The Teams Behind DevSecOps The Teams Behind DevSecOps
The Teams Behind DevSecOps
 
A Throwaway Deck for Cloud Security Essentials 2.0 delivered at RSA 2016
A Throwaway Deck for Cloud Security Essentials 2.0 delivered at RSA 2016A Throwaway Deck for Cloud Security Essentials 2.0 delivered at RSA 2016
A Throwaway Deck for Cloud Security Essentials 2.0 delivered at RSA 2016
 
DevSecOps: Minimizing Risk, Improving Security
DevSecOps: Minimizing Risk, Improving SecurityDevSecOps: Minimizing Risk, Improving Security
DevSecOps: Minimizing Risk, Improving Security
 
DevSecOps in Baby Steps
DevSecOps in Baby StepsDevSecOps in Baby Steps
DevSecOps in Baby Steps
 
Finding Security a Home in a DevOps World
Finding Security a Home in a DevOps WorldFinding Security a Home in a DevOps World
Finding Security a Home in a DevOps World
 
DevSecCon KeyNote London 2015
DevSecCon KeyNote London 2015DevSecCon KeyNote London 2015
DevSecCon KeyNote London 2015
 
You Build It, You Secure It: Introduction to DevSecOps
You Build It, You Secure It: Introduction to DevSecOpsYou Build It, You Secure It: Introduction to DevSecOps
You Build It, You Secure It: Introduction to DevSecOps
 
S360 2015 dev_secops_program
S360 2015 dev_secops_programS360 2015 dev_secops_program
S360 2015 dev_secops_program
 
The Journey to DevSecOps
The Journey to DevSecOpsThe Journey to DevSecOps
The Journey to DevSecOps
 
Security as Code owasp
Security as  Code owaspSecurity as  Code owasp
Security as Code owasp
 
ChaoSlingr: Introducing Security-Based Chaos Testing
ChaoSlingr: Introducing Security-Based Chaos TestingChaoSlingr: Introducing Security-Based Chaos Testing
ChaoSlingr: Introducing Security-Based Chaos Testing
 
Pivotal APJ Security Chaos Engineering
Pivotal APJ Security Chaos EngineeringPivotal APJ Security Chaos Engineering
Pivotal APJ Security Chaos Engineering
 
DevSecOps Days Istanbul 2020 Security Chaos Engineering
DevSecOps Days Istanbul 2020 Security Chaos EngineeringDevSecOps Days Istanbul 2020 Security Chaos Engineering
DevSecOps Days Istanbul 2020 Security Chaos Engineering
 
HealthConDX Virtual Summit 2021 - How Security Chaos Engineering is Changing ...
HealthConDX Virtual Summit 2021 - How Security Chaos Engineering is Changing ...HealthConDX Virtual Summit 2021 - How Security Chaos Engineering is Changing ...
HealthConDX Virtual Summit 2021 - How Security Chaos Engineering is Changing ...
 
VMWare Tech Talk: "The Road from Rugged DevOps to Security Chaos Engineering"
VMWare Tech Talk: "The Road from Rugged DevOps to Security Chaos Engineering"VMWare Tech Talk: "The Road from Rugged DevOps to Security Chaos Engineering"
VMWare Tech Talk: "The Road from Rugged DevOps to Security Chaos Engineering"
 
Blameless Retrospectives in DevSecOps (at Global Healthcare Giants)
Blameless Retrospectives in DevSecOps (at Global Healthcare Giants)Blameless Retrospectives in DevSecOps (at Global Healthcare Giants)
Blameless Retrospectives in DevSecOps (at Global Healthcare Giants)
 
Overcoming Security Challenges in DevOps
Overcoming Security Challenges in DevOpsOvercoming Security Challenges in DevOps
Overcoming Security Challenges in DevOps
 
Red team-view-gaps-in-the-serverless-application-attack-surface
Red team-view-gaps-in-the-serverless-application-attack-surfaceRed team-view-gaps-in-the-serverless-application-attack-surface
Red team-view-gaps-in-the-serverless-application-attack-surface
 

Similar to The 5 Stages of Secrets Management Grief, And How to Prevail

Truth and Consequences
Truth and ConsequencesTruth and Consequences
Truth and Consequences
Mohammed Almeshekah
 
Bounty Craft: Bug bounty reports how do they work, @sushihack presents at Nu...
Bounty Craft: Bug bounty reports  how do they work, @sushihack presents at Nu...Bounty Craft: Bug bounty reports  how do they work, @sushihack presents at Nu...
Bounty Craft: Bug bounty reports how do they work, @sushihack presents at Nu...
HackerOne
 
Fraud Engineering, from Merchant Risk Council Annual Meeting 2012
Fraud Engineering, from Merchant Risk Council Annual Meeting 2012Fraud Engineering, from Merchant Risk Council Annual Meeting 2012
Fraud Engineering, from Merchant Risk Council Annual Meeting 2012
Nick Galbreath
 
Sec devops 2.0 managing your robot army - final
Sec devops 2.0  managing your robot army - finalSec devops 2.0  managing your robot army - final
Sec devops 2.0 managing your robot army - final
Josh Bregman
 
SecDevOps 2.0 - Managing Your Robot Army
SecDevOps 2.0 - Managing Your Robot ArmySecDevOps 2.0 - Managing Your Robot Army
SecDevOps 2.0 - Managing Your Robot Army
conjur_inc
 
Bad Advice, Unintended Consequences, and Broken Paradigms: Think & Act Di...
Bad Advice, Unintended Consequences, and Broken Paradigms: Think & Act Di...Bad Advice, Unintended Consequences, and Broken Paradigms: Think & Act Di...
Bad Advice, Unintended Consequences, and Broken Paradigms: Think & Act Di...
Steve Werby
 
The Most Important Thing: How Mozilla Does Security and What You Can Steal
The Most Important Thing: How Mozilla Does Security and What You Can StealThe Most Important Thing: How Mozilla Does Security and What You Can Steal
The Most Important Thing: How Mozilla Does Security and What You Can Steal
mozilla.presentations
 
Designing for Data Security by Karen Lopez
Designing for Data Security by Karen LopezDesigning for Data Security by Karen Lopez
Designing for Data Security by Karen Lopez
Karen Lopez
 
Mere Paas Teensy Hai (Nikhil Mittal)
Mere Paas Teensy Hai (Nikhil Mittal)Mere Paas Teensy Hai (Nikhil Mittal)
Mere Paas Teensy Hai (Nikhil Mittal)
ClubHack
 
Leveraging Diversity to Find What Works and Amplify
Leveraging Diversity to Find What Works and Amplify Leveraging Diversity to Find What Works and Amplify
Leveraging Diversity to Find What Works and Amplify
Mike Cardus
 
ConnXus myCBC Webinar Series: Cybersecurity Risks to Your Business
ConnXus myCBC Webinar Series: Cybersecurity Risks to Your BusinessConnXus myCBC Webinar Series: Cybersecurity Risks to Your Business
ConnXus myCBC Webinar Series: Cybersecurity Risks to Your Business
ConnXus
 
A Big Dashboard of Problems.pdf
A Big Dashboard of Problems.pdfA Big Dashboard of Problems.pdf
A Big Dashboard of Problems.pdf
TravisMcPeak1
 
232 a7d01
232 a7d01232 a7d01
Outpost24 webinar: Security Analytics: what's in a risk score
Outpost24 webinar: Security Analytics: what's in a risk scoreOutpost24 webinar: Security Analytics: what's in a risk score
Outpost24 webinar: Security Analytics: what's in a risk score
Outpost24
 
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
Nick Galbreath
 
Prevent Getting Hacked by Using a Network Vulnerability Scanner
Prevent Getting Hacked by Using a Network Vulnerability ScannerPrevent Getting Hacked by Using a Network Vulnerability Scanner
Prevent Getting Hacked by Using a Network Vulnerability Scanner
GFI Software
 
Corona| COVID IT Tactical Security Preparedness: Threat Management
Corona| COVID IT Tactical Security Preparedness: Threat ManagementCorona| COVID IT Tactical Security Preparedness: Threat Management
Corona| COVID IT Tactical Security Preparedness: Threat Management
RedZone Technologies
 
Cloud Security - Idealware
Cloud Security - IdealwareCloud Security - Idealware
Cloud Security - Idealware
Idealware
 
Common Sense Security Framework
Common Sense Security FrameworkCommon Sense Security Framework
Common Sense Security Framework
Jerod Brennen
 
O'Reilly SACon 2019 - (Continuous) Threat Modeling - What works?
O'Reilly SACon 2019 - (Continuous) Threat Modeling - What works?O'Reilly SACon 2019 - (Continuous) Threat Modeling - What works?
O'Reilly SACon 2019 - (Continuous) Threat Modeling - What works?
Izar Tarandach
 

Similar to The 5 Stages of Secrets Management Grief, And How to Prevail (20)

Truth and Consequences
Truth and ConsequencesTruth and Consequences
Truth and Consequences
 
Bounty Craft: Bug bounty reports how do they work, @sushihack presents at Nu...
Bounty Craft: Bug bounty reports  how do they work, @sushihack presents at Nu...Bounty Craft: Bug bounty reports  how do they work, @sushihack presents at Nu...
Bounty Craft: Bug bounty reports how do they work, @sushihack presents at Nu...
 
Fraud Engineering, from Merchant Risk Council Annual Meeting 2012
Fraud Engineering, from Merchant Risk Council Annual Meeting 2012Fraud Engineering, from Merchant Risk Council Annual Meeting 2012
Fraud Engineering, from Merchant Risk Council Annual Meeting 2012
 
Sec devops 2.0 managing your robot army - final
Sec devops 2.0  managing your robot army - finalSec devops 2.0  managing your robot army - final
Sec devops 2.0 managing your robot army - final
 
SecDevOps 2.0 - Managing Your Robot Army
SecDevOps 2.0 - Managing Your Robot ArmySecDevOps 2.0 - Managing Your Robot Army
SecDevOps 2.0 - Managing Your Robot Army
 
Bad Advice, Unintended Consequences, and Broken Paradigms: Think & Act Di...
Bad Advice, Unintended Consequences, and Broken Paradigms: Think & Act Di...Bad Advice, Unintended Consequences, and Broken Paradigms: Think & Act Di...
Bad Advice, Unintended Consequences, and Broken Paradigms: Think & Act Di...
 
The Most Important Thing: How Mozilla Does Security and What You Can Steal
The Most Important Thing: How Mozilla Does Security and What You Can StealThe Most Important Thing: How Mozilla Does Security and What You Can Steal
The Most Important Thing: How Mozilla Does Security and What You Can Steal
 
Designing for Data Security by Karen Lopez
Designing for Data Security by Karen LopezDesigning for Data Security by Karen Lopez
Designing for Data Security by Karen Lopez
 
Mere Paas Teensy Hai (Nikhil Mittal)
Mere Paas Teensy Hai (Nikhil Mittal)Mere Paas Teensy Hai (Nikhil Mittal)
Mere Paas Teensy Hai (Nikhil Mittal)
 
Leveraging Diversity to Find What Works and Amplify
Leveraging Diversity to Find What Works and Amplify Leveraging Diversity to Find What Works and Amplify
Leveraging Diversity to Find What Works and Amplify
 
ConnXus myCBC Webinar Series: Cybersecurity Risks to Your Business
ConnXus myCBC Webinar Series: Cybersecurity Risks to Your BusinessConnXus myCBC Webinar Series: Cybersecurity Risks to Your Business
ConnXus myCBC Webinar Series: Cybersecurity Risks to Your Business
 
A Big Dashboard of Problems.pdf
A Big Dashboard of Problems.pdfA Big Dashboard of Problems.pdf
A Big Dashboard of Problems.pdf
 
232 a7d01
232 a7d01232 a7d01
232 a7d01
 
Outpost24 webinar: Security Analytics: what's in a risk score
Outpost24 webinar: Security Analytics: what's in a risk scoreOutpost24 webinar: Security Analytics: what's in a risk score
Outpost24 webinar: Security Analytics: what's in a risk score
 
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
 
Prevent Getting Hacked by Using a Network Vulnerability Scanner
Prevent Getting Hacked by Using a Network Vulnerability ScannerPrevent Getting Hacked by Using a Network Vulnerability Scanner
Prevent Getting Hacked by Using a Network Vulnerability Scanner
 
Corona| COVID IT Tactical Security Preparedness: Threat Management
Corona| COVID IT Tactical Security Preparedness: Threat ManagementCorona| COVID IT Tactical Security Preparedness: Threat Management
Corona| COVID IT Tactical Security Preparedness: Threat Management
 
Cloud Security - Idealware
Cloud Security - IdealwareCloud Security - Idealware
Cloud Security - Idealware
 
Common Sense Security Framework
Common Sense Security FrameworkCommon Sense Security Framework
Common Sense Security Framework
 
O'Reilly SACon 2019 - (Continuous) Threat Modeling - What works?
O'Reilly SACon 2019 - (Continuous) Threat Modeling - What works?O'Reilly SACon 2019 - (Continuous) Threat Modeling - What works?
O'Reilly SACon 2019 - (Continuous) Threat Modeling - What works?
 

Recently uploaded

KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
XfilesPro
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
kalichargn70th171
 
Lecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptxLecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptx
TaghreedAltamimi
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
Grant Fritchey
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
Green Software Development
 
zOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL DifferenceszOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL Differences
YousufSait3
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
Sven Peters
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
dakas1
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
Alina Yurenko
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
Peter Muessig
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
Remote DBA Services
 
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfTop Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
VALiNTRY360
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
Peter Muessig
 
Project Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdfProject Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdf
Karya Keeper
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Julian Hyde
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !
Marcin Chrost
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 

Recently uploaded (20)

KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
 
Lecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptxLecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptx
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
 
zOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL DifferenceszOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL Differences
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
 
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfTop Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
 
Project Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdfProject Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdf
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 

The 5 Stages of Secrets Management Grief, And How to Prevail

  • 1. The 5 Stages of Secrets Management Grief (And How to Prevail) Josh Bregman Conjur
  • 2. Josh has 20 years experience successfully architecting, evangelizing, and delivering innovative identity management and security products to customers. Prior to joining Conjur , Josh spent a decade as a solutions and pre-sales leader in the Oracle ecosystem. A developer at heart, early in his career Josh worked as a software engineer at IBM, GTE Labs, and Netegrity. He has 3 U.S. patents and received a B.A. in Math from the University of Rochester in 1995.
  • 4. Denial - We don’t have a problem Anger - Why is this my problem? Bargaining - A series of trade-offs? Depression - This isn’t fixed? Acceptance - We have a problem
  • 5. Denial - We don’t have a problem Anger - Why is this my problem? Bargaining - A series of trade-offs? Depression - This isn’t fixed? Acceptance - We have a problem
  • 6. You’re at Puppet Camp, so your infrastructure is coded, and your code is in source control.
  • 7. class { 'wordpress': db_user => 'wordpress', db_password => 'hvyH(S%t("0"16', db_host => 'db.example.com', create_db => false, create_db_user => false, }
  • 8. If you put your secrets in source control, then anyone who has access to the repo can access all the secrets.
  • 10. “Searching GitHub for AWS and Azure credentials reveals that many people are making the same mistake as Ashley Madison, Uber and D-Link.”
  • 11. “Ashley Madison’s leaked code included hard-coded AWS tokens, database credentials, certificate private keys and other credentials.
  • 12. “Uber had a database containing personal information about drivers compromised in 2014, after storing the key in a publicly available repo”
  • 13. “...and D-Link recently published its private code signing keys in the open source code for a firmware update.”
  • 14. “Your cloud credentials are likely to end up subsidizing Bitcoin miners, who scan GitHub for keys and use them to run up hundreds or thousands of dollars of bills.”
  • 15. (Sound of everyone making sure that repo is private)
  • 16. Should everyone at your company who has read access to the repo have access to the database?
  • 17.
  • 18. If you put your secrets in source control, then anyone who has access to the repo can access all the secrets.
  • 19. Denial - We don’t have a problem Anger - Why is it my problem? Bargaining - A Series of Trade-offs? Depression - This isn’t fixed? Acceptance - We have a problem
  • 21. Question to Information Security: I’m concerned that storing secrets in source control isn’t safe. Is there a recommended approach that I should be following? 21
  • 22. Answer from Information Security: We’re super busy right now protecting the company from APT, passing our ISO 27001 audit, and assessing our compliance NIST CSF… 22
  • 23. Question to Information Security: Well, this initiative is super important to the business. Is there anything that you can recommend? 23
  • 24. Answer from Information Security: We’ll we have an existing system that we use to manage privileged accounts. You just open a ServiceNow ticket and… 24
  • 25. That’s OK….we’ll just figure it out 25
  • 27. “I’m going to automate those *@! out of a job.” – Anonymous DevOps “Those *@! are running with scissors” – Anonymous InfoSec 27
  • 28. Few organizations practice blame free post-mortems, if they are on the front page of the Wall Street Journal. This is a huge cultural change for Information Security. 28
  • 29. SecDevOps or DevSecOps or RuggedDevOps are all terms for the inclusion of information security in the DevOps workflow 29
  • 30. Automated testing that includes security tests like code scanning, application security testing, automated patching of vulnerabilities are all pretty easy… 30
  • 31. …because they can be added without the direct cooperation of information security teams. 31
  • 32. Question: How many people here have information security professionals as part of their DevOps teams? 32
  • 33. Question: How many people here ACTIVELY seek out the information security professionals in their organization? 33
  • 34. NIST CyberSecurity Framework - The Framework Implementation Tiers (“Tiers”) provide context on how an organization views cybersecurity risk and the processes 34
  • 35. NIST CSF Tiers: Tier 1 -> Partial Tier 2 -> Risk Informed Tier 3 -> Repeatable Tier 4 -> Adaptive 35
  • 36. Go Find your Security Engineering Team. This is the team that owns and operates security solutions. Tell them you can help them with automation. 36
  • 37. Denial - We don’t have a problem Anger - It’s their fault! Bargaining - A Series of Trade-offs? Depression - This isn’t fixed? Acceptance - We have a problem
  • 38. Two main camps on secrets management with Puppet: Masterful and Masterless
  • 39. Masterful: I’m OK if all of my secrets are on the master; my master is a hardened command bunker. Masterless: Secrets are ‘need to know’ and my master doesn’t.
  • 40. The “Masterful” approaches can be accomplished with little commitment from information security.
  • 41. If you don’t engage them, and something goes wrong, it’s all on you.
  • 43. If you use E-YAML, secrets are encrypted in source control, and in the catalog.
  • 44. If you use E-YAML, you have to figure out how to secure the keys, and rotate the keys, and work with encrypted files...
  • 45. Another “Masterful” approach that some customers use is to deploy separate Production and Non- Production Puppet Masters
  • 46. This keeps production information limited to only those that need access to production. By design, this pattern makes Continuous Delivery hard.
  • 47. If you use DSL extensions or Hiera backend, then secrets are in the catalog, but not in source control.
  • 48. Retrieves a Secret from Conjur programmatically https://github.com/dgrstl/puppet_conjurdemo/blob/master/lib/ puppet/functions/conjur_secret.rb
  • 49. See it in action https://github.com/dgrstl/puppet_conjurdemo/ blob/master/tests/notify.pp
  • 50. Masterless approach - a.k.a - Node Side Secrets - secrets aren’t in source control and they are not on the master
  • 51. Scenario 1 - Write a configuration file on the node that has a list of secrets
  • 53. Scenario 2 - Control the value of an attribute via Conjur
  • 54. Puppet::conjurdemo_secert_value { ‘foo’: secret_key_name => ‘bar’, resource => Wordpress[‘server1’], field => ‘db_password’, }
  • 55. datacat_collector { "$title Conjur secret": template_body => template('puppet_conjurdemo/conjur_simple_secret.erb'), target_resource => $resource, target_field => $field, notify => $resource, }
  • 56. <%% require 'conjur/cli' require 'yaml' Conjur::Config.load Conjur::Config.apply api = Conjur::Authn.connect -%> <% @secrets.each do |secret_key| %> <%% secret = api.variable "<%=secret_key%>" %><%=secret_key%> = <%%=secret.value-%> <%end%>
  • 57. Want to learn more? Request a Conjur Demo
  • 58. Denial - We don’t have a problem Anger - It’s their fault! Bargaining - A Series of Trade-offs? Depression - This isn’t fixed? Acceptance - We have a problem
  • 59. In both the masterful and masterless models, the secrets wind up on the nodes.
  • 60. This represents a whole new threat surface - a way that your secret information can be compromised
  • 61. Applications and services, not just infrastructure also need access to credentials. And applications are stored in source control.
  • 62. Summon is an open-source project that allows for the retrieval of secrets safely without checking the secrets into source control
  • 63. Summon works well with 12 factor apps - those that expect to get their configuration from the environment - e.g. Java Application
  • 65. USAGE: summon [global options] command [command options] [arguments...] Ex: summon -f /opt/secrets.yaml printenv
  • 66. Supports simple provider interface variable = sys.argv[1] value = keyring.get_password( os.environ.get('SUMMON_KEYRING_SERVICE', 'summon'), variable )
  • 67. https://github.com/jbregman/puppet- summon/tree/master/jbregman-summon/tests Test 1 - Simple secrets.yaml Test 1a - Parameterized secrets.yaml Test 2a - Creating Config Test 3 - facter
  • 68. Denial - We don’t have a problem Anger - It’s their fault! Bargaining - A Series of Trade-offs? Depression - This isn’t fixed? Acceptance - We have a problem
  • 69. This is an evolution from the Conjur Puppet integration that I presented at Puppet Conf in 2015
  • 70. Integration with Puppet is an important but emerging area. These modules and repos are works in progress.
  • 71. Customers are very interested in additional capabilities such as rotation, versioning, secure service lifecycle
  • 73. Call to action: • Have a discussion “Are we a masterless or masterful shop?” • Make friends with information security
  • 75. Want to learn more? Request a Conjur Demo