[Austria] Security by Design

OWASP EEE

Security by Design. Thomas Bleier

14.10.2015 © Thomas Bleier 1
Thomas Bleier
Security by Design
OWASP EEE
14.10.2015
Definition of „Security“
• Webster: „The quality or state of being secure as
o Freedom from danger
o Freedom from fear or anxiety
o Freedom from the prospect of being laid off“
• In IT typically defined by
o Confidentiality
o Integrity
o Availability
• „Security“ means different things to different people
especially also in IT 
2 14.10.2015
14.10.2015 © Thomas Bleier 2
Confidentiality
• Only authorized users are able to
access information and/or systems
• Confidentiality vs. Privacy
• Privacy: protect the person
• Confidentiality: protect the organisation/information
• Confidentiality of the content of information
vs.
Confidentiality of the source or destination of information
(Metadata)
3 14.10.2015
Integrity
• Prevention of malicious manipulation of
systems and/or data
• Integrity of the content
o Protection against change
• Integrity of the source of information (Authenticity)
o Protection against faking wrong information
• Trust ist based on the integrity of information and/or systems
4 14.10.2015
14.10.2015 © Thomas Bleier 3
Availability
• Ensure that information and/or systems
can be used by authorized users when
needed
• An important aspect of security especially
in terms of business…
• In cyber-physical systems (ICS, etc.)
availability often has a hight priority than
confidentiality or integrity
5 14.10.2015
Other aspects of „Security“
• Non-repudiation of information or actions
• Resilience – recover from security problems
• Trustworthiness – trust into a system
• Anonymity of information or actions
• Protection against unwanted information or actions
6 14.10.2015
14.10.2015 © Thomas Bleier 4
Security is not absolute
• Security level
compared to peers
• Security level of
a system
• Breadth and lowest point
is crucial, not the highest
point…
14.10.2015
Risk
• ISO 73:2002: Risk: combination of the probability […] of an event
[…] and its consequence
8 14.10.2015
Risk =
Threat
x
Vulnerability
X
Impact
Likelihood
14.10.2015 © Thomas Bleier 5
Security vs. Safety
• No „100%“ security/validation possible
• Example:
• Invalid input may crash a system with a probability of 1 to 10^15
• Safety: probably acceptable
• Security: an attacker looks for exactly this case
14.10.2015
Security by Design
Principles
Best Practice – „Avoid known errors!“
14.10.2015 © Thomas Bleier 10
14.10.2015 © Thomas Bleier 6
Defense in Depth
• Don‘t put all eggs in one basket!
• Multiple layers of defense
• Diverse strategies
• Attacker has to overcome multiple
barriers
• More likely detected…
• Examples:
o Access Control and Encryption to protect data
o Web Application Firewalls
o Protocol switches/translations
11 14.10.2015
Secure the weakest link
• Attackers usually choose
the simplest way
o Making already secure parts
more secure does not help
• Find the „weak links“
o e.g. via Threat Analysis
• Risk-Managmenet is essential
o Think like an attacker…
• Examples:
o Why trying to break the SSL-Encryption when using a trojan on the client is much
easier?
o Why trying to attack the Firewall when you can access the database directly via
SQL-injection?
12 14.10.2015
14.10.2015 © Thomas Bleier 7
Least Privilege
• For each activity, use only
minimal required privileges
• Rights based on task,
not role/identity
• Granularity of assignment
e.g. Posix vs. modern ACL
• Temporal execution of activities with higher privileges
• Examples:
o User Accounts – Unix vs. Windows vs. UAC
o Sandboxing – Adobe Reader, Chrome Plugins, etc.
o Privileged Ports in Unix (<1024) – daemons should drop
root privileges
13 14.10.2015
Open Design
• No „Security by Obscurity“
o Security of a system must not depend on
not knowing how it was implemented
• Kerkhoff-Principle for encryption
o Always assume that an attacker has
complete knowledge about the system
• But: concealing the internal structure
of a system can be an additional layer
of protection
o e.g: Network – do not publish internal network infos (DNS, NAT)
• Examples:
o Encryption Algorithms - AES, Hash-Algorithms - SHA-3
o Mifare RFID-Chip: proprietary algorithm, broken by reverse engineering
14 14.10.2015
14.10.2015 © Thomas Bleier 8
Economy of Mechanism
• Security mechanisms should be as simple as possible
• KISS – „Keep it simple, stupid“
• Fewer functionality means
less that can go wrong…
• Also no unnecessary security functionality
• Reduces errors in implementation, but also
in configuration and usage
• Makes validation easier
• Examples:
o Microkernel-Architectures
o Security Appliances – „function bloat“
15 14.10.2015
Compartmentalization
• Separation of system
into sealed compartments
• Security breaches in one
area do not necessarily
lead to a whole system
compromise
• Curtailment of successful
attacks
• Examples:
o Network-Segmentation
o Virtualization (Hypervisor, Zones, Jails, etc.)
o Diginotar: public CA and Gov. CA in the same trust zone
16 14.10.2015
14.10.2015 © Thomas Bleier 9
Detect – Deter – Prevent
• No security system is perfect
• If you can‘t prevent succesful
attacks, you should at least
detect them…
• Traceability of activities in a
system and correlation to actors
• Deterrence
• Different gradients:
o Detect – e.g. forensics
o Deter – detection and prosecution is daunting
o Detect and Recover – attack was succesful, but impact is minimized
o Prevent – attack prohibited
17 14.10.2015
Detect – Deter – Prevent
• Examples:
o Antivirus, IDS/IPS
o Credit Cards – analysis of transactions
o Bookkeeping – double-entry accounting
o Logging and analysis of transactions in the finance industry
18 14.10.2015
14.10.2015 © Thomas Bleier 10
Secure defaults
• „Secure“ settings should be
the default
• Less secure settings have to be
activated deliberately
• Blacklisting vs. Whitelisting
• Examples:
o Access Control: „default deny“
o Network/Firewall: all ports blocked, selectively open
o Operating system: no services active by default
19 14.10.2015
Separation of Duties/Privileges
• Decision should not be based on a single condition
• More checks means
more chances that
a security breach
can be detected
• Security vs. Availability
• Example:
o Four-eyes principle
o Two-factor authentication
20 14.10.2015
14.10.2015 © Thomas Bleier 11
Least common mechanism
• Different systems/system parts should
not depend on the same security system
• Problem of information transfer via
„covert channels“
• Assumptions in one case are probably
invalid in another case
• Examples:
o Single Sign On – central authentication mechanisms
o Passwort-Recovery on websites
o Authentication via other services (Facebook, etc.)
21 14.10.2015
Example: Apple iCloud / Amazon Hack
• August 2012: How Apple and Amazon Security Flaws
Led to my Epic Hacking
o http://www.wired.com/gadgetlab/2012/08/apple-amazon-mat-honan-hacking/all/
o iCloud – Apple Cloud Service for iPhone (Backup, Sync, etc.)
o Protected by a password
o Reset of the password is possible via Apple Support
o For this you need your invoice address and the last 4 digits of your credit card
• How do you get this information?
o Call Amazon Support: „I‘d like to add a new credit card“
o Need: account name, E-Mail, invoice address
o Call Amazon Support again, tell them you lost your E-Mail account
o Need: account name, invoice address and credit card number
o Log in to Amazon account via password reset
o Access to last orders – last 4 digits of credit card used to pay
22 14.10.2015
14.10.2015 © Thomas Bleier 12
Completely Mediated Access
• Every access to a system has to be checked
o Not only the first/front/user/etc.
• No bypass of access control
o Developer access
o Performance optimizations
• Examples
o Web Application Firewall
o Maintenance-Passwords in
various devices/appliances
23 14.10.2015
Fail secure
• In the event of an error a security mechanism should be
in the „secure“ state
• Examples:
o Typical example of software code:
o Railway vs. airplane
o // this should never happen...
o // fixme later
24 14.10.2015
DWORD dwRet = IsAccessAllowed(...);
if (dwRet == ERROR_ACCESS_DENIED) {
// Security check failed.
// Inform user that access is denied.
} else {
// Security check OK.
}
14.10.2015 © Thomas Bleier 13
Psychological acceptability
• Security mechanisms should not
be a (big) obstacle
• UI for security has to be simple
o otherwise it will not be used
o or circumvented
• Security mechanism should not
penalize users who obey the rules
• Design goal: „secure“ usage should be „natural“,
„unsecure“ usage should be „unnatural“
• Examples:
o Passwords: Length, Complexity, Lifecycle vs. Post-It
o Browser – certificate warnings
25 14.10.2015
„Good enough“ – Security Economics
• A „perfect“ security system is typically not necessary
o also not feasible/affordable
o Too strong focus on one area  negligence in other areas
 weakest Link
• „There are no secure systems, only degrees of
insecurity“ (Adi Shamir)
• „It‘s all about risk“ – a good risk analysis should be at the
beginning of every security concept
• An absolute secure system that cannot be used has the
same value than a system without any security
26 14.10.2015
14.10.2015 © Thomas Bleier 14
Resilience – what happens after an attack???
• Preventing an attack is not enough
• The system has to stay operational,
even after a successful attack
• Example:
o Content Scrambling System (DRM of the DVD)
system was broken after reverse engineering of a single player
o Better: Advanced Access Content System (BlueRay)
a single broken player (key) can be blocked  system survives
27 14.10.2015
Social Engineering
• Effort to break a system vs.
Effort to reach a goal…
• If technical hurdles get too high
 Social Engineering
o see Kevin Mitnick
• Microsoft Security Intelligence
Report 2011:
o Nearly half of all malware infections
involve some kind of „user interaction“
28 14.10.2015
14.10.2015 © Thomas Bleier 15
Security has a price
The right balance is important!
29 14.10.2015
Security
Convenience
Functionality
Performance
Security has a price…
30 14.10.2015 http://support.microsoft.com/kb/276304/en-us
14.10.2015 © Thomas Bleier 16
Security by Design - Literature
• Ross Anderson: Security Engineering, 2008
• Bruce Schneier: Secrets & Lies, 2000
• NIST SP 800-27 – Engineering Principles for Information
Technology Security
• Bruce Schneier: Beyond Fear, 2006
• David Rice: Geekonomics, 2008
• Viega, McGraw: Building Secure Software, 2001
• Saltzer, Schroeder: The Protection of Information in
Computer Systems, 1975
31 14.10.2015
Questions?
© Thomas Bleier 32
Thomas Bleier
Dipl.-Ing. MSc zPM CISSP CISA CISM CEH
Senior Security Architect, Teamlead Security Professional Services
T-Systems Austria GmbH
thomas.bleier@t-systems.at | +43 676 8642 8587
thomas@bleier.at | +43 664 3400559

Recommended

Any of these folks work with you? by
Any of these folks work with you?Any of these folks work with you?
Any of these folks work with you?Kevin O'Connor
121 views11 slides
Cybersecurity for CRM v0219-3 by
Cybersecurity for CRM v0219-3Cybersecurity for CRM v0219-3
Cybersecurity for CRM v0219-3Caston Thomas
109 views21 slides
Security Awareness Training: Are We Getting Any Better at Organizational and ... by
Security Awareness Training: Are We Getting Any Better at Organizational and ...Security Awareness Training: Are We Getting Any Better at Organizational and ...
Security Awareness Training: Are We Getting Any Better at Organizational and ...Enterprise Management Associates
522 views26 slides
Dia da Música by
Dia da MúsicaDia da Música
Dia da MúsicaPaulo Antunes
1.2K views18 slides
[Bucharest] XML Based Attacks by
[Bucharest] XML Based Attacks[Bucharest] XML Based Attacks
[Bucharest] XML Based AttacksOWASP EEE
610 views25 slides

More Related Content

Viewers also liked

[Lithuania] I am the cavalry by
[Lithuania] I am the cavalry[Lithuania] I am the cavalry
[Lithuania] I am the cavalryOWASP EEE
539 views36 slides
[Poland] It's only about frontend by
[Poland] It's only about frontend[Poland] It's only about frontend
[Poland] It's only about frontendOWASP EEE
521 views56 slides
[Russia] Node.JS - Architecture and Vulnerabilities by
[Russia] Node.JS - Architecture and Vulnerabilities[Russia] Node.JS - Architecture and Vulnerabilities
[Russia] Node.JS - Architecture and VulnerabilitiesOWASP EEE
560 views15 slides
[Cluj] CSP (Content Security Policy) by
[Cluj] CSP (Content Security Policy)[Cluj] CSP (Content Security Policy)
[Cluj] CSP (Content Security Policy)OWASP EEE
576 views13 slides
[Lithuania] DigiCerts and DigiID to Enterprise apps by
[Lithuania] DigiCerts and DigiID to Enterprise apps[Lithuania] DigiCerts and DigiID to Enterprise apps
[Lithuania] DigiCerts and DigiID to Enterprise appsOWASP EEE
350 views16 slides
[Russia] Give me a stable input by
[Russia] Give me a stable input[Russia] Give me a stable input
[Russia] Give me a stable inputOWASP EEE
335 views56 slides

Viewers also liked(8)

[Lithuania] I am the cavalry by OWASP EEE
[Lithuania] I am the cavalry[Lithuania] I am the cavalry
[Lithuania] I am the cavalry
OWASP EEE539 views
[Poland] It's only about frontend by OWASP EEE
[Poland] It's only about frontend[Poland] It's only about frontend
[Poland] It's only about frontend
OWASP EEE521 views
[Russia] Node.JS - Architecture and Vulnerabilities by OWASP EEE
[Russia] Node.JS - Architecture and Vulnerabilities[Russia] Node.JS - Architecture and Vulnerabilities
[Russia] Node.JS - Architecture and Vulnerabilities
OWASP EEE560 views
[Cluj] CSP (Content Security Policy) by OWASP EEE
[Cluj] CSP (Content Security Policy)[Cluj] CSP (Content Security Policy)
[Cluj] CSP (Content Security Policy)
OWASP EEE576 views
[Lithuania] DigiCerts and DigiID to Enterprise apps by OWASP EEE
[Lithuania] DigiCerts and DigiID to Enterprise apps[Lithuania] DigiCerts and DigiID to Enterprise apps
[Lithuania] DigiCerts and DigiID to Enterprise apps
OWASP EEE350 views
[Russia] Give me a stable input by OWASP EEE
[Russia] Give me a stable input[Russia] Give me a stable input
[Russia] Give me a stable input
OWASP EEE335 views
[Bucharest] Catching up with today's malicious actors by OWASP EEE
[Bucharest] Catching up with today's malicious actors[Bucharest] Catching up with today's malicious actors
[Bucharest] Catching up with today's malicious actors
OWASP EEE431 views
[Russia] MySQL OOB injections by OWASP EEE
[Russia] MySQL OOB injections[Russia] MySQL OOB injections
[Russia] MySQL OOB injections
OWASP EEE1.6K views

Similar to [Austria] Security by Design

Internet Issues (How to Deal on Internet Security) by
Internet Issues (How to Deal on Internet Security)Internet Issues (How to Deal on Internet Security)
Internet Issues (How to Deal on Internet Security)Hannah Jane del Castillo
3K views19 slides
Internet of Things Security by
Internet of Things SecurityInternet of Things Security
Internet of Things SecurityThom. Poole
1.9K views17 slides
Ns lecture5: Introduction to Computer, Information, and Network Security. by
Ns lecture5: Introduction to Computer, Information, and Network Security.Ns lecture5: Introduction to Computer, Information, and Network Security.
Ns lecture5: Introduction to Computer, Information, and Network Security.Aksum Institute of Technology(AIT, @Letsgo)
760 views70 slides
12 Simple Cybersecurity Rules For Your Small Business by
12 Simple Cybersecurity Rules For Your Small Business 12 Simple Cybersecurity Rules For Your Small Business
12 Simple Cybersecurity Rules For Your Small Business NSUGSCIS
506 views31 slides
IT Security Management -- People, Procedures and Tools by
IT Security Management -- People, Procedures and ToolsIT Security Management -- People, Procedures and Tools
IT Security Management -- People, Procedures and ToolsAndrew S. Baker (ASB)
1.2K views34 slides
Privacies are Coming by
Privacies are ComingPrivacies are Coming
Privacies are ComingErnest Staats
93 views29 slides

Similar to [Austria] Security by Design(20)

Internet of Things Security by Thom. Poole
Internet of Things SecurityInternet of Things Security
Internet of Things Security
Thom. Poole1.9K views
12 Simple Cybersecurity Rules For Your Small Business by NSUGSCIS
12 Simple Cybersecurity Rules For Your Small Business 12 Simple Cybersecurity Rules For Your Small Business
12 Simple Cybersecurity Rules For Your Small Business
NSUGSCIS506 views
IT Security Management -- People, Procedures and Tools by Andrew S. Baker (ASB)
IT Security Management -- People, Procedures and ToolsIT Security Management -- People, Procedures and Tools
IT Security Management -- People, Procedures and Tools
Secure by Design - Security Design Principles for the Working Architect by Eoin Woods
Secure by Design - Security Design Principles for the Working ArchitectSecure by Design - Security Design Principles for the Working Architect
Secure by Design - Security Design Principles for the Working Architect
Eoin Woods1.5K views
Small Business Administration Recommendations by Meg Weber
Small Business Administration RecommendationsSmall Business Administration Recommendations
Small Business Administration Recommendations
Meg Weber512 views
Intro to INFOSEC by Sean Whalen
Intro to INFOSECIntro to INFOSEC
Intro to INFOSEC
Sean Whalen1.2K views
Secure by Design - Security Design Principles for the Rest of Us by Eoin Woods
Secure by Design - Security Design Principles for the Rest of UsSecure by Design - Security Design Principles for the Rest of Us
Secure by Design - Security Design Principles for the Rest of Us
Eoin Woods5.7K views
Managing Frequently Overlooked Risks & Threats (FORTS) in Corporations by Dinesh O Bareja
Managing Frequently Overlooked Risks & Threats (FORTS) in CorporationsManaging Frequently Overlooked Risks & Threats (FORTS) in Corporations
Managing Frequently Overlooked Risks & Threats (FORTS) in Corporations
Dinesh O Bareja1.2K views
Survey Presentation About Application Security by Nicholas Davis
Survey Presentation About Application SecuritySurvey Presentation About Application Security
Survey Presentation About Application Security
Nicholas Davis204 views
DRC -- Cybersecurity concepts2015 by T. J. Saotome
DRC -- Cybersecurity concepts2015DRC -- Cybersecurity concepts2015
DRC -- Cybersecurity concepts2015
T. J. Saotome290 views
Architecting for Security Resilience by Joel Aleburu
Architecting for Security ResilienceArchitecting for Security Resilience
Architecting for Security Resilience
Joel Aleburu205 views

More from OWASP EEE

[Austria] ZigBee exploited by
[Austria] ZigBee exploited[Austria] ZigBee exploited
[Austria] ZigBee exploitedOWASP EEE
747 views48 slides
[Austria] How we hacked an online mobile banking Trojan by
[Austria] How we hacked an online mobile banking Trojan[Austria] How we hacked an online mobile banking Trojan
[Austria] How we hacked an online mobile banking TrojanOWASP EEE
654 views41 slides
[Poland] SecOps live cooking with OWASP appsec tools by
[Poland] SecOps live cooking with OWASP appsec tools[Poland] SecOps live cooking with OWASP appsec tools
[Poland] SecOps live cooking with OWASP appsec toolsOWASP EEE
461 views35 slides
[Cluj] Turn SSL ON by
[Cluj] Turn SSL ON[Cluj] Turn SSL ON
[Cluj] Turn SSL ONOWASP EEE
406 views16 slides
[Cluj] Information Security Through Gamification by
[Cluj] Information Security Through Gamification[Cluj] Information Security Through Gamification
[Cluj] Information Security Through GamificationOWASP EEE
585 views17 slides
[Cluj] A distributed - collaborative client certification system by
[Cluj] A distributed - collaborative client certification system[Cluj] A distributed - collaborative client certification system
[Cluj] A distributed - collaborative client certification systemOWASP EEE
163 views14 slides

More from OWASP EEE(17)

[Austria] ZigBee exploited by OWASP EEE
[Austria] ZigBee exploited[Austria] ZigBee exploited
[Austria] ZigBee exploited
OWASP EEE747 views
[Austria] How we hacked an online mobile banking Trojan by OWASP EEE
[Austria] How we hacked an online mobile banking Trojan[Austria] How we hacked an online mobile banking Trojan
[Austria] How we hacked an online mobile banking Trojan
OWASP EEE654 views
[Poland] SecOps live cooking with OWASP appsec tools by OWASP EEE
[Poland] SecOps live cooking with OWASP appsec tools[Poland] SecOps live cooking with OWASP appsec tools
[Poland] SecOps live cooking with OWASP appsec tools
OWASP EEE461 views
[Cluj] Turn SSL ON by OWASP EEE
[Cluj] Turn SSL ON[Cluj] Turn SSL ON
[Cluj] Turn SSL ON
OWASP EEE406 views
[Cluj] Information Security Through Gamification by OWASP EEE
[Cluj] Information Security Through Gamification[Cluj] Information Security Through Gamification
[Cluj] Information Security Through Gamification
OWASP EEE585 views
[Cluj] A distributed - collaborative client certification system by OWASP EEE
[Cluj] A distributed - collaborative client certification system[Cluj] A distributed - collaborative client certification system
[Cluj] A distributed - collaborative client certification system
OWASP EEE163 views
[Russia] Bugs -> max, time &lt;= T by OWASP EEE
[Russia] Bugs -> max, time &lt;= T[Russia] Bugs -> max, time &lt;= T
[Russia] Bugs -> max, time &lt;= T
OWASP EEE346 views
[Russia] Building better product security by OWASP EEE
[Russia] Building better product security[Russia] Building better product security
[Russia] Building better product security
OWASP EEE382 views
[Lithuania] Cross-site request forgery: ways to exploit, ways to prevent by OWASP EEE
[Lithuania] Cross-site request forgery: ways to exploit, ways to prevent[Lithuania] Cross-site request forgery: ways to exploit, ways to prevent
[Lithuania] Cross-site request forgery: ways to exploit, ways to prevent
OWASP EEE774 views
[Hungary] I play Jack of Information Disclosure by OWASP EEE
[Hungary] I play Jack of Information Disclosure[Hungary] I play Jack of Information Disclosure
[Hungary] I play Jack of Information Disclosure
OWASP EEE510 views
[Hungary] Survival is not mandatory. The air force one has departured are you... by OWASP EEE
[Hungary] Survival is not mandatory. The air force one has departured are you...[Hungary] Survival is not mandatory. The air force one has departured are you...
[Hungary] Survival is not mandatory. The air force one has departured are you...
OWASP EEE378 views
[Hungary] Secure Software? Start appreciating your developers! by OWASP EEE
[Hungary] Secure Software? Start appreciating your developers![Hungary] Secure Software? Start appreciating your developers!
[Hungary] Secure Software? Start appreciating your developers!
OWASP EEE237 views
[Bucharest] Your intents are dirty, droid! by OWASP EEE
[Bucharest] Your intents are dirty, droid![Bucharest] Your intents are dirty, droid!
[Bucharest] Your intents are dirty, droid!
OWASP EEE390 views
[Bucharest] #DontTrustTheDarkSide by OWASP EEE
[Bucharest] #DontTrustTheDarkSide[Bucharest] #DontTrustTheDarkSide
[Bucharest] #DontTrustTheDarkSide
OWASP EEE517 views
[Bucharest] From SCADA to IoT Cyber Security by OWASP EEE
[Bucharest] From SCADA to IoT Cyber Security[Bucharest] From SCADA to IoT Cyber Security
[Bucharest] From SCADA to IoT Cyber Security
OWASP EEE1.1K views
[Bucharest] Reversing the Apple Sandbox by OWASP EEE
[Bucharest] Reversing the Apple Sandbox[Bucharest] Reversing the Apple Sandbox
[Bucharest] Reversing the Apple Sandbox
OWASP EEE338 views
[Bucharest] Attack is easy, let's talk defence by OWASP EEE
[Bucharest] Attack is easy, let's talk defence[Bucharest] Attack is easy, let's talk defence
[Bucharest] Attack is easy, let's talk defence
OWASP EEE792 views

Recently uploaded

Affiliate Marketing by
Affiliate MarketingAffiliate Marketing
Affiliate MarketingNavin Dhanuka
17 views30 slides
ATPMOUSE_융합2조.pptx by
ATPMOUSE_융합2조.pptxATPMOUSE_융합2조.pptx
ATPMOUSE_융합2조.pptxkts120898
35 views70 slides
Marketing and Community Building in Web3 by
Marketing and Community Building in Web3Marketing and Community Building in Web3
Marketing and Community Building in Web3Federico Ast
14 views64 slides
How to think like a threat actor for Kubernetes.pptx by
How to think like a threat actor for Kubernetes.pptxHow to think like a threat actor for Kubernetes.pptx
How to think like a threat actor for Kubernetes.pptxLibbySchulze1
5 views33 slides
hamro digital logics.pptx by
hamro digital logics.pptxhamro digital logics.pptx
hamro digital logics.pptxtupeshghimire
10 views36 slides
The Dark Web : Hidden Services by
The Dark Web : Hidden ServicesThe Dark Web : Hidden Services
The Dark Web : Hidden ServicesAnshu Singh
14 views24 slides

Recently uploaded(6)

ATPMOUSE_융합2조.pptx by kts120898
ATPMOUSE_융합2조.pptxATPMOUSE_융합2조.pptx
ATPMOUSE_융합2조.pptx
kts12089835 views
Marketing and Community Building in Web3 by Federico Ast
Marketing and Community Building in Web3Marketing and Community Building in Web3
Marketing and Community Building in Web3
Federico Ast14 views
How to think like a threat actor for Kubernetes.pptx by LibbySchulze1
How to think like a threat actor for Kubernetes.pptxHow to think like a threat actor for Kubernetes.pptx
How to think like a threat actor for Kubernetes.pptx
LibbySchulze15 views
The Dark Web : Hidden Services by Anshu Singh
The Dark Web : Hidden ServicesThe Dark Web : Hidden Services
The Dark Web : Hidden Services
Anshu Singh14 views

[Austria] Security by Design

  • 1. 14.10.2015 © Thomas Bleier 1 Thomas Bleier Security by Design OWASP EEE 14.10.2015 Definition of „Security“ • Webster: „The quality or state of being secure as o Freedom from danger o Freedom from fear or anxiety o Freedom from the prospect of being laid off“ • In IT typically defined by o Confidentiality o Integrity o Availability • „Security“ means different things to different people especially also in IT  2 14.10.2015
  • 2. 14.10.2015 © Thomas Bleier 2 Confidentiality • Only authorized users are able to access information and/or systems • Confidentiality vs. Privacy • Privacy: protect the person • Confidentiality: protect the organisation/information • Confidentiality of the content of information vs. Confidentiality of the source or destination of information (Metadata) 3 14.10.2015 Integrity • Prevention of malicious manipulation of systems and/or data • Integrity of the content o Protection against change • Integrity of the source of information (Authenticity) o Protection against faking wrong information • Trust ist based on the integrity of information and/or systems 4 14.10.2015
  • 3. 14.10.2015 © Thomas Bleier 3 Availability • Ensure that information and/or systems can be used by authorized users when needed • An important aspect of security especially in terms of business… • In cyber-physical systems (ICS, etc.) availability often has a hight priority than confidentiality or integrity 5 14.10.2015 Other aspects of „Security“ • Non-repudiation of information or actions • Resilience – recover from security problems • Trustworthiness – trust into a system • Anonymity of information or actions • Protection against unwanted information or actions 6 14.10.2015
  • 4. 14.10.2015 © Thomas Bleier 4 Security is not absolute • Security level compared to peers • Security level of a system • Breadth and lowest point is crucial, not the highest point… 14.10.2015 Risk • ISO 73:2002: Risk: combination of the probability […] of an event […] and its consequence 8 14.10.2015 Risk = Threat x Vulnerability X Impact Likelihood
  • 5. 14.10.2015 © Thomas Bleier 5 Security vs. Safety • No „100%“ security/validation possible • Example: • Invalid input may crash a system with a probability of 1 to 10^15 • Safety: probably acceptable • Security: an attacker looks for exactly this case 14.10.2015 Security by Design Principles Best Practice – „Avoid known errors!“ 14.10.2015 © Thomas Bleier 10
  • 6. 14.10.2015 © Thomas Bleier 6 Defense in Depth • Don‘t put all eggs in one basket! • Multiple layers of defense • Diverse strategies • Attacker has to overcome multiple barriers • More likely detected… • Examples: o Access Control and Encryption to protect data o Web Application Firewalls o Protocol switches/translations 11 14.10.2015 Secure the weakest link • Attackers usually choose the simplest way o Making already secure parts more secure does not help • Find the „weak links“ o e.g. via Threat Analysis • Risk-Managmenet is essential o Think like an attacker… • Examples: o Why trying to break the SSL-Encryption when using a trojan on the client is much easier? o Why trying to attack the Firewall when you can access the database directly via SQL-injection? 12 14.10.2015
  • 7. 14.10.2015 © Thomas Bleier 7 Least Privilege • For each activity, use only minimal required privileges • Rights based on task, not role/identity • Granularity of assignment e.g. Posix vs. modern ACL • Temporal execution of activities with higher privileges • Examples: o User Accounts – Unix vs. Windows vs. UAC o Sandboxing – Adobe Reader, Chrome Plugins, etc. o Privileged Ports in Unix (<1024) – daemons should drop root privileges 13 14.10.2015 Open Design • No „Security by Obscurity“ o Security of a system must not depend on not knowing how it was implemented • Kerkhoff-Principle for encryption o Always assume that an attacker has complete knowledge about the system • But: concealing the internal structure of a system can be an additional layer of protection o e.g: Network – do not publish internal network infos (DNS, NAT) • Examples: o Encryption Algorithms - AES, Hash-Algorithms - SHA-3 o Mifare RFID-Chip: proprietary algorithm, broken by reverse engineering 14 14.10.2015
  • 8. 14.10.2015 © Thomas Bleier 8 Economy of Mechanism • Security mechanisms should be as simple as possible • KISS – „Keep it simple, stupid“ • Fewer functionality means less that can go wrong… • Also no unnecessary security functionality • Reduces errors in implementation, but also in configuration and usage • Makes validation easier • Examples: o Microkernel-Architectures o Security Appliances – „function bloat“ 15 14.10.2015 Compartmentalization • Separation of system into sealed compartments • Security breaches in one area do not necessarily lead to a whole system compromise • Curtailment of successful attacks • Examples: o Network-Segmentation o Virtualization (Hypervisor, Zones, Jails, etc.) o Diginotar: public CA and Gov. CA in the same trust zone 16 14.10.2015
  • 9. 14.10.2015 © Thomas Bleier 9 Detect – Deter – Prevent • No security system is perfect • If you can‘t prevent succesful attacks, you should at least detect them… • Traceability of activities in a system and correlation to actors • Deterrence • Different gradients: o Detect – e.g. forensics o Deter – detection and prosecution is daunting o Detect and Recover – attack was succesful, but impact is minimized o Prevent – attack prohibited 17 14.10.2015 Detect – Deter – Prevent • Examples: o Antivirus, IDS/IPS o Credit Cards – analysis of transactions o Bookkeeping – double-entry accounting o Logging and analysis of transactions in the finance industry 18 14.10.2015
  • 10. 14.10.2015 © Thomas Bleier 10 Secure defaults • „Secure“ settings should be the default • Less secure settings have to be activated deliberately • Blacklisting vs. Whitelisting • Examples: o Access Control: „default deny“ o Network/Firewall: all ports blocked, selectively open o Operating system: no services active by default 19 14.10.2015 Separation of Duties/Privileges • Decision should not be based on a single condition • More checks means more chances that a security breach can be detected • Security vs. Availability • Example: o Four-eyes principle o Two-factor authentication 20 14.10.2015
  • 11. 14.10.2015 © Thomas Bleier 11 Least common mechanism • Different systems/system parts should not depend on the same security system • Problem of information transfer via „covert channels“ • Assumptions in one case are probably invalid in another case • Examples: o Single Sign On – central authentication mechanisms o Passwort-Recovery on websites o Authentication via other services (Facebook, etc.) 21 14.10.2015 Example: Apple iCloud / Amazon Hack • August 2012: How Apple and Amazon Security Flaws Led to my Epic Hacking o http://www.wired.com/gadgetlab/2012/08/apple-amazon-mat-honan-hacking/all/ o iCloud – Apple Cloud Service for iPhone (Backup, Sync, etc.) o Protected by a password o Reset of the password is possible via Apple Support o For this you need your invoice address and the last 4 digits of your credit card • How do you get this information? o Call Amazon Support: „I‘d like to add a new credit card“ o Need: account name, E-Mail, invoice address o Call Amazon Support again, tell them you lost your E-Mail account o Need: account name, invoice address and credit card number o Log in to Amazon account via password reset o Access to last orders – last 4 digits of credit card used to pay 22 14.10.2015
  • 12. 14.10.2015 © Thomas Bleier 12 Completely Mediated Access • Every access to a system has to be checked o Not only the first/front/user/etc. • No bypass of access control o Developer access o Performance optimizations • Examples o Web Application Firewall o Maintenance-Passwords in various devices/appliances 23 14.10.2015 Fail secure • In the event of an error a security mechanism should be in the „secure“ state • Examples: o Typical example of software code: o Railway vs. airplane o // this should never happen... o // fixme later 24 14.10.2015 DWORD dwRet = IsAccessAllowed(...); if (dwRet == ERROR_ACCESS_DENIED) { // Security check failed. // Inform user that access is denied. } else { // Security check OK. }
  • 13. 14.10.2015 © Thomas Bleier 13 Psychological acceptability • Security mechanisms should not be a (big) obstacle • UI for security has to be simple o otherwise it will not be used o or circumvented • Security mechanism should not penalize users who obey the rules • Design goal: „secure“ usage should be „natural“, „unsecure“ usage should be „unnatural“ • Examples: o Passwords: Length, Complexity, Lifecycle vs. Post-It o Browser – certificate warnings 25 14.10.2015 „Good enough“ – Security Economics • A „perfect“ security system is typically not necessary o also not feasible/affordable o Too strong focus on one area  negligence in other areas  weakest Link • „There are no secure systems, only degrees of insecurity“ (Adi Shamir) • „It‘s all about risk“ – a good risk analysis should be at the beginning of every security concept • An absolute secure system that cannot be used has the same value than a system without any security 26 14.10.2015
  • 14. 14.10.2015 © Thomas Bleier 14 Resilience – what happens after an attack??? • Preventing an attack is not enough • The system has to stay operational, even after a successful attack • Example: o Content Scrambling System (DRM of the DVD) system was broken after reverse engineering of a single player o Better: Advanced Access Content System (BlueRay) a single broken player (key) can be blocked  system survives 27 14.10.2015 Social Engineering • Effort to break a system vs. Effort to reach a goal… • If technical hurdles get too high  Social Engineering o see Kevin Mitnick • Microsoft Security Intelligence Report 2011: o Nearly half of all malware infections involve some kind of „user interaction“ 28 14.10.2015
  • 15. 14.10.2015 © Thomas Bleier 15 Security has a price The right balance is important! 29 14.10.2015 Security Convenience Functionality Performance Security has a price… 30 14.10.2015 http://support.microsoft.com/kb/276304/en-us
  • 16. 14.10.2015 © Thomas Bleier 16 Security by Design - Literature • Ross Anderson: Security Engineering, 2008 • Bruce Schneier: Secrets & Lies, 2000 • NIST SP 800-27 – Engineering Principles for Information Technology Security • Bruce Schneier: Beyond Fear, 2006 • David Rice: Geekonomics, 2008 • Viega, McGraw: Building Secure Software, 2001 • Saltzer, Schroeder: The Protection of Information in Computer Systems, 1975 31 14.10.2015 Questions? © Thomas Bleier 32 Thomas Bleier Dipl.-Ing. MSc zPM CISSP CISA CISM CEH Senior Security Architect, Teamlead Security Professional Services T-Systems Austria GmbH thomas.bleier@t-systems.at | +43 676 8642 8587 thomas@bleier.at | +43 664 3400559