SlideShare una empresa de Scribd logo
1 de 51
Descargar para leer sin conexión
Chris F Carroll
Software Technical Design
for Security
Software Architecture for Security
Requirements
Threats
vs.
All requirements have edge cases, but with security they expand into a
whole second way of seeing the issue. Threats get all the news! But our
understanding of threats remains piecemeal if we don’t understand the
core requirements they are threatening. So we start here.
Software Architecture for Security Chris F Carroll
How can we think
about security?
Software Architecture claims to help us THINK about software
systems. To get security right, we want a framework for thinking about
it: What are the questions we should ask, and what concepts will help
us to answer them?
Software Architecture for Security Chris F Carroll
① Ask the Right Questions


② Have a “Domain Model”
How Can We Think About Security? Chris F Carroll
✤ WHAT are we trying to secure?


✤ WHO are we securing for or from?


✤ WHAT does “secure” mean anyway?
If we can answers these 3 questions then we have done much of
the work of thinking about security. To help us answer them, we
want some vocabulary, or a domain model.
A Typical Information Security Policy (extract from a UK company policy)
“We strive to protect the group’s critical information assets against all
internal, external, deliberate or accidental threats throughout its lifecycle


We protect against unauthorised access threatening the
Confidentiality of our information and ensure that the Integrity and
Availability of critical information is maintained.


Our Information security policy is to ensure business continuity of the
Group, minimising the risk of damage by preventing security incidents and
reducing their potential impact. We are committed to continuous
improvement, ongoing compliance with legislative and regulatory
requirements and to ensuring our employees receive appropriate
information security awareness training.”
But
fi
ned in
ISO27000, the basis for many company’s
Security Management. For software
development to match the security policy
it might help to have—at least—a
common vocabulary?!
Chris F Carroll
(you can get the same
vocabulary from wikipedia
or a security or software
architecture textbook).
Chris F Carroll
WHAT do we want to secure?


Information Assets, typically:

1. Data Stores

2. Systems that let you do things

WHO are we securing for/from?


(Un)/Authorised users

WHAT does secure mean anyway?


Con
fi
dentiality

Integrity

Availability
Security : Just 3 Questions
Grounds for
deciding we should
secure an asset
might include:
Information Assets, typically:

1. Data Stores

2. Systems that let you do things

WHO are we securing for/from?


(Un)/Authorised users

WHAT does secure mean anyway?


Con
fi
dentiality

Integrity

Availability
Security : Just 3 Questions
Divide the world
into two groups of
people: The
Authorised and
Information Assets, typically:

1. Data Stores

2. Systems that let you do things

WHO are we securing for/from?


(Un)/Authorised users

WHAT does secure mean anyway?


Confidentiality


Integrity


Availability
Security : Just 3 Questions
And we get a grip
on what “secure”
means with the
“3 dimensions”
de
Information Assets, typically:

1. Data Stores

2. Systems that let you do things

WHO are we securing for/from?


(Un)/Authorised users

WHAT does secure mean anyway?


Con
fi
dentiality

Integrity

Availability
Security : Just 3 Questions
Now we have 3 Questions and the Vocabulary to answer them
Architecture for Information Security Chris F Carroll
Questions So Far?
ISO 27000 Vocabulary for Secured Assets Chris F Carroll
Access Control


User, Groups, Roles


Authentication & Authorisation,
Principals, Claims


IAM, OAuth2, JWT


Uptime, Reliability, Backups
Discussion: How do our 3 questions and 5 core concepts relate to
these other things you might hear about when discussing security?
Chris F Carroll
Access Control: “to ensure that access to
assets is authorised & restricted based on
business and security requirements”
ISO 27000 Vocabulary for Secured Assets
Controlling Read-Access sounds like Con
Grant-Read

Grant-Write

Uptime, backups, connectivity, resilience
to attack
How does
C.I.A


map back


to other
vocabularies?
Security includes both functional and non-functional requirements
Security : Just 3 Questions Chris F Carroll
✤ WHAT are we trying to secure?


➡ Assets: Data Stores & Systems
✤ WHO are we securing for & from?


➡ (Un)Authorised Users
✤ WHAT does secure mean anyway?


➡ C.I.A.
Thinking about security: Our 3 questions and 5 core concepts are enough
to state and analyse security requirements for many software
systems.
Architecture for Information Security Chris F Carroll
Questions So Far?
2 Questions about Secured Assets Chris F Carroll
About these Assets we are securing…

✤ Where are they?


✤ What paths access them?
Thinking about security: When we get to Technical Design, two more
questions about assets may simplify our design enormously
Architecture for Information Security Chris F Carroll
Exercise: www.my
fi
rst startup.com
Discussion Exercise: Let’s do a security design & review for a small startup
Architecture For Information Security Chris F Carroll
www.wesculptitforu.com
Send us a Photo and we’ll


send you a sculpture!


Only £0.99 per cm³ + p&p!
Discussion Exercise
Architecture For Information Security Chris F Carroll
www.wesculptitforu.com
Send us a Photo and we’ll


send you a sculpture!


Only £0.99 per cm³ + p&p!
Discussion Exercise
Let’s do a security design for this
startup!
Information Assets, typically:

1. Data Stores

2. Systems that let you do things

WHO are we securing for/from?


(Un)/Authorised users

WHAT does secure mean anyway?


Con
fi
dentiality

Integrity

Availability
Discussion Exercise
Step1 : Use our 3
questions and 5
core concepts to
state and
understand our
requirements
Where Are the Information Assets? Chris F Carroll
Discussion Exercise
1) Where are the
Assets?
Where Are the Information Assets? Chris F Carroll
Discussion Exercise
Oh no, they’re
everywhere!
fi
rewall)
• 3 Gateways
• HTTPS for external
communication
Discussion Exercise
https
https
firewall Start the design by
imposing a simplifying
structure on the
physical system
Simplify The Challenge Chris F Carroll
Not My


Problem
Not My


Problem
Not My


Problem
Discussion Exercise
The point is to make
everything outside
your structure Not
Your Problem
https
https
firewall
Simplify!
• 1 Border (e.g. a
fi
rewall)
• 3 Gateways
• HTTPS for external
communication
Simplify The Challenge Chris F Carroll
Not My


Problem
Not My


Problem
Not My


Problem
- Your Code


- Frameworks &
Dependencies


- OS or Platform


- Network


- Cloud Platform
Discussion Exercise
https
https
firewall
Simplify!
• 1 Border (e.g. a
fi
rewall)
• 3 Gateways
• HTTPS for external
communication
Then, list all the
things inside the
structure that are
your problem
Simplify The Challenge Chris F Carroll
Not My


Problem
Not My


Problem
Not My


Problem
- Your Code


- Frameworks &
Dependencies


- OS or Platform


- Network


- Cloud Platform
Discussion Exercise
Simplify!
• 1 Border (e.g. a
fi
rewall)
• 3 Gateways
• HTTPS for external
communication
https
https
firewall Finally, for each item on
the reduced list,
1) A list of Assets & Users; then a table of CIA requirements
for each Asset-User pair (or e.g. asset-role pair)


2) A Deployment View that


❖ Shows where the Assets are


❖ “proves” (well, claims) they are only reachable through the
System in an authorised way.


3) A list of assumptions which must hold, and/or
procedures which must be followed, for (2) to be true.
Architecture for Information Security Chris F Carroll
✤ You may be a little disappointed that the last item is not,
“Fo
ll
ow
th
is procedure and Lo! It sha
ll
be secure.”


✤ The last item can only be, “These are the assumptions
& procedures which give us acceptable confidence it
is secure.”
Discussion Exercise: Your Review of my Design
Discussion Exercise: Feedback on my Design
-
Load Balancer
Systems which you use may be
your problem under GDPR — you
need legal dept to advise, and to
review the contract
Actions after a Security Design Review Chris F Carroll
My response to design review might typically be:


1) Updating or correcting one or more of the lists I made


2) Adding or clarifying assumptions


3) Agreeing with IT Operations and/or CIO if any changes to
security procedures may be needed


4) Agreeing with IT Operations any other changes needed
NB even in a micro-startup where I was a 1-person IT department,
I would get someone to review security design
Architecture for Information Security Chris F Carroll
Questions So Far?
Chris F Carroll
✤ How do we Know it’s secure?


✤ WHY do we care about security?
A Fourth Question 😲
fi
nd an insecurity?
Security: the further you go, the more complicated it gets …
Thinking Even More About Security
Security: Not a Hobby, a Way of Life Chris F Carroll
✤ So we need audit, monitoring, reviews …

✤ Managing security becomes an entire,
never ending, management system & set
of processes. Hence “ISMS”

✤ We must understand risk
Security: the further you go, the more complicated it gets …
Risk Management—the 1-slide Intro A Typical Risk Matrix
Why Do We Care?
Because we are
managing Risk
fi
ne An Information Security Management System With
Policies and Processes To Assess and Manage Risk
Train Sta
ff
in Policies and Processes
Get Certi
fi
cation For Your Trained Sta
f
Get Your System Audited
Join An Expert Community Of Practise
Know Where To Look For Reference Materials
Know Where To Look For News
Find out what the Tools are
Learn Standard Patterns
Do Technical Design
Get Technical Design Reviewed
Do It All Again
So Information
Security usually
starts with a
Management
System


We protect against unauthorised access threatening the
Confidentiality of our information and ensure that the Integrity and
Availability of critical information is maintained.


Our Information security policy is to ensure business continuity of the
Group, minimising the risk of damage by preventing security incidents and
reducing their potential impact. We are committed to


continuous improvement, ongoing compliance with legislative and
regulatory requirements and to ensuring our employees receive appropriate
information security awareness training.”
Earlier, I ignored the bo
fi
ne A Management System …
Train Sta
ff
…
Get Certi
fi
cation …
Get Audited …
➡ Join An Expert Community Of
Practise
✓ https://owasp.org

Join the Slack Channel
➡ Know Places you can look for
Reference Materials
✓ https://portswigger.net/web-security

✓ https://www.nist.gov/cyberframework

✓ https://www.microsoft.com/en-us/
securityengineering/sdl

✓ https://www.edx.org/professional-certi
fi
cate/
linuxfoundationx-secure-software-development-
fundamentals
➡ Learn Standard Patterns
https://cheatsheetseries.owasp.org
Do Technical Design
Get Technical Design Reviewed
Do It All Again
What are
developer team
responsibilities?
✤ WHO are we securing for or from?


✤ WHAT does “secure” mean anyway?


✤ HOW do we know it’s secure?


✤ What RISKS are we managing?
If we can answers these 5 questions then we have
done much of the work of thinking about security.
Chris F Carroll
Software Technical Design
for Security
Software Architecture for Security

Más contenido relacionado

La actualidad más candente

Thinking on risk analysis
Thinking on risk analysisThinking on risk analysis
Thinking on risk analysisRamiro Cid
 
Fundamentals of Information Systems Security Chapter 11
Fundamentals of Information Systems Security Chapter 11Fundamentals of Information Systems Security Chapter 11
Fundamentals of Information Systems Security Chapter 11Dr. Ahmed Al Zaidy
 
How to Pass the CISSP Exam For the First Time
How to Pass the CISSP Exam For the First TimeHow to Pass the CISSP Exam For the First Time
How to Pass the CISSP Exam For the First TimeMercury Solutions Limited
 
Recovering from a Cyber Attack
Recovering from a Cyber AttackRecovering from a Cyber Attack
Recovering from a Cyber AttackShawn Tuma
 
Using Hackers’ Own Methods and Tools to Defeat Persistent Adversaries
Using Hackers’ Own Methods and Tools to Defeat Persistent AdversariesUsing Hackers’ Own Methods and Tools to Defeat Persistent Adversaries
Using Hackers’ Own Methods and Tools to Defeat Persistent AdversariesEC-Council
 
An apporach to AIM - A strategy proposal and recommendation - ver 0.1
An apporach to AIM - A strategy proposal and recommendation - ver 0.1An apporach to AIM - A strategy proposal and recommendation - ver 0.1
An apporach to AIM - A strategy proposal and recommendation - ver 0.1Michael Clarkson
 
[EMC] Source Code Protection
[EMC] Source Code Protection[EMC] Source Code Protection
[EMC] Source Code ProtectionPerforce
 
Cissp cbk final_exam-answers_v5.5
Cissp cbk final_exam-answers_v5.5Cissp cbk final_exam-answers_v5.5
Cissp cbk final_exam-answers_v5.5madunix
 
IBM Security AppExchange Spotlight: Threat Intelligence & Monitoring Microso...
IBM Security AppExchange Spotlight: Threat Intelligence &  Monitoring Microso...IBM Security AppExchange Spotlight: Threat Intelligence &  Monitoring Microso...
IBM Security AppExchange Spotlight: Threat Intelligence & Monitoring Microso...IBM Security
 

La actualidad más candente (10)

Thinking on risk analysis
Thinking on risk analysisThinking on risk analysis
Thinking on risk analysis
 
Fundamentals of Information Systems Security Chapter 11
Fundamentals of Information Systems Security Chapter 11Fundamentals of Information Systems Security Chapter 11
Fundamentals of Information Systems Security Chapter 11
 
How to Pass the CISSP Exam For the First Time
How to Pass the CISSP Exam For the First TimeHow to Pass the CISSP Exam For the First Time
How to Pass the CISSP Exam For the First Time
 
Recovering from a Cyber Attack
Recovering from a Cyber AttackRecovering from a Cyber Attack
Recovering from a Cyber Attack
 
Using Hackers’ Own Methods and Tools to Defeat Persistent Adversaries
Using Hackers’ Own Methods and Tools to Defeat Persistent AdversariesUsing Hackers’ Own Methods and Tools to Defeat Persistent Adversaries
Using Hackers’ Own Methods and Tools to Defeat Persistent Adversaries
 
An apporach to AIM - A strategy proposal and recommendation - ver 0.1
An apporach to AIM - A strategy proposal and recommendation - ver 0.1An apporach to AIM - A strategy proposal and recommendation - ver 0.1
An apporach to AIM - A strategy proposal and recommendation - ver 0.1
 
[EMC] Source Code Protection
[EMC] Source Code Protection[EMC] Source Code Protection
[EMC] Source Code Protection
 
Cissp cbk final_exam-answers_v5.5
Cissp cbk final_exam-answers_v5.5Cissp cbk final_exam-answers_v5.5
Cissp cbk final_exam-answers_v5.5
 
Chapter 15 Risk Mitigation
Chapter 15 Risk MitigationChapter 15 Risk Mitigation
Chapter 15 Risk Mitigation
 
IBM Security AppExchange Spotlight: Threat Intelligence & Monitoring Microso...
IBM Security AppExchange Spotlight: Threat Intelligence &  Monitoring Microso...IBM Security AppExchange Spotlight: Threat Intelligence &  Monitoring Microso...
IBM Security AppExchange Spotlight: Threat Intelligence & Monitoring Microso...
 

Similar a Software Technical Design for Information Security: A short intro for Tech Leads & Architects

Simplifying Security for Cloud Adoption - Defining your game plan
Simplifying Security for Cloud Adoption - Defining your game planSimplifying Security for Cloud Adoption - Defining your game plan
Simplifying Security for Cloud Adoption - Defining your game planSecurestorm
 
Contrast & Compare & Contrast Information Security Roles
Contrast & Compare & Contrast Information Security Roles Contrast & Compare & Contrast Information Security Roles
Contrast & Compare & Contrast Information Security Roles LearningwithRayYT
 
BCM and IT Security
BCM and IT SecurityBCM and IT Security
BCM and IT Securityleninkster
 
Intro to INFOSEC
Intro to INFOSECIntro to INFOSEC
Intro to INFOSECSean Whalen
 
Top_10_Interview_Questions_That_You_Should_Know_as_an_Information.pptx
Top_10_Interview_Questions_That_You_Should_Know_as_an_Information.pptxTop_10_Interview_Questions_That_You_Should_Know_as_an_Information.pptx
Top_10_Interview_Questions_That_You_Should_Know_as_an_Information.pptxinfosec train
 
Slide Deck - CISSP Mentor Program Class Session 1
Slide Deck - CISSP Mentor Program Class Session 1Slide Deck - CISSP Mentor Program Class Session 1
Slide Deck - CISSP Mentor Program Class Session 1FRSecure
 
Evolving challenges for modern enterprise architectures in the age of APIs
Evolving challenges for modern enterprise architectures in the age of APIsEvolving challenges for modern enterprise architectures in the age of APIs
Evolving challenges for modern enterprise architectures in the age of APIsDinis Cruz
 
2016 - Safely Removing the Last Roadblock to Continuous Delivery
2016 - Safely Removing the Last Roadblock to Continuous Delivery2016 - Safely Removing the Last Roadblock to Continuous Delivery
2016 - Safely Removing the Last Roadblock to Continuous Deliverydevopsdaysaustin
 
Cybersecurity Interview Questions and Answers | CyberSecurity Interview Tips ...
Cybersecurity Interview Questions and Answers | CyberSecurity Interview Tips ...Cybersecurity Interview Questions and Answers | CyberSecurity Interview Tips ...
Cybersecurity Interview Questions and Answers | CyberSecurity Interview Tips ...Edureka!
 
CISSPCertified Information SystemsSecurity ProfessionalCop.docx
CISSPCertified Information SystemsSecurity ProfessionalCop.docxCISSPCertified Information SystemsSecurity ProfessionalCop.docx
CISSPCertified Information SystemsSecurity ProfessionalCop.docxmccormicknadine86
 
CISSPCertified Information SystemsSecurity ProfessionalCop.docx
CISSPCertified Information SystemsSecurity ProfessionalCop.docxCISSPCertified Information SystemsSecurity ProfessionalCop.docx
CISSPCertified Information SystemsSecurity ProfessionalCop.docxsleeperharwell
 
Safely Removing the Last Roadblock to Continuous Delivery
Safely Removing the Last Roadblock to Continuous DeliverySafely Removing the Last Roadblock to Continuous Delivery
Safely Removing the Last Roadblock to Continuous DeliverySeniorStoryteller
 
Slide Deck – Class Session 1 – FRSecure CISSP Mentor Program
Slide Deck – Class Session 1 – FRSecure CISSP Mentor ProgramSlide Deck – Class Session 1 – FRSecure CISSP Mentor Program
Slide Deck – Class Session 1 – FRSecure CISSP Mentor ProgramFRSecure
 
Information security[277]
Information security[277]Information security[277]
Information security[277]Timothy Warren
 
UHealth is a health insurance provider based in Australia F.pdf
UHealth is a health insurance provider based in Australia F.pdfUHealth is a health insurance provider based in Australia F.pdf
UHealth is a health insurance provider based in Australia F.pdfinfo824030
 
Csec 610 Inspiring Innovation--tutorialrank.com
Csec 610 Inspiring Innovation--tutorialrank.comCsec 610 Inspiring Innovation--tutorialrank.com
Csec 610 Inspiring Innovation--tutorialrank.comPrescottLunt384
 
CIS502 discussion post responses.Respond to the colleagues posts.docx
CIS502 discussion post responses.Respond to the colleagues posts.docxCIS502 discussion post responses.Respond to the colleagues posts.docx
CIS502 discussion post responses.Respond to the colleagues posts.docxmccormicknadine86
 
CompTIA CySA Domain 3 Security Operations and Monitoring.pptx
CompTIA CySA  Domain 3 Security Operations and Monitoring.pptxCompTIA CySA  Domain 3 Security Operations and Monitoring.pptx
CompTIA CySA Domain 3 Security Operations and Monitoring.pptxInfosectrain3
 
CompTIA CySA+ Domain 2 Software and Systems Security.pptx
CompTIA CySA+ Domain 2 Software and Systems Security.pptxCompTIA CySA+ Domain 2 Software and Systems Security.pptx
CompTIA CySA+ Domain 2 Software and Systems Security.pptxInfosectrain3
 

Similar a Software Technical Design for Information Security: A short intro for Tech Leads & Architects (20)

Simplifying Security for Cloud Adoption - Defining your game plan
Simplifying Security for Cloud Adoption - Defining your game planSimplifying Security for Cloud Adoption - Defining your game plan
Simplifying Security for Cloud Adoption - Defining your game plan
 
Contrast & Compare & Contrast Information Security Roles
Contrast & Compare & Contrast Information Security Roles Contrast & Compare & Contrast Information Security Roles
Contrast & Compare & Contrast Information Security Roles
 
BCM and IT Security
BCM and IT SecurityBCM and IT Security
BCM and IT Security
 
Intro to INFOSEC
Intro to INFOSECIntro to INFOSEC
Intro to INFOSEC
 
Top_10_Interview_Questions_That_You_Should_Know_as_an_Information.pptx
Top_10_Interview_Questions_That_You_Should_Know_as_an_Information.pptxTop_10_Interview_Questions_That_You_Should_Know_as_an_Information.pptx
Top_10_Interview_Questions_That_You_Should_Know_as_an_Information.pptx
 
Slide Deck - CISSP Mentor Program Class Session 1
Slide Deck - CISSP Mentor Program Class Session 1Slide Deck - CISSP Mentor Program Class Session 1
Slide Deck - CISSP Mentor Program Class Session 1
 
Evolving challenges for modern enterprise architectures in the age of APIs
Evolving challenges for modern enterprise architectures in the age of APIsEvolving challenges for modern enterprise architectures in the age of APIs
Evolving challenges for modern enterprise architectures in the age of APIs
 
2016 - Safely Removing the Last Roadblock to Continuous Delivery
2016 - Safely Removing the Last Roadblock to Continuous Delivery2016 - Safely Removing the Last Roadblock to Continuous Delivery
2016 - Safely Removing the Last Roadblock to Continuous Delivery
 
Cybersecurity Interview Questions and Answers | CyberSecurity Interview Tips ...
Cybersecurity Interview Questions and Answers | CyberSecurity Interview Tips ...Cybersecurity Interview Questions and Answers | CyberSecurity Interview Tips ...
Cybersecurity Interview Questions and Answers | CyberSecurity Interview Tips ...
 
Ecommerce Security
Ecommerce SecurityEcommerce Security
Ecommerce Security
 
CISSPCertified Information SystemsSecurity ProfessionalCop.docx
CISSPCertified Information SystemsSecurity ProfessionalCop.docxCISSPCertified Information SystemsSecurity ProfessionalCop.docx
CISSPCertified Information SystemsSecurity ProfessionalCop.docx
 
CISSPCertified Information SystemsSecurity ProfessionalCop.docx
CISSPCertified Information SystemsSecurity ProfessionalCop.docxCISSPCertified Information SystemsSecurity ProfessionalCop.docx
CISSPCertified Information SystemsSecurity ProfessionalCop.docx
 
Safely Removing the Last Roadblock to Continuous Delivery
Safely Removing the Last Roadblock to Continuous DeliverySafely Removing the Last Roadblock to Continuous Delivery
Safely Removing the Last Roadblock to Continuous Delivery
 
Slide Deck – Class Session 1 – FRSecure CISSP Mentor Program
Slide Deck – Class Session 1 – FRSecure CISSP Mentor ProgramSlide Deck – Class Session 1 – FRSecure CISSP Mentor Program
Slide Deck – Class Session 1 – FRSecure CISSP Mentor Program
 
Information security[277]
Information security[277]Information security[277]
Information security[277]
 
UHealth is a health insurance provider based in Australia F.pdf
UHealth is a health insurance provider based in Australia F.pdfUHealth is a health insurance provider based in Australia F.pdf
UHealth is a health insurance provider based in Australia F.pdf
 
Csec 610 Inspiring Innovation--tutorialrank.com
Csec 610 Inspiring Innovation--tutorialrank.comCsec 610 Inspiring Innovation--tutorialrank.com
Csec 610 Inspiring Innovation--tutorialrank.com
 
CIS502 discussion post responses.Respond to the colleagues posts.docx
CIS502 discussion post responses.Respond to the colleagues posts.docxCIS502 discussion post responses.Respond to the colleagues posts.docx
CIS502 discussion post responses.Respond to the colleagues posts.docx
 
CompTIA CySA Domain 3 Security Operations and Monitoring.pptx
CompTIA CySA  Domain 3 Security Operations and Monitoring.pptxCompTIA CySA  Domain 3 Security Operations and Monitoring.pptx
CompTIA CySA Domain 3 Security Operations and Monitoring.pptx
 
CompTIA CySA+ Domain 2 Software and Systems Security.pptx
CompTIA CySA+ Domain 2 Software and Systems Security.pptxCompTIA CySA+ Domain 2 Software and Systems Security.pptx
CompTIA CySA+ Domain 2 Software and Systems Security.pptx
 

Más de Chris F Carroll

Deep Learning in 90 seconds. With a side of Algorithm Bias
Deep Learning in 90 seconds. With a side of Algorithm BiasDeep Learning in 90 seconds. With a side of Algorithm Bias
Deep Learning in 90 seconds. With a side of Algorithm BiasChris F Carroll
 
Agile Software Architecture
Agile Software ArchitectureAgile Software Architecture
Agile Software ArchitectureChris F Carroll
 
Software Architecture: Why and What?
Software Architecture: Why and What?Software Architecture: Why and What?
Software Architecture: Why and What?Chris F Carroll
 
Clojure (and some lisp) in 10 mins for OO developers
Clojure (and some lisp) in 10 mins for OO developersClojure (and some lisp) in 10 mins for OO developers
Clojure (and some lisp) in 10 mins for OO developersChris F Carroll
 
Doing Architecture with Agile Teams IASA UK Summit 2013
Doing Architecture with Agile Teams IASA UK Summit 2013Doing Architecture with Agile Teams IASA UK Summit 2013
Doing Architecture with Agile Teams IASA UK Summit 2013Chris F Carroll
 
XP-Manchester 2013 Software Architecture for Agile Developers Intro
XP-Manchester 2013 Software Architecture for Agile Developers IntroXP-Manchester 2013 Software Architecture for Agile Developers Intro
XP-Manchester 2013 Software Architecture for Agile Developers IntroChris F Carroll
 

Más de Chris F Carroll (6)

Deep Learning in 90 seconds. With a side of Algorithm Bias
Deep Learning in 90 seconds. With a side of Algorithm BiasDeep Learning in 90 seconds. With a side of Algorithm Bias
Deep Learning in 90 seconds. With a side of Algorithm Bias
 
Agile Software Architecture
Agile Software ArchitectureAgile Software Architecture
Agile Software Architecture
 
Software Architecture: Why and What?
Software Architecture: Why and What?Software Architecture: Why and What?
Software Architecture: Why and What?
 
Clojure (and some lisp) in 10 mins for OO developers
Clojure (and some lisp) in 10 mins for OO developersClojure (and some lisp) in 10 mins for OO developers
Clojure (and some lisp) in 10 mins for OO developers
 
Doing Architecture with Agile Teams IASA UK Summit 2013
Doing Architecture with Agile Teams IASA UK Summit 2013Doing Architecture with Agile Teams IASA UK Summit 2013
Doing Architecture with Agile Teams IASA UK Summit 2013
 
XP-Manchester 2013 Software Architecture for Agile Developers Intro
XP-Manchester 2013 Software Architecture for Agile Developers IntroXP-Manchester 2013 Software Architecture for Agile Developers Intro
XP-Manchester 2013 Software Architecture for Agile Developers Intro
 

Último

How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...software pro Development
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
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
 
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
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
+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
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfryanfarris8
 
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
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
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
 
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
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...kalichargn70th171
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdfPearlKirahMaeRagusta1
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
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
 

Último (20)

Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
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
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
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
 
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
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
+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...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
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
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
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
 
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
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
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
 

Software Technical Design for Information Security: A short intro for Tech Leads & Architects

  • 1. Chris F Carroll Software Technical Design for Security Software Architecture for Security
  • 2. Requirements Threats vs. All requirements have edge cases, but with security they expand into a whole second way of seeing the issue. Threats get all the news! But our understanding of threats remains piecemeal if we don’t understand the core requirements they are threatening. So we start here.
  • 3. Software Architecture for Security Chris F Carroll How can we think about security? Software Architecture claims to help us THINK about software systems. To get security right, we want a framework for thinking about it: What are the questions we should ask, and what concepts will help us to answer them?
  • 4. Software Architecture for Security Chris F Carroll ① Ask the Right Questions ② Have a “Domain Model”
  • 5. How Can We Think About Security? Chris F Carroll ✤ WHAT are we trying to secure? 
 ✤ WHO are we securing for or from? 
 ✤ WHAT does “secure” mean anyway? If we can answers these 3 questions then we have done much of the work of thinking about security. To help us answer them, we want some vocabulary, or a domain model.
  • 6. A Typical Information Security Policy (extract from a UK company policy) “We strive to protect the group’s critical information assets against all internal, external, deliberate or accidental threats throughout its lifecycle 
 We protect against unauthorised access threatening the Confidentiality of our information and ensure that the Integrity and Availability of critical information is maintained. 
 Our Information security policy is to ensure business continuity of the Group, minimising the risk of damage by preventing security incidents and reducing their potential impact. We are committed to continuous improvement, ongoing compliance with legislative and regulatory requirements and to ensuring our employees receive appropriate information security awareness training.” But
  • 7. fi ned in ISO27000, the basis for many company’s Security Management. For software development to match the security policy it might help to have—at least—a common vocabulary?! Chris F Carroll (you can get the same vocabulary from wikipedia or a security or software architecture textbook).
  • 8. Chris F Carroll WHAT do we want to secure? Information Assets, typically: 1. Data Stores 2. Systems that let you do things
 WHO are we securing for/from? (Un)/Authorised users
 WHAT does secure mean anyway? Con fi dentiality Integrity Availability Security : Just 3 Questions Grounds for deciding we should secure an asset might include:
  • 9. Information Assets, typically: 1. Data Stores 2. Systems that let you do things
 WHO are we securing for/from? (Un)/Authorised users
 WHAT does secure mean anyway? Con fi dentiality Integrity Availability Security : Just 3 Questions Divide the world into two groups of people: The Authorised and
  • 10. Information Assets, typically: 1. Data Stores 2. Systems that let you do things
 WHO are we securing for/from? (Un)/Authorised users
 WHAT does secure mean anyway? Confidentiality Integrity Availability Security : Just 3 Questions And we get a grip on what “secure” means with the “3 dimensions” de
  • 11.
  • 12. Information Assets, typically: 1. Data Stores 2. Systems that let you do things
 WHO are we securing for/from? (Un)/Authorised users
 WHAT does secure mean anyway? Con fi dentiality Integrity Availability Security : Just 3 Questions Now we have 3 Questions and the Vocabulary to answer them
  • 13. Architecture for Information Security Chris F Carroll Questions So Far?
  • 14. ISO 27000 Vocabulary for Secured Assets Chris F Carroll Access Control User, Groups, Roles Authentication & Authorisation, Principals, Claims IAM, OAuth2, JWT Uptime, Reliability, Backups Discussion: How do our 3 questions and 5 core concepts relate to these other things you might hear about when discussing security?
  • 15. Chris F Carroll Access Control: “to ensure that access to assets is authorised & restricted based on business and security requirements” ISO 27000 Vocabulary for Secured Assets Controlling Read-Access sounds like Con
  • 16.
  • 17.
  • 18.
  • 19.
  • 20. Grant-Read Grant-Write Uptime, backups, connectivity, resilience to attack How does C.I.A map back to other vocabularies? Security includes both functional and non-functional requirements
  • 21. Security : Just 3 Questions Chris F Carroll ✤ WHAT are we trying to secure? ➡ Assets: Data Stores & Systems ✤ WHO are we securing for & from? ➡ (Un)Authorised Users ✤ WHAT does secure mean anyway? ➡ C.I.A. Thinking about security: Our 3 questions and 5 core concepts are enough to state and analyse security requirements for many software systems.
  • 22. Architecture for Information Security Chris F Carroll Questions So Far?
  • 23. 2 Questions about Secured Assets Chris F Carroll About these Assets we are securing… ✤ Where are they? ✤ What paths access them? Thinking about security: When we get to Technical Design, two more questions about assets may simplify our design enormously
  • 24. Architecture for Information Security Chris F Carroll Exercise: www.my fi rst startup.com Discussion Exercise: Let’s do a security design & review for a small startup
  • 25. Architecture For Information Security Chris F Carroll www.wesculptitforu.com Send us a Photo and we’ll 
 send you a sculpture! Only £0.99 per cm³ + p&p! Discussion Exercise
  • 26. Architecture For Information Security Chris F Carroll www.wesculptitforu.com Send us a Photo and we’ll 
 send you a sculpture! Only £0.99 per cm³ + p&p! Discussion Exercise Let’s do a security design for this startup!
  • 27.
  • 28. Information Assets, typically: 1. Data Stores 2. Systems that let you do things
 WHO are we securing for/from? (Un)/Authorised users
 WHAT does secure mean anyway? Con fi dentiality Integrity Availability Discussion Exercise Step1 : Use our 3 questions and 5 core concepts to state and understand our requirements
  • 29. Where Are the Information Assets? Chris F Carroll Discussion Exercise 1) Where are the Assets?
  • 30. Where Are the Information Assets? Chris F Carroll Discussion Exercise Oh no, they’re everywhere!
  • 31.
  • 32. fi rewall) • 3 Gateways • HTTPS for external communication Discussion Exercise https https firewall Start the design by imposing a simplifying structure on the physical system
  • 33. Simplify The Challenge Chris F Carroll Not My Problem Not My Problem Not My Problem Discussion Exercise The point is to make everything outside your structure Not Your Problem https https firewall Simplify! • 1 Border (e.g. a fi rewall) • 3 Gateways • HTTPS for external communication
  • 34. Simplify The Challenge Chris F Carroll Not My Problem Not My Problem Not My Problem - Your Code - Frameworks & Dependencies - OS or Platform - Network - Cloud Platform Discussion Exercise https https firewall Simplify! • 1 Border (e.g. a fi rewall) • 3 Gateways • HTTPS for external communication Then, list all the things inside the structure that are your problem
  • 35. Simplify The Challenge Chris F Carroll Not My Problem Not My Problem Not My Problem - Your Code - Frameworks & Dependencies - OS or Platform - Network - Cloud Platform Discussion Exercise Simplify! • 1 Border (e.g. a fi rewall) • 3 Gateways • HTTPS for external communication https https firewall Finally, for each item on the reduced list,
  • 36.
  • 37. 1) A list of Assets & Users; then a table of CIA requirements for each Asset-User pair (or e.g. asset-role pair) 2) A Deployment View that ❖ Shows where the Assets are ❖ “proves” (well, claims) they are only reachable through the System in an authorised way. 3) A list of assumptions which must hold, and/or procedures which must be followed, for (2) to be true.
  • 38. Architecture for Information Security Chris F Carroll ✤ You may be a little disappointed that the last item is not, “Fo ll ow th is procedure and Lo! It sha ll be secure.” 
 ✤ The last item can only be, “These are the assumptions & procedures which give us acceptable confidence it is secure.”
  • 39. Discussion Exercise: Your Review of my Design
  • 40. Discussion Exercise: Feedback on my Design - Load Balancer Systems which you use may be your problem under GDPR — you need legal dept to advise, and to review the contract
  • 41. Actions after a Security Design Review Chris F Carroll My response to design review might typically be: 1) Updating or correcting one or more of the lists I made 2) Adding or clarifying assumptions 3) Agreeing with IT Operations and/or CIO if any changes to security procedures may be needed 4) Agreeing with IT Operations any other changes needed NB even in a micro-startup where I was a 1-person IT department, I would get someone to review security design
  • 42. Architecture for Information Security Chris F Carroll Questions So Far?
  • 43. Chris F Carroll ✤ How do we Know it’s secure? ✤ WHY do we care about security? A Fourth Question 😲
  • 44. fi nd an insecurity? Security: the further you go, the more complicated it gets … Thinking Even More About Security
  • 45. Security: Not a Hobby, a Way of Life Chris F Carroll ✤ So we need audit, monitoring, reviews …
 ✤ Managing security becomes an entire, never ending, management system & set of processes. Hence “ISMS”
 ✤ We must understand risk Security: the further you go, the more complicated it gets …
  • 46. Risk Management—the 1-slide Intro A Typical Risk Matrix Why Do We Care? Because we are managing Risk
  • 47. fi ne An Information Security Management System With Policies and Processes To Assess and Manage Risk Train Sta ff in Policies and Processes Get Certi fi cation For Your Trained Sta f Get Your System Audited Join An Expert Community Of Practise Know Where To Look For Reference Materials Know Where To Look For News Find out what the Tools are Learn Standard Patterns Do Technical Design Get Technical Design Reviewed Do It All Again So Information Security usually starts with a Management System
  • 48. 
 We protect against unauthorised access threatening the Confidentiality of our information and ensure that the Integrity and Availability of critical information is maintained. 
 Our Information security policy is to ensure business continuity of the Group, minimising the risk of damage by preventing security incidents and reducing their potential impact. We are committed to 
 continuous improvement, ongoing compliance with legislative and regulatory requirements and to ensuring our employees receive appropriate information security awareness training.” Earlier, I ignored the bo
  • 49. fi ne A Management System … Train Sta ff … Get Certi fi cation … Get Audited … ➡ Join An Expert Community Of Practise ✓ https://owasp.org Join the Slack Channel ➡ Know Places you can look for Reference Materials ✓ https://portswigger.net/web-security ✓ https://www.nist.gov/cyberframework ✓ https://www.microsoft.com/en-us/ securityengineering/sdl ✓ https://www.edx.org/professional-certi fi cate/ linuxfoundationx-secure-software-development- fundamentals ➡ Learn Standard Patterns https://cheatsheetseries.owasp.org Do Technical Design Get Technical Design Reviewed Do It All Again What are developer team responsibilities?
  • 50. ✤ WHO are we securing for or from? ✤ WHAT does “secure” mean anyway? ✤ HOW do we know it’s secure? ✤ What RISKS are we managing? If we can answers these 5 questions then we have done much of the work of thinking about security.
  • 51. Chris F Carroll Software Technical Design for Security Software Architecture for Security