SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
SECURE BY DESIGN
Security Design Principles for the Rest of Us

GOTO London 2016
Eoin Woods - Endava

@eoinwoodz
1
BACKGROUND
• Eoin Woods
• CTO at Endava (technology services, 3300 people)
• 10 years in product development - Bull, Sybase, InterTrust
• 10 years in capital markets applications - UBS and BGI
• Software engineer, then architect, now CTO
• Author, editor, speaker, community guy
2
CONTENT
• What is security and why do we care?
• What are design principles, why are they useful?
• Security design principles
• 10 important principles useful in practice
3
REVISITING SECURITY
• We all know security is important - but why?
• protection against malice, mistakes and mischance
• theft, fraud, destruction, disruption
• Security is a risk management business
• loss of time, money, privacy, reputation, advantage
• insurance model - balance costs against risk of loss
4
ASPECTS OF SECURITY PRACTICE
Secure Application Design
Secure Application
Implementation
Secure Infrastructure
Design
Secure Infrastructure
Deployment
Secure System Operation
5
SECURITY DESIGN PRINCIPLES
What is a “principle” ?
a fundamental truth or proposition serving as the foundation for
belief or action [OED]
We define a security design principle as ….
a declarative statement made with the intention of guiding
security design decisions in order to meet the goals of a system
6
SECURITY DESIGN PRINCIPLES
• There are many sets of security design principles
• Viega & McGraw (10), OWASP (10), NIST (33), NCSC
(44), Cliff Berg’s set (185) …
• Many similarities between them at fundamental level
• I have distilled 10 key principles as a basic set
• these are brief summaries for slide presentation
• www.viewpoints-and-perspectives.info
7
A SYSTEMTO BE SECURED
8
TEN KEY SECURITY PRINCIPLES
• Assign the least privilege
possible
• Separate responsibilities
• Trust cautiously
• Simplest solution possible

• Audit sensitive events
• Fail securely & use secure
defaults
• Never rely upon obscurity
• Implement defence in depth
• Never invent security
technology
• Find the weakest link
9
LEAST PRIVILEGE
Why?
Broad privileges allow malicious or accidental access to
protected resources
Principle Limit privileges to the minimum for the context
Tradeoff Less convenient, less efficient, more complexity
Example
Run server processes as their own users with exactly
the set of privileges they require
10
SEPARATE RESPONSIBILITIES
Why?
Achieve control and accountability, limit the impact of
successful attacks, make attacks less attractive
Principle
Separate and compartmentalise responsibilities and
privileges
Tradeoff
Development and testing costs, operational complexity,
troubleshooting more difficult
Example
“Payments” module administrators have no access to or
control over “Orders” module features
11
SEPARATE RESPONSIBILITIES
12
TRUST CAUTIOUSLY
Why?
Many security problems caused by inserting
malicious intermediaries in communication paths
Principle
Assume unknown entities are untrusted, have a clear
process to establish trust, validate who is connecting
Tradeoff
Operational complexity (particularly failure
recovery), reliability, some development overhead
Example
Don't accept untrusted RMI connections, use client
certificates, credentials or network controls
13
TRUST CAUTIOUSLY
Why?
Many security problems caused by inserting
malicious intermediaries in communication paths
Principle
Assume unknown entities are untrusted, have a clear
process to establish trust, validate who is connecting
Tradeoff
Operational complexity (particularly failure
recovery), reliability, some development overhead
Example
Don't accept untrusted RMI connections, use client
certificates, credentials or network controls
14
TRUST CAUTIOUSLY
Why?
Many security problems caused by inserting
malicious intermediaries in communication paths
Principle
Assume unknown entities are untrusted, have a clear
process to establish trust, validate who is connecting
Tradeoff
Operational complexity (particularly failure
recovery), reliability, some development overhead
Example
Don't accept untrusted RMI connections, use client
certificates, credentials or network controls
15
TRUST CAUTIOUSLY
Who are you?
How do we know?
What is connecting
to our services?
What are we
connecting to?
What can access
our database?16
SIMPLEST SOLUTION POSSIBLE
Why?
Security requires understanding of the design - complex
design is rarely understood - simplicity allows analysis
Principle
Actively design for simplicity - avoid complex failure
modes, implicit behaviour, unnecessary features, …
Tradeoff
Hard decisions on features and sophistication
Needs serious design effort to be simple
Example
Does the system really need dynamic runtime
configuration via a custom DSL?
The price of reliability is the pursuit of the utmost simplicity - C.A.R. Hoare
17
AUDIT SENSITIVE EVENTS
Why?
Provide record of activity, deter wrong doing, provide a
log to reconstruct the past, provide a monitoring point
Principle
Record all security significant events in a tamper-
resistant store
Tradeoff Performance, operational complexity, development cost
Example
Record all changes to "core" business entities in an
append-only store with (user, ip, timestamp, entity, event)
18
AUDITING
19
SECURE DEFAULTS & 

FAIL SECURELY
Why?
Default passwords, ports & rules are “open doors”
Failure and restart states often default to “insecure”
Principle
Force changes to security sensitive parameters
Think through failures - must be secure but recoverable
Tradeoff Convenience
Example
Don’t allow “SYSTEM/MANAGER” after installation
On failure don’t disable or reset security controls
20
NEVER RELY ON OBSCURITY
Why?
Hiding things is difficult - someone is going to find them,
accidentally if not on purpose
Principle
Assume attacker with perfect knowledge, this forces
secure system design
Tradeoff Designing a truly secure system takes time and effort
Example
Assume that an attacker will guess a "port knock"
network request sequence or a password encoding
21
DEFENCE IN DEPTH
Why?
Systems do get attacked, breaches do happen, mistakes
are made - need to minimise impact
Principle
Don’t rely on single point of security, secure every level,
vary mechanisms, stop failures at one level propagating
Tradeoff
Redundancy of policy, complex permissioning and
troubleshooting, can make recovery harder
Example Access control in UI, services, database, OS
22
DEFENCE IN DEPTH
23
NEVER INVENT SECURITYTECH
Why?
Security technology is difficult to create - specialist job,
avoiding vulnerabilities is difficult
Principle
Don’t create your own security technology always use a
proven component
Tradeoff
Time to assess security technology, effort to learning it,
complexity
Example
Don’t invent your own SSO mechanism, secret storage
or crypto libraries … choose industry standards
24
NEVER INVENT SECURITY
TECHNOLOGY
25
NEVER INVENT SECURITY
TECHNOLOGY
26
SECURETHE WEAKEST LINK
Why?
"Paper Wall" problem - common when focus is on
technologies not threats
Principle
Find the weakest link in the security chain and
strengthen it - repeat! (Threat modelling)
Tradeoff
Significant effort required, often reveals problems at the
least convenient moment!
Example
Data privacy threat met with encrypted communication
but with unencrypted database storage and backups
27
TEN KEY SECURITY PRINCIPLES
• Assign the least privilege
possible
• Separate responsibilities
• Trust cautiously
• Simplest solution possible

• Audit sensitive events
• Fail securely & use secure
defaults
• Never rely upon obscurity
• Implement defence in depth
• Never invent security
technology
• Find the weakest link
28
REFERENCES
• UK Government NCSC Security Principles:

https://www.ncsc.gov.uk/guidance/security-design-principles-digital-services-
main
• NIST Engineering Principles for IT Security:

http://csrc.nist.gov/publications/nistpubs/800-27A/SP800-27-RevA.pdf
• Short intro to McGraw’s set:

http://www.zdnet.com/article/gary-mcgraw-10-steps-to-secure-software/
• OWASP Principles set:

https://www.owasp.org/index.php/Category:Principle
29
BOOKS
30
THANKYOU … QUESTIONS?
Eoin Woods

Endava

eoin.woods@endava.com
@eoinwoodz
31

Mais conteúdo relacionado

Mais procurados

Cia security model
Cia security modelCia security model
Cia security modelImran Ahmed
 
Ethical Hacking n VAPT presentation by Suvrat jain
Ethical Hacking n VAPT presentation by Suvrat jainEthical Hacking n VAPT presentation by Suvrat jain
Ethical Hacking n VAPT presentation by Suvrat jainSuvrat Jain
 
Introduction to penetration testing
Introduction to penetration testingIntroduction to penetration testing
Introduction to penetration testingAmine SAIGHI
 
Cyber Security Governance
Cyber Security GovernanceCyber Security Governance
Cyber Security GovernancePriyanka Aash
 
Cybersecurity Framework - Introduction
Cybersecurity Framework - IntroductionCybersecurity Framework - Introduction
Cybersecurity Framework - IntroductionMuhammad Akbar Yasin
 
CIS Security Benchmark
CIS Security BenchmarkCIS Security Benchmark
CIS Security BenchmarkRahul Khengare
 
Cybersecurity Basics - Aravindr.com
Cybersecurity Basics - Aravindr.comCybersecurity Basics - Aravindr.com
Cybersecurity Basics - Aravindr.comAravind R
 
Overview of the Cyber Kill Chain [TM]
Overview of the Cyber Kill Chain [TM]Overview of the Cyber Kill Chain [TM]
Overview of the Cyber Kill Chain [TM]David Sweigert
 
Cybersecurity Attack Vectors: How to Protect Your Organization
Cybersecurity Attack Vectors: How to Protect Your OrganizationCybersecurity Attack Vectors: How to Protect Your Organization
Cybersecurity Attack Vectors: How to Protect Your OrganizationTriCorps Technologies
 
STRIDE And DREAD
STRIDE And DREADSTRIDE And DREAD
STRIDE And DREADchuckbt
 
Building Security Operation Center
Building Security Operation CenterBuilding Security Operation Center
Building Security Operation CenterS.E. CTS CERT-GOV-MD
 
A5-Security misconfiguration-OWASP 2013
A5-Security misconfiguration-OWASP 2013   A5-Security misconfiguration-OWASP 2013
A5-Security misconfiguration-OWASP 2013 Sorina Chirilă
 
Penetration Testing
Penetration Testing Penetration Testing
Penetration Testing RomSoft SRL
 
Secure code practices
Secure code practicesSecure code practices
Secure code practicesHina Rawal
 
Web Application Security and Awareness
Web Application Security and AwarenessWeb Application Security and Awareness
Web Application Security and AwarenessAbdul Rahman Sherzad
 
Introduction to Web Application Penetration Testing
Introduction to Web Application Penetration TestingIntroduction to Web Application Penetration Testing
Introduction to Web Application Penetration TestingAnurag Srivastava
 
Building a Next-Generation Security Operations Center (SOC)
Building a Next-Generation Security Operations Center (SOC)Building a Next-Generation Security Operations Center (SOC)
Building a Next-Generation Security Operations Center (SOC)Sqrrl
 
Cyber security awareness
Cyber security awarenessCyber security awareness
Cyber security awarenessJason Murray
 

Mais procurados (20)

Cia security model
Cia security modelCia security model
Cia security model
 
Ethical Hacking n VAPT presentation by Suvrat jain
Ethical Hacking n VAPT presentation by Suvrat jainEthical Hacking n VAPT presentation by Suvrat jain
Ethical Hacking n VAPT presentation by Suvrat jain
 
Introduction to penetration testing
Introduction to penetration testingIntroduction to penetration testing
Introduction to penetration testing
 
Cyber Security Governance
Cyber Security GovernanceCyber Security Governance
Cyber Security Governance
 
Cybersecurity Framework - Introduction
Cybersecurity Framework - IntroductionCybersecurity Framework - Introduction
Cybersecurity Framework - Introduction
 
CIS Security Benchmark
CIS Security BenchmarkCIS Security Benchmark
CIS Security Benchmark
 
Cybersecurity Basics - Aravindr.com
Cybersecurity Basics - Aravindr.comCybersecurity Basics - Aravindr.com
Cybersecurity Basics - Aravindr.com
 
Physical security
Physical securityPhysical security
Physical security
 
Overview of the Cyber Kill Chain [TM]
Overview of the Cyber Kill Chain [TM]Overview of the Cyber Kill Chain [TM]
Overview of the Cyber Kill Chain [TM]
 
Cybersecurity Attack Vectors: How to Protect Your Organization
Cybersecurity Attack Vectors: How to Protect Your OrganizationCybersecurity Attack Vectors: How to Protect Your Organization
Cybersecurity Attack Vectors: How to Protect Your Organization
 
STRIDE And DREAD
STRIDE And DREADSTRIDE And DREAD
STRIDE And DREAD
 
Building Security Operation Center
Building Security Operation CenterBuilding Security Operation Center
Building Security Operation Center
 
A5-Security misconfiguration-OWASP 2013
A5-Security misconfiguration-OWASP 2013   A5-Security misconfiguration-OWASP 2013
A5-Security misconfiguration-OWASP 2013
 
Penetration Testing
Penetration Testing Penetration Testing
Penetration Testing
 
Secure code practices
Secure code practicesSecure code practices
Secure code practices
 
Security policy
Security policySecurity policy
Security policy
 
Web Application Security and Awareness
Web Application Security and AwarenessWeb Application Security and Awareness
Web Application Security and Awareness
 
Introduction to Web Application Penetration Testing
Introduction to Web Application Penetration TestingIntroduction to Web Application Penetration Testing
Introduction to Web Application Penetration Testing
 
Building a Next-Generation Security Operations Center (SOC)
Building a Next-Generation Security Operations Center (SOC)Building a Next-Generation Security Operations Center (SOC)
Building a Next-Generation Security Operations Center (SOC)
 
Cyber security awareness
Cyber security awarenessCyber security awareness
Cyber security awareness
 

Destaque

Computer security design principles
Computer security design principlesComputer security design principles
Computer security design principlesShaishav Dahal
 
Design of a secure "Token Passing" protocol
Design of a secure "Token Passing" protocolDesign of a secure "Token Passing" protocol
Design of a secure "Token Passing" protocolAugusto Ciuffoletti
 
Using Software Architecture Principles in Practice
Using Software Architecture Principles in PracticeUsing Software Architecture Principles in Practice
Using Software Architecture Principles in PracticeEoin Woods
 
Dmitriy Desyatkov "Secure SDLC or Security Culture to be or not to be"
Dmitriy Desyatkov "Secure SDLC or Security Culture to be or not to be"Dmitriy Desyatkov "Secure SDLC or Security Culture to be or not to be"
Dmitriy Desyatkov "Secure SDLC or Security Culture to be or not to be"WrikeTechClub
 
Security_Testing_Presentation
Security_Testing_PresentationSecurity_Testing_Presentation
Security_Testing_PresentationRazil Shaik
 
Endava Career Days Jan 2012 Five Dysfunctions of a Team
Endava Career Days Jan 2012   Five Dysfunctions of a TeamEndava Career Days Jan 2012   Five Dysfunctions of a Team
Endava Career Days Jan 2012 Five Dysfunctions of a TeamEndava
 
Card Data Discovery and PCI DSS
Card Data Discovery and PCI DSSCard Data Discovery and PCI DSS
Card Data Discovery and PCI DSSKimberly Simon MBA
 
Security testing operation vijay
Security testing   operation vijaySecurity testing   operation vijay
Security testing operation vijaylavanyam210
 
Xss what the heck-!
Xss   what the heck-!Xss   what the heck-!
Xss what the heck-!VodqaBLR
 
Matteo meucci Software Security - Napoli 10112016
Matteo meucci   Software Security - Napoli 10112016Matteo meucci   Software Security - Napoli 10112016
Matteo meucci Software Security - Napoli 10112016Minded Security
 
Information gathering using windows command line utility
Information gathering using windows command line utilityInformation gathering using windows command line utility
Information gathering using windows command line utilityVishal Kumar
 
Penetration Testing Execution Standard
Penetration Testing Execution StandardPenetration Testing Execution Standard
Penetration Testing Execution StandardIftach Ian Amit
 
Introduction to information security
Introduction to information securityIntroduction to information security
Introduction to information securityKumawat Dharmpal
 
Compliance in the Cloud Using “Security by Design” Principles
Compliance in the Cloud Using “Security by Design” PrinciplesCompliance in the Cloud Using “Security by Design” Principles
Compliance in the Cloud Using “Security by Design” PrinciplesAmazon Web Services
 
Requirements and Security Assessment Procedure for C7 To Be PCI DSS Compliant
Requirements and Security Assessment Procedure for C7 To Be PCI DSS CompliantRequirements and Security Assessment Procedure for C7 To Be PCI DSS Compliant
Requirements and Security Assessment Procedure for C7 To Be PCI DSS CompliantOlivia Grey
 
TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...
TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...
TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...Iosif Itkin
 
Compliance in the Cloud Using Security by Design
Compliance in the Cloud Using Security by DesignCompliance in the Cloud Using Security by Design
Compliance in the Cloud Using Security by DesignAmazon Web Services
 

Destaque (20)

Computer security design principles
Computer security design principlesComputer security design principles
Computer security design principles
 
Design of a secure "Token Passing" protocol
Design of a secure "Token Passing" protocolDesign of a secure "Token Passing" protocol
Design of a secure "Token Passing" protocol
 
Using Software Architecture Principles in Practice
Using Software Architecture Principles in PracticeUsing Software Architecture Principles in Practice
Using Software Architecture Principles in Practice
 
Dmitriy Desyatkov "Secure SDLC or Security Culture to be or not to be"
Dmitriy Desyatkov "Secure SDLC or Security Culture to be or not to be"Dmitriy Desyatkov "Secure SDLC or Security Culture to be or not to be"
Dmitriy Desyatkov "Secure SDLC or Security Culture to be or not to be"
 
Security_Testing_Presentation
Security_Testing_PresentationSecurity_Testing_Presentation
Security_Testing_Presentation
 
Endava Career Days Jan 2012 Five Dysfunctions of a Team
Endava Career Days Jan 2012   Five Dysfunctions of a TeamEndava Career Days Jan 2012   Five Dysfunctions of a Team
Endava Career Days Jan 2012 Five Dysfunctions of a Team
 
Card Data Discovery and PCI DSS
Card Data Discovery and PCI DSSCard Data Discovery and PCI DSS
Card Data Discovery and PCI DSS
 
Security testing operation vijay
Security testing   operation vijaySecurity testing   operation vijay
Security testing operation vijay
 
Xss what the heck-!
Xss   what the heck-!Xss   what the heck-!
Xss what the heck-!
 
Matteo meucci Software Security - Napoli 10112016
Matteo meucci   Software Security - Napoli 10112016Matteo meucci   Software Security - Napoli 10112016
Matteo meucci Software Security - Napoli 10112016
 
Information gathering using windows command line utility
Information gathering using windows command line utilityInformation gathering using windows command line utility
Information gathering using windows command line utility
 
Chapter 5
Chapter 5Chapter 5
Chapter 5
 
Firewalls
FirewallsFirewalls
Firewalls
 
Penetration Testing Execution Standard
Penetration Testing Execution StandardPenetration Testing Execution Standard
Penetration Testing Execution Standard
 
Security testing
Security testingSecurity testing
Security testing
 
Introduction to information security
Introduction to information securityIntroduction to information security
Introduction to information security
 
Compliance in the Cloud Using “Security by Design” Principles
Compliance in the Cloud Using “Security by Design” PrinciplesCompliance in the Cloud Using “Security by Design” Principles
Compliance in the Cloud Using “Security by Design” Principles
 
Requirements and Security Assessment Procedure for C7 To Be PCI DSS Compliant
Requirements and Security Assessment Procedure for C7 To Be PCI DSS CompliantRequirements and Security Assessment Procedure for C7 To Be PCI DSS Compliant
Requirements and Security Assessment Procedure for C7 To Be PCI DSS Compliant
 
TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...
TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...
TMPA-2017: Regression Testing with Semiautomatic Test Selection for Auditing ...
 
Compliance in the Cloud Using Security by Design
Compliance in the Cloud Using Security by DesignCompliance in the Cloud Using Security by Design
Compliance in the Cloud Using Security by Design
 

Semelhante a Secure by Design - Security Design Principles for the Rest of Us

Application and Data Security in the Software Development Lifecycle
Application and Data Security in the Software Development Lifecycle Application and Data Security in the Software Development Lifecycle
Application and Data Security in the Software Development Lifecycle Stephen Senkomago Musoke
 
Principles for Secure Design and Software Security
Principles for Secure Design and Software Security Principles for Secure Design and Software Security
Principles for Secure Design and Software Security Mona Rajput
 
MS. Cybersecurity Reference Architecture
MS. Cybersecurity Reference ArchitectureMS. Cybersecurity Reference Architecture
MS. Cybersecurity Reference Architectureangelohammond
 
The New Security Practitioner
The New Security PractitionerThe New Security Practitioner
The New Security PractitionerAdrian Sanabria
 
A New Security Management Approach for Agile Environments
A New Security Management Approach for Agile EnvironmentsA New Security Management Approach for Agile Environments
A New Security Management Approach for Agile EnvironmentsPECB
 
The Open Group - ZT Commandments and Reference Model.pptx
The Open Group - ZT Commandments and Reference Model.pptxThe Open Group - ZT Commandments and Reference Model.pptx
The Open Group - ZT Commandments and Reference Model.pptxMark Simos
 
Starting your Career in Information Security
Starting your Career in Information SecurityStarting your Career in Information Security
Starting your Career in Information SecurityAhmed Sayed-
 
Alfresco Virtual DevCon 2020 - Security First!
Alfresco Virtual DevCon 2020 - Security First!Alfresco Virtual DevCon 2020 - Security First!
Alfresco Virtual DevCon 2020 - Security First!Jason Jolley
 
India Start-ups IT Security & IT Act 2008
India Start-ups IT Security & IT Act 2008India Start-ups IT Security & IT Act 2008
India Start-ups IT Security & IT Act 2008ValueMentor Consulting
 
Cloud, DevOps and the New Security Practitioner
Cloud, DevOps and the New Security PractitionerCloud, DevOps and the New Security Practitioner
Cloud, DevOps and the New Security PractitionerAdrian Sanabria
 
NZISF Talk: Six essential security services
NZISF Talk: Six essential security servicesNZISF Talk: Six essential security services
NZISF Talk: Six essential security servicesHinne Hettema
 
Developing a Rugged DevOps Approach to Cloud Security
Developing a Rugged DevOps Approach to Cloud SecurityDeveloping a Rugged DevOps Approach to Cloud Security
Developing a Rugged DevOps Approach to Cloud SecurityTechWell
 
Accelerating OT - A Case Study
Accelerating OT - A Case StudyAccelerating OT - A Case Study
Accelerating OT - A Case StudyDigital Bond
 
Alexander Antukh. (In)security of Appliances
Alexander Antukh. (In)security of AppliancesAlexander Antukh. (In)security of Appliances
Alexander Antukh. (In)security of AppliancesPositive Hack Days
 
The End of Security as We Know It - Shannon Lietz
The End of Security as We Know It - Shannon LietzThe End of Security as We Know It - Shannon Lietz
The End of Security as We Know It - Shannon LietzSeniorStoryteller
 

Semelhante a Secure by Design - Security Design Principles for the Rest of Us (20)

Application and Data Security in the Software Development Lifecycle
Application and Data Security in the Software Development Lifecycle Application and Data Security in the Software Development Lifecycle
Application and Data Security in the Software Development Lifecycle
 
Principles for Secure Design and Software Security
Principles for Secure Design and Software Security Principles for Secure Design and Software Security
Principles for Secure Design and Software Security
 
MS. Cybersecurity Reference Architecture
MS. Cybersecurity Reference ArchitectureMS. Cybersecurity Reference Architecture
MS. Cybersecurity Reference Architecture
 
The New Security Practitioner
The New Security PractitionerThe New Security Practitioner
The New Security Practitioner
 
A New Security Management Approach for Agile Environments
A New Security Management Approach for Agile EnvironmentsA New Security Management Approach for Agile Environments
A New Security Management Approach for Agile Environments
 
The Open Group - ZT Commandments and Reference Model.pptx
The Open Group - ZT Commandments and Reference Model.pptxThe Open Group - ZT Commandments and Reference Model.pptx
The Open Group - ZT Commandments and Reference Model.pptx
 
Starting your Career in Information Security
Starting your Career in Information SecurityStarting your Career in Information Security
Starting your Career in Information Security
 
Alfresco Virtual DevCon 2020 - Security First!
Alfresco Virtual DevCon 2020 - Security First!Alfresco Virtual DevCon 2020 - Security First!
Alfresco Virtual DevCon 2020 - Security First!
 
Agile security
Agile securityAgile security
Agile security
 
India Start-ups IT Security & IT Act 2008
India Start-ups IT Security & IT Act 2008India Start-ups IT Security & IT Act 2008
India Start-ups IT Security & IT Act 2008
 
C days2015
C days2015C days2015
C days2015
 
Cloud, DevOps and the New Security Practitioner
Cloud, DevOps and the New Security PractitionerCloud, DevOps and the New Security Practitioner
Cloud, DevOps and the New Security Practitioner
 
NZISF Talk: Six essential security services
NZISF Talk: Six essential security servicesNZISF Talk: Six essential security services
NZISF Talk: Six essential security services
 
Developing a Rugged DevOps Approach to Cloud Security
Developing a Rugged DevOps Approach to Cloud SecurityDeveloping a Rugged DevOps Approach to Cloud Security
Developing a Rugged DevOps Approach to Cloud Security
 
Accelerating OT - A Case Study
Accelerating OT - A Case StudyAccelerating OT - A Case Study
Accelerating OT - A Case Study
 
Zero Trust and Data Security
Zero Trust and Data SecurityZero Trust and Data Security
Zero Trust and Data Security
 
Alexander Antukh. (In)security of Appliances
Alexander Antukh. (In)security of AppliancesAlexander Antukh. (In)security of Appliances
Alexander Antukh. (In)security of Appliances
 
Alexander Antukh
Alexander AntukhAlexander Antukh
Alexander Antukh
 
Risks vs real life
Risks vs real lifeRisks vs real life
Risks vs real life
 
The End of Security as We Know It - Shannon Lietz
The End of Security as We Know It - Shannon LietzThe End of Security as We Know It - Shannon Lietz
The End of Security as We Know It - Shannon Lietz
 

Mais de Eoin Woods

API Vulnerabilties and What to Do About Them
API Vulnerabilties and What to Do About ThemAPI Vulnerabilties and What to Do About Them
API Vulnerabilties and What to Do About ThemEoin Woods
 
Democratising Software Architecture
Democratising Software ArchitectureDemocratising Software Architecture
Democratising Software ArchitectureEoin Woods
 
A Breathless Tour of Blockchain
A Breathless Tour of BlockchainA Breathless Tour of Blockchain
A Breathless Tour of BlockchainEoin Woods
 
Models, Sketches and Everything In Between
Models, Sketches and Everything In BetweenModels, Sketches and Everything In Between
Models, Sketches and Everything In BetweenEoin Woods
 
Capturing Design (When you really have to)
Capturing Design (When you really have to)Capturing Design (When you really have to)
Capturing Design (When you really have to)Eoin Woods
 
Serverless Computing for the Inquiring Mind
Serverless Computing for the Inquiring MindServerless Computing for the Inquiring Mind
Serverless Computing for the Inquiring MindEoin Woods
 
Software Architecture as Systems Dissolve
Software Architecture as Systems DissolveSoftware Architecture as Systems Dissolve
Software Architecture as Systems DissolveEoin Woods
 
Software Architecture as Systems Dissolve (OOP2016)
Software Architecture as Systems Dissolve (OOP2016)Software Architecture as Systems Dissolve (OOP2016)
Software Architecture as Systems Dissolve (OOP2016)Eoin Woods
 
When Architecture Meets Data
When Architecture Meets DataWhen Architecture Meets Data
When Architecture Meets DataEoin Woods
 
System Security Beyond the Libraries
System Security Beyond the LibrariesSystem Security Beyond the Libraries
System Security Beyond the LibrariesEoin Woods
 
Getting Your System to Production and Keeping it There
Getting Your System to Production and Keeping it ThereGetting Your System to Production and Keeping it There
Getting Your System to Production and Keeping it ThereEoin Woods
 
Common WebApp Vulnerabilities and What to Do About Them
Common WebApp Vulnerabilities and What to Do About ThemCommon WebApp Vulnerabilities and What to Do About Them
Common WebApp Vulnerabilities and What to Do About ThemEoin Woods
 
Deferring the Last Responsible Moment
Deferring the Last Responsible MomentDeferring the Last Responsible Moment
Deferring the Last Responsible MomentEoin Woods
 

Mais de Eoin Woods (13)

API Vulnerabilties and What to Do About Them
API Vulnerabilties and What to Do About ThemAPI Vulnerabilties and What to Do About Them
API Vulnerabilties and What to Do About Them
 
Democratising Software Architecture
Democratising Software ArchitectureDemocratising Software Architecture
Democratising Software Architecture
 
A Breathless Tour of Blockchain
A Breathless Tour of BlockchainA Breathless Tour of Blockchain
A Breathless Tour of Blockchain
 
Models, Sketches and Everything In Between
Models, Sketches and Everything In BetweenModels, Sketches and Everything In Between
Models, Sketches and Everything In Between
 
Capturing Design (When you really have to)
Capturing Design (When you really have to)Capturing Design (When you really have to)
Capturing Design (When you really have to)
 
Serverless Computing for the Inquiring Mind
Serverless Computing for the Inquiring MindServerless Computing for the Inquiring Mind
Serverless Computing for the Inquiring Mind
 
Software Architecture as Systems Dissolve
Software Architecture as Systems DissolveSoftware Architecture as Systems Dissolve
Software Architecture as Systems Dissolve
 
Software Architecture as Systems Dissolve (OOP2016)
Software Architecture as Systems Dissolve (OOP2016)Software Architecture as Systems Dissolve (OOP2016)
Software Architecture as Systems Dissolve (OOP2016)
 
When Architecture Meets Data
When Architecture Meets DataWhen Architecture Meets Data
When Architecture Meets Data
 
System Security Beyond the Libraries
System Security Beyond the LibrariesSystem Security Beyond the Libraries
System Security Beyond the Libraries
 
Getting Your System to Production and Keeping it There
Getting Your System to Production and Keeping it ThereGetting Your System to Production and Keeping it There
Getting Your System to Production and Keeping it There
 
Common WebApp Vulnerabilities and What to Do About Them
Common WebApp Vulnerabilities and What to Do About ThemCommon WebApp Vulnerabilities and What to Do About Them
Common WebApp Vulnerabilities and What to Do About Them
 
Deferring the Last Responsible Moment
Deferring the Last Responsible MomentDeferring the Last Responsible Moment
Deferring the Last Responsible Moment
 

Último

CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 

Último (20)

CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 

Secure by Design - Security Design Principles for the Rest of Us

  • 1. SECURE BY DESIGN Security Design Principles for the Rest of Us
 GOTO London 2016 Eoin Woods - Endava
 @eoinwoodz 1
  • 2. BACKGROUND • Eoin Woods • CTO at Endava (technology services, 3300 people) • 10 years in product development - Bull, Sybase, InterTrust • 10 years in capital markets applications - UBS and BGI • Software engineer, then architect, now CTO • Author, editor, speaker, community guy 2
  • 3. CONTENT • What is security and why do we care? • What are design principles, why are they useful? • Security design principles • 10 important principles useful in practice 3
  • 4. REVISITING SECURITY • We all know security is important - but why? • protection against malice, mistakes and mischance • theft, fraud, destruction, disruption • Security is a risk management business • loss of time, money, privacy, reputation, advantage • insurance model - balance costs against risk of loss 4
  • 5. ASPECTS OF SECURITY PRACTICE Secure Application Design Secure Application Implementation Secure Infrastructure Design Secure Infrastructure Deployment Secure System Operation 5
  • 6. SECURITY DESIGN PRINCIPLES What is a “principle” ? a fundamental truth or proposition serving as the foundation for belief or action [OED] We define a security design principle as …. a declarative statement made with the intention of guiding security design decisions in order to meet the goals of a system 6
  • 7. SECURITY DESIGN PRINCIPLES • There are many sets of security design principles • Viega & McGraw (10), OWASP (10), NIST (33), NCSC (44), Cliff Berg’s set (185) … • Many similarities between them at fundamental level • I have distilled 10 key principles as a basic set • these are brief summaries for slide presentation • www.viewpoints-and-perspectives.info 7
  • 8. A SYSTEMTO BE SECURED 8
  • 9. TEN KEY SECURITY PRINCIPLES • Assign the least privilege possible • Separate responsibilities • Trust cautiously • Simplest solution possible
 • Audit sensitive events • Fail securely & use secure defaults • Never rely upon obscurity • Implement defence in depth • Never invent security technology • Find the weakest link 9
  • 10. LEAST PRIVILEGE Why? Broad privileges allow malicious or accidental access to protected resources Principle Limit privileges to the minimum for the context Tradeoff Less convenient, less efficient, more complexity Example Run server processes as their own users with exactly the set of privileges they require 10
  • 11. SEPARATE RESPONSIBILITIES Why? Achieve control and accountability, limit the impact of successful attacks, make attacks less attractive Principle Separate and compartmentalise responsibilities and privileges Tradeoff Development and testing costs, operational complexity, troubleshooting more difficult Example “Payments” module administrators have no access to or control over “Orders” module features 11
  • 13. TRUST CAUTIOUSLY Why? Many security problems caused by inserting malicious intermediaries in communication paths Principle Assume unknown entities are untrusted, have a clear process to establish trust, validate who is connecting Tradeoff Operational complexity (particularly failure recovery), reliability, some development overhead Example Don't accept untrusted RMI connections, use client certificates, credentials or network controls 13
  • 14. TRUST CAUTIOUSLY Why? Many security problems caused by inserting malicious intermediaries in communication paths Principle Assume unknown entities are untrusted, have a clear process to establish trust, validate who is connecting Tradeoff Operational complexity (particularly failure recovery), reliability, some development overhead Example Don't accept untrusted RMI connections, use client certificates, credentials or network controls 14
  • 15. TRUST CAUTIOUSLY Why? Many security problems caused by inserting malicious intermediaries in communication paths Principle Assume unknown entities are untrusted, have a clear process to establish trust, validate who is connecting Tradeoff Operational complexity (particularly failure recovery), reliability, some development overhead Example Don't accept untrusted RMI connections, use client certificates, credentials or network controls 15
  • 16. TRUST CAUTIOUSLY Who are you? How do we know? What is connecting to our services? What are we connecting to? What can access our database?16
  • 17. SIMPLEST SOLUTION POSSIBLE Why? Security requires understanding of the design - complex design is rarely understood - simplicity allows analysis Principle Actively design for simplicity - avoid complex failure modes, implicit behaviour, unnecessary features, … Tradeoff Hard decisions on features and sophistication Needs serious design effort to be simple Example Does the system really need dynamic runtime configuration via a custom DSL? The price of reliability is the pursuit of the utmost simplicity - C.A.R. Hoare 17
  • 18. AUDIT SENSITIVE EVENTS Why? Provide record of activity, deter wrong doing, provide a log to reconstruct the past, provide a monitoring point Principle Record all security significant events in a tamper- resistant store Tradeoff Performance, operational complexity, development cost Example Record all changes to "core" business entities in an append-only store with (user, ip, timestamp, entity, event) 18
  • 20. SECURE DEFAULTS & 
 FAIL SECURELY Why? Default passwords, ports & rules are “open doors” Failure and restart states often default to “insecure” Principle Force changes to security sensitive parameters Think through failures - must be secure but recoverable Tradeoff Convenience Example Don’t allow “SYSTEM/MANAGER” after installation On failure don’t disable or reset security controls 20
  • 21. NEVER RELY ON OBSCURITY Why? Hiding things is difficult - someone is going to find them, accidentally if not on purpose Principle Assume attacker with perfect knowledge, this forces secure system design Tradeoff Designing a truly secure system takes time and effort Example Assume that an attacker will guess a "port knock" network request sequence or a password encoding 21
  • 22. DEFENCE IN DEPTH Why? Systems do get attacked, breaches do happen, mistakes are made - need to minimise impact Principle Don’t rely on single point of security, secure every level, vary mechanisms, stop failures at one level propagating Tradeoff Redundancy of policy, complex permissioning and troubleshooting, can make recovery harder Example Access control in UI, services, database, OS 22
  • 24. NEVER INVENT SECURITYTECH Why? Security technology is difficult to create - specialist job, avoiding vulnerabilities is difficult Principle Don’t create your own security technology always use a proven component Tradeoff Time to assess security technology, effort to learning it, complexity Example Don’t invent your own SSO mechanism, secret storage or crypto libraries … choose industry standards 24
  • 27. SECURETHE WEAKEST LINK Why? "Paper Wall" problem - common when focus is on technologies not threats Principle Find the weakest link in the security chain and strengthen it - repeat! (Threat modelling) Tradeoff Significant effort required, often reveals problems at the least convenient moment! Example Data privacy threat met with encrypted communication but with unencrypted database storage and backups 27
  • 28. TEN KEY SECURITY PRINCIPLES • Assign the least privilege possible • Separate responsibilities • Trust cautiously • Simplest solution possible
 • Audit sensitive events • Fail securely & use secure defaults • Never rely upon obscurity • Implement defence in depth • Never invent security technology • Find the weakest link 28
  • 29. REFERENCES • UK Government NCSC Security Principles:
 https://www.ncsc.gov.uk/guidance/security-design-principles-digital-services- main • NIST Engineering Principles for IT Security:
 http://csrc.nist.gov/publications/nistpubs/800-27A/SP800-27-RevA.pdf • Short intro to McGraw’s set:
 http://www.zdnet.com/article/gary-mcgraw-10-steps-to-secure-software/ • OWASP Principles set:
 https://www.owasp.org/index.php/Category:Principle 29
  • 31. THANKYOU … QUESTIONS? Eoin Woods
 Endava
 eoin.woods@endava.com @eoinwoodz 31