SlideShare a Scribd company logo
1 of 17
Download to read offline
1
BUILDINGSECURE
SYSTEMSHowtobuildsystems
thatresistattacks
CYBERSECURITY
WEBINARPART6
JARNONIEMELÄ
F-SECURE
3th ofDecember2015
CYBERSECURITY WEBINAR
SERIES-PART6
© F-Secure2
• INTRODUCTION TO CYBERSECURITY
• DEFENDING WORKSTATIONS
• DEFENDING SERVERS
• DEFENDING NETWORKS
• RESPONDING TO AN INCIDENT
• BUILDING SECURE SYSTEMS NOW
RECORDINGS:
HTTPS://BUSINESS.F-SECURE.COM
3
BUILDING
SECURE
SYSTEMS
JARNONIEMELÄ
SENIORRESEARCHER
F-SECURE
There AreNoPerfect
Systems
It is impossible to build a system that would not have any flaws
But you can build systems that are very difficult to break
 Security as a Core requirement
 Security and software architecture
 Use safe programming practices and OS capabilities
 Make sure also security is tested
 Isolate each process using sandboxes or other virtualization
 Avoid processing clear text data
 Use ready code, but keep track of the security status of all third party libraries you use
 Audit your code either internally or use a consultant
© F-Secure4
Security asaCore
requirement
You get what you ask for, and have in contract
 No matter whether it is internal development or contractor
 This means that security has to be in RFPs and system requirements
 Otherwise development will self optimize, which is to do as little as possible
Security goals and targets have to be a part of the process
 Have security as part of your request for proposals when ordering software
 And have it in the requirements documentation when developing in-house
 Microsoft Software Development Life Cycle https://www.microsoft.com/en-us/sdl/
The earlier you plan security in, the cheaper it will be in the long run
© F-Secure5
Security AndSoftware
Architecture
There are many similarities between software and building architecture
 Fixing security problems when software is in production is 60 times more expensive
than preventing it at design stage
 Soo Hoo K, Sudbury AW, & Jaquith AR, Secure Business Quarterly, 5 pp, Q2 2001
Modularization is the core of good and secure architecture
 Isolate functions into their own modules
 Make sure each module has only the access that it needs
Do security and threat modeling
 Think how your system can be attacked, and how you could mitigate those vectors
© F-Secure6
Security Standards
One way to get security in software is to follow some security standards
 ISO27k standards http://www.iso27001security.com/
 PCI-DSS https://www.pcisecuritystandards.org/security_standards/
 Common Criteria https://www.commoncriteriaportal.org/cc/
However merely following a standard does not guarantee security
 Standards are at the same time very extensive, and too high level
 This means that following f.ex ISO standards is useful, and some customers require it
 Especially large contracts require an audit that a standard is followed
 But no standard can really ensure implementation quality
© F-Secure7
Use SafeProgramming
Favor safe languages for the task at hand
 C# over C++, Java over Python, Python over PHP or Perl
 Haskell and Rust have better built in safety, but it’s difficult to find programmers
Make sure programmers have safe programming training
Follow security best practices for the language your company uses
 https://www.owasp.org/
 https://www.securecoding.cert.org/confluence/display/seccode/SEI+CERT+Coding+Standards
Enable every security option provided by the OS and compiler
 DEP, ASLR, GS, SafeSEH, etc https://msdn.microsoft.com/en-us/library/k3a3hzw7.aspx
© F-Secure8
TreatIncomingDataWith
Caution
Most vulnerabilities are essentially data input problems
 Attacker was able to feed data that the programmer was not expecting
Thus all incoming data needs to be treated with caution
 Any code reading and handling data needs to be carefully reviewed
 Filter out any data that you do not need
Example: Barcode readers are basically USB keyboards that read barcode
 The input is read and transmitted as keypresses over USB
 Unless the receiver program filters input, the attacker can execute code with
barcode
© F-Secure9
http://www.slideshare.net/PacSecJP/
hyperchem-ma-badbarcode-
en1109nocommentfinal
MakeSure ThatSecurity Is
Tested
Testing very easily focuses only on verifying that a program works correctly
 Security testing tries to break software in ways never seen in real use
Use static and runtime code analysis tools to find out potential vulnerabilities
 https://www.owasp.org/index.php/Static_Code_Analysis
Use fuzzing analysis to find crashes and vulnerabilities
 https://www.owasp.org/index.php/Fuzzing
 http://lcamtuf.coredump.cx/afl/
Read hacking books for your environment, and try the methods on your
software
© F-Secure10
Sandbox EveryProcess
It is very likely that an attacker will find an exploitable vulnerability
 But that does not need to be the end of the world
Use sandboxing or app virtualization techniques to isolate every component
 For Linux use AppArmor, Grsecurity, TOMOYO
 For Windows use access control to run process with minimum privileges
https://msdn.microsoft.com/en-us/library/windows/desktop/aa374860(v=vs.85).aspx
 Or use Chromium sandbox https://www.chromium.org/developers/design-documents/sandbox/
 Windows Server 2016 container model also looks very promising
Once code runs in a sandbox you can control access to every resource
 Allow only what the code needs, deny everything else
© F-Secure11
AvoidProcessing ClearText
Store only data that you need
 In recent data leaks there has been a ton of data that should have been deleted
Hash information where the original data is not needed
 Hash both user name and password, have cleartext username in memory not in DB
 Use slow key derivation functions (PBKDF2, Scrypt, Bcrypt) with >1M iterations
Do not communicate cleartext data to frontend
 In most of cases it’s the frontend that gets compromised
 Isolate data behind API, encrypt data coming to frontend with users password
 Thus if attacker is able to compromise frontend, he cannot use the data without PW
© F-Secure12
Use Libraries Where Possible
The less your team has to code the less there is to fix
 Use public libraries when there are good options available
 Especially avoid writing own crypto (unless you have real experts, that is)
However be aware of the security history of the code you use
 How many known vulnerabilities there have been in the past?
 What is the impression they give of code quality, were they beginner mistakes?
 How quick was the patch provided after a vulnerability was found
Know where to get updates and take them into use as soon as possible
© F-Secure13
SignYour Code
Use digital signatures for every binary, and verify signatures
 Update tampering attacks are trivial if updates are not verified
 Thus you need to verify that code is signed, and pin to CA certificate
 Digital signature verification protects also against viruses, tampering and cracking
 But do make sure that you store code signing cert securely
Digital signatures help to avoid AV false alarms
 Some vendors trust signatures blindly, which is not good but useful for SW dev
 Others use signatures to build reputation, and trust well known signatures
© F-Secure14
AuditYour Code
Perform internal or external audits on your code
 Audit does not guarantee quality, but it helps to maintain it
 Make sure that audit discoveries lead to improvements
But an audit at end of the project is a very expensive way to get quality
 Focus on programmer education and constant improvement
 Whenever there is a problem, do root cause analysis and learn from it
 Encourage environment that promotes professional engineering
© F-Secure15
Conclusions
Security is not about following some standard
 Although standards do help a lot
Security is about doing things right
 Make sure security is a part of requirements
 Make sure security is a core requirement in architecture
 Make sure software production is done with security in mind
 Isolate every component as well as possible
 Test your software, not only that it works, but try to attack it
 Be reachable when someone wants to report a security bug
© F-Secure16
THANK YOUFORYOUR
PARTICIPATION!
17
The Recording will be available at the BUSINESS SECURITY INSIDER
https://business.f-secure.com/https://business.f-
secure.com

More Related Content

What's hot

Complete Endpoint protection
Complete Endpoint protectionComplete Endpoint protection
Complete Endpoint protectionxband
 
Advanced Threat Protection – ultimátní bezpečnostní řešení
Advanced Threat Protection – ultimátní bezpečnostní řešeníAdvanced Threat Protection – ultimátní bezpečnostní řešení
Advanced Threat Protection – ultimátní bezpečnostní řešeníMarketingArrowECS_CZ
 
ICS case studies v2
ICS case studies v2ICS case studies v2
ICS case studies v2Nguyen Binh
 
Cyber Tech Israel 2016: Advanced Threat Protection Technical Overview
Cyber Tech Israel 2016: Advanced Threat Protection Technical OverviewCyber Tech Israel 2016: Advanced Threat Protection Technical Overview
Cyber Tech Israel 2016: Advanced Threat Protection Technical OverviewSymantec
 
Client Security - Best security for business workstations
Client Security - Best security for business workstationsClient Security - Best security for business workstations
Client Security - Best security for business workstationsF-Secure Corporation
 
F-Secure Policy Manager - onsite security management with superior control
F-Secure Policy Manager - onsite security management with superior controlF-Secure Policy Manager - onsite security management with superior control
F-Secure Policy Manager - onsite security management with superior controlF-Secure Corporation
 
Managing and Securing Remote Access To Critical Infrastructure, Yariv Lenchne...
Managing and Securing Remote Access To Critical Infrastructure, Yariv Lenchne...Managing and Securing Remote Access To Critical Infrastructure, Yariv Lenchne...
Managing and Securing Remote Access To Critical Infrastructure, Yariv Lenchne...Digital Bond
 
A Closer Look at Isolation: Hype or Next Gen Security?
A Closer Look at Isolation: Hype or Next Gen Security?A Closer Look at Isolation: Hype or Next Gen Security?
A Closer Look at Isolation: Hype or Next Gen Security?MenloSecurity
 
OWASP Mobile Top 10
OWASP Mobile Top 10OWASP Mobile Top 10
OWASP Mobile Top 10NowSecure
 
The next generation of IT security
The next generation of IT securityThe next generation of IT security
The next generation of IT securitySophos Benelux
 
Panda Security2008
Panda Security2008Panda Security2008
Panda Security2008tswong
 
Business Suite - Gain control of your IT security
Business Suite - Gain control of your IT securityBusiness Suite - Gain control of your IT security
Business Suite - Gain control of your IT securityF-Secure Corporation
 
The Importance of Endpoint Protection - Featuring SEP 14
The Importance of Endpoint Protection - Featuring SEP 14The Importance of Endpoint Protection - Featuring SEP 14
The Importance of Endpoint Protection - Featuring SEP 14Aventis Systems, Inc.
 

What's hot (20)

Protection Service for Business
Protection Service for BusinessProtection Service for Business
Protection Service for Business
 
Internet gatekeeper
Internet gatekeeperInternet gatekeeper
Internet gatekeeper
 
Complete Endpoint protection
Complete Endpoint protectionComplete Endpoint protection
Complete Endpoint protection
 
Advanced Threat Protection – ultimátní bezpečnostní řešení
Advanced Threat Protection – ultimátní bezpečnostní řešeníAdvanced Threat Protection – ultimátní bezpečnostní řešení
Advanced Threat Protection – ultimátní bezpečnostní řešení
 
Bezpečnost není jen antivirus
Bezpečnost není jen antivirusBezpečnost není jen antivirus
Bezpečnost není jen antivirus
 
ICS case studies v2
ICS case studies v2ICS case studies v2
ICS case studies v2
 
Cyber Tech Israel 2016: Advanced Threat Protection Technical Overview
Cyber Tech Israel 2016: Advanced Threat Protection Technical OverviewCyber Tech Israel 2016: Advanced Threat Protection Technical Overview
Cyber Tech Israel 2016: Advanced Threat Protection Technical Overview
 
Sandboxing
SandboxingSandboxing
Sandboxing
 
Client Security - Best security for business workstations
Client Security - Best security for business workstationsClient Security - Best security for business workstations
Client Security - Best security for business workstations
 
F-Secure Policy Manager - onsite security management with superior control
F-Secure Policy Manager - onsite security management with superior controlF-Secure Policy Manager - onsite security management with superior control
F-Secure Policy Manager - onsite security management with superior control
 
Managing and Securing Remote Access To Critical Infrastructure, Yariv Lenchne...
Managing and Securing Remote Access To Critical Infrastructure, Yariv Lenchne...Managing and Securing Remote Access To Critical Infrastructure, Yariv Lenchne...
Managing and Securing Remote Access To Critical Infrastructure, Yariv Lenchne...
 
Intercept X - Sophos Endpoint
Intercept X - Sophos EndpointIntercept X - Sophos Endpoint
Intercept X - Sophos Endpoint
 
A Closer Look at Isolation: Hype or Next Gen Security?
A Closer Look at Isolation: Hype or Next Gen Security?A Closer Look at Isolation: Hype or Next Gen Security?
A Closer Look at Isolation: Hype or Next Gen Security?
 
Advanced Threat Protection
Advanced Threat ProtectionAdvanced Threat Protection
Advanced Threat Protection
 
OWASP Mobile Top 10
OWASP Mobile Top 10OWASP Mobile Top 10
OWASP Mobile Top 10
 
The next generation of IT security
The next generation of IT securityThe next generation of IT security
The next generation of IT security
 
Panda Security2008
Panda Security2008Panda Security2008
Panda Security2008
 
Check point response to Cisco NGFW competitive
Check point response to Cisco NGFW competitiveCheck point response to Cisco NGFW competitive
Check point response to Cisco NGFW competitive
 
Business Suite - Gain control of your IT security
Business Suite - Gain control of your IT securityBusiness Suite - Gain control of your IT security
Business Suite - Gain control of your IT security
 
The Importance of Endpoint Protection - Featuring SEP 14
The Importance of Endpoint Protection - Featuring SEP 14The Importance of Endpoint Protection - Featuring SEP 14
The Importance of Endpoint Protection - Featuring SEP 14
 

Similar to Cyber security webinar 6 - How to build systems that resist attacks?

Importance of Secure Coding with it’s Best Practices
Importance of Secure Coding with it’s Best PracticesImportance of Secure Coding with it’s Best Practices
Importance of Secure Coding with it’s Best PracticesElanusTechnologies
 
Top 5 best practice for delivering secure in-vehicle software
Top 5 best practice for delivering secure in-vehicle softwareTop 5 best practice for delivering secure in-vehicle software
Top 5 best practice for delivering secure in-vehicle softwareRogue Wave Software
 
Create code confidence for better application security
Create code confidence for better application securityCreate code confidence for better application security
Create code confidence for better application securityRogue Wave Software
 
10 Tips to Keep Your Software a Step Ahead of the Hackers
10 Tips to Keep Your Software a Step Ahead of the Hackers10 Tips to Keep Your Software a Step Ahead of the Hackers
10 Tips to Keep Your Software a Step Ahead of the HackersCheckmarx
 
<marquee>html title testfsdjk34254</marquee>
<marquee>html title testfsdjk34254</marquee><marquee>html title testfsdjk34254</marquee>
<marquee>html title testfsdjk34254</marquee>slideshareperson2
 
Secure codingguide
Secure codingguideSecure codingguide
Secure codingguideDavid Kwak
 
Top 10 Software to Detect & Prevent Security Vulnerabilities from BlackHat US...
Top 10 Software to Detect & Prevent Security Vulnerabilities from BlackHat US...Top 10 Software to Detect & Prevent Security Vulnerabilities from BlackHat US...
Top 10 Software to Detect & Prevent Security Vulnerabilities from BlackHat US...Mobodexter
 
AWS live hack: Atlassian + Snyk OSS on AWS
AWS live hack: Atlassian + Snyk OSS on AWSAWS live hack: Atlassian + Snyk OSS on AWS
AWS live hack: Atlassian + Snyk OSS on AWSEric Smalling
 
Truly Secure: The Steps a Security Practitioner Took to Build a Secure Public...
Truly Secure: The Steps a Security Practitioner Took to Build a Secure Public...Truly Secure: The Steps a Security Practitioner Took to Build a Secure Public...
Truly Secure: The Steps a Security Practitioner Took to Build a Secure Public...John Kinsella
 
Security is our duty and we shall deliver it - White Paper
Security is our duty and we shall deliver it - White PaperSecurity is our duty and we shall deliver it - White Paper
Security is our duty and we shall deliver it - White PaperMohd Anwar Jamal Faiz
 
Create code confidence for better application security
Create code confidence for better application security Create code confidence for better application security
Create code confidence for better application security Rogue Wave Software
 
BUSTED! How to Find Security Bugs Fast!
BUSTED! How to Find Security Bugs Fast!BUSTED! How to Find Security Bugs Fast!
BUSTED! How to Find Security Bugs Fast!Parasoft
 
AppSec How-To: Achieving Security in DevOps
AppSec How-To: Achieving Security in DevOpsAppSec How-To: Achieving Security in DevOps
AppSec How-To: Achieving Security in DevOpsCheckmarx
 
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...Manoj Purandare ☁
 
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...Manoj Purandare ☁
 

Similar to Cyber security webinar 6 - How to build systems that resist attacks? (20)

Importance of Secure Coding with it’s Best Practices
Importance of Secure Coding with it’s Best PracticesImportance of Secure Coding with it’s Best Practices
Importance of Secure Coding with it’s Best Practices
 
Top 5 best practice for delivering secure in-vehicle software
Top 5 best practice for delivering secure in-vehicle softwareTop 5 best practice for delivering secure in-vehicle software
Top 5 best practice for delivering secure in-vehicle software
 
Create code confidence for better application security
Create code confidence for better application securityCreate code confidence for better application security
Create code confidence for better application security
 
10 Tips to Keep Your Software a Step Ahead of the Hackers
10 Tips to Keep Your Software a Step Ahead of the Hackers10 Tips to Keep Your Software a Step Ahead of the Hackers
10 Tips to Keep Your Software a Step Ahead of the Hackers
 
" onclick="alert(1)
" onclick="alert(1)" onclick="alert(1)
" onclick="alert(1)
 
<marquee>html title testfsdjk34254</marquee>
<marquee>html title testfsdjk34254</marquee><marquee>html title testfsdjk34254</marquee>
<marquee>html title testfsdjk34254</marquee>
 
Coverity Data Sheet
Coverity Data SheetCoverity Data Sheet
Coverity Data Sheet
 
Secure codingguide
Secure codingguideSecure codingguide
Secure codingguide
 
Top 10 Software to Detect & Prevent Security Vulnerabilities from BlackHat US...
Top 10 Software to Detect & Prevent Security Vulnerabilities from BlackHat US...Top 10 Software to Detect & Prevent Security Vulnerabilities from BlackHat US...
Top 10 Software to Detect & Prevent Security Vulnerabilities from BlackHat US...
 
AWS live hack: Atlassian + Snyk OSS on AWS
AWS live hack: Atlassian + Snyk OSS on AWSAWS live hack: Atlassian + Snyk OSS on AWS
AWS live hack: Atlassian + Snyk OSS on AWS
 
Truly Secure: The Steps a Security Practitioner Took to Build a Secure Public...
Truly Secure: The Steps a Security Practitioner Took to Build a Secure Public...Truly Secure: The Steps a Security Practitioner Took to Build a Secure Public...
Truly Secure: The Steps a Security Practitioner Took to Build a Secure Public...
 
Securing the Cloud
Securing the CloudSecuring the Cloud
Securing the Cloud
 
Security is our duty and we shall deliver it - White Paper
Security is our duty and we shall deliver it - White PaperSecurity is our duty and we shall deliver it - White Paper
Security is our duty and we shall deliver it - White Paper
 
Secure Software
Secure SoftwareSecure Software
Secure Software
 
Create code confidence for better application security
Create code confidence for better application security Create code confidence for better application security
Create code confidence for better application security
 
Owasp masvs spain 17
Owasp masvs spain 17Owasp masvs spain 17
Owasp masvs spain 17
 
BUSTED! How to Find Security Bugs Fast!
BUSTED! How to Find Security Bugs Fast!BUSTED! How to Find Security Bugs Fast!
BUSTED! How to Find Security Bugs Fast!
 
AppSec How-To: Achieving Security in DevOps
AppSec How-To: Achieving Security in DevOpsAppSec How-To: Achieving Security in DevOps
AppSec How-To: Achieving Security in DevOps
 
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
 
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
Manoj Purandare - Application Security - Secure Code Assessment Program - Pre...
 

More from F-Secure Corporation

How do you predict the threat landscape?
How do you predict the threat landscape?How do you predict the threat landscape?
How do you predict the threat landscape?F-Secure Corporation
 
Got hacked? It’s too late to run now!
Got hacked? It’s too late to run now!Got hacked? It’s too late to run now!
Got hacked? It’s too late to run now!F-Secure Corporation
 
The Real Costs of SIEM vs. Managed Security Service
The Real Costs of SIEM vs. Managed Security ServiceThe Real Costs of SIEM vs. Managed Security Service
The Real Costs of SIEM vs. Managed Security ServiceF-Secure Corporation
 
Security A to Z: Glossary of the most important terms
Security A to Z: Glossary of the most important termsSecurity A to Z: Glossary of the most important terms
Security A to Z: Glossary of the most important termsF-Secure Corporation
 
Les attaques menées depuis la France dans le cyber espace
Les attaques menées depuis la France dans le cyber espace Les attaques menées depuis la France dans le cyber espace
Les attaques menées depuis la France dans le cyber espace F-Secure Corporation
 
Les attaques menées depuis la France dans le cyber espace
Les attaques menées depuis la France dans le cyber espaceLes attaques menées depuis la France dans le cyber espace
Les attaques menées depuis la France dans le cyber espaceF-Secure Corporation
 
Best business protection for windows
Best business protection for windowsBest business protection for windows
Best business protection for windowsF-Secure Corporation
 
Six things to take into account when choosing cloud solutions
Six things to take into account when choosing cloud solutionsSix things to take into account when choosing cloud solutions
Six things to take into account when choosing cloud solutionsF-Secure Corporation
 
Small and midsize business security is big business
Small and midsize business security is big businessSmall and midsize business security is big business
Small and midsize business security is big businessF-Secure Corporation
 
大きなビジネスを生み出す中小中堅企業
大きなビジネスを生み出す中小中堅企業大きなビジネスを生み出す中小中堅企業
大きなビジネスを生み出す中小中堅企業F-Secure Corporation
 
Why should you care about government surveillance?
Why should you care about government surveillance?Why should you care about government surveillance?
Why should you care about government surveillance?F-Secure Corporation
 
Arbeta var du vill- eBook om modern mobilitet
Arbeta var du vill- eBook om modern mobilitetArbeta var du vill- eBook om modern mobilitet
Arbeta var du vill- eBook om modern mobilitetF-Secure Corporation
 
Best corporate end-point protection 2013
Best corporate end-point protection 2013Best corporate end-point protection 2013
Best corporate end-point protection 2013F-Secure Corporation
 

More from F-Secure Corporation (20)

Post-mortem of a data breach
Post-mortem of a data breachPost-mortem of a data breach
Post-mortem of a data breach
 
How do you predict the threat landscape?
How do you predict the threat landscape?How do you predict the threat landscape?
How do you predict the threat landscape?
 
Got hacked? It’s too late to run now!
Got hacked? It’s too late to run now!Got hacked? It’s too late to run now!
Got hacked? It’s too late to run now!
 
The Real Costs of SIEM vs. Managed Security Service
The Real Costs of SIEM vs. Managed Security ServiceThe Real Costs of SIEM vs. Managed Security Service
The Real Costs of SIEM vs. Managed Security Service
 
Security A to Z: Glossary of the most important terms
Security A to Z: Glossary of the most important termsSecurity A to Z: Glossary of the most important terms
Security A to Z: Glossary of the most important terms
 
Les attaques menées depuis la France dans le cyber espace
Les attaques menées depuis la France dans le cyber espace Les attaques menées depuis la France dans le cyber espace
Les attaques menées depuis la France dans le cyber espace
 
Les attaques menées depuis la France dans le cyber espace
Les attaques menées depuis la France dans le cyber espaceLes attaques menées depuis la France dans le cyber espace
Les attaques menées depuis la France dans le cyber espace
 
The State of the Net in India
The State of the Net in IndiaThe State of the Net in India
The State of the Net in India
 
Best business protection for windows
Best business protection for windowsBest business protection for windows
Best business protection for windows
 
Six things to take into account when choosing cloud solutions
Six things to take into account when choosing cloud solutionsSix things to take into account when choosing cloud solutions
Six things to take into account when choosing cloud solutions
 
Small and midsize business security is big business
Small and midsize business security is big businessSmall and midsize business security is big business
Small and midsize business security is big business
 
大きなビジネスを生み出す中小中堅企業
大きなビジネスを生み出す中小中堅企業大きなビジネスを生み出す中小中堅企業
大きなビジネスを生み出す中小中堅企業
 
Why should you care about government surveillance?
Why should you care about government surveillance?Why should you care about government surveillance?
Why should you care about government surveillance?
 
Arbeta var du vill- eBook om modern mobilitet
Arbeta var du vill- eBook om modern mobilitetArbeta var du vill- eBook om modern mobilitet
Arbeta var du vill- eBook om modern mobilitet
 
Psb mobile security
Psb mobile securityPsb mobile security
Psb mobile security
 
Powerful email protection
Powerful email protectionPowerful email protection
Powerful email protection
 
Best corporate end-point protection 2013
Best corporate end-point protection 2013Best corporate end-point protection 2013
Best corporate end-point protection 2013
 
Virtual Security
Virtual SecurityVirtual Security
Virtual Security
 
Surfing Safe on the Road
Surfing Safe on the RoadSurfing Safe on the Road
Surfing Safe on the Road
 
F-Secure's Annual Report 2012
F-Secure's Annual Report 2012 F-Secure's Annual Report 2012
F-Secure's Annual Report 2012
 

Recently uploaded

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 

Recently uploaded (20)

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 

Cyber security webinar 6 - How to build systems that resist attacks?

  • 2. CYBERSECURITY WEBINAR SERIES-PART6 © F-Secure2 • INTRODUCTION TO CYBERSECURITY • DEFENDING WORKSTATIONS • DEFENDING SERVERS • DEFENDING NETWORKS • RESPONDING TO AN INCIDENT • BUILDING SECURE SYSTEMS NOW RECORDINGS: HTTPS://BUSINESS.F-SECURE.COM
  • 4. There AreNoPerfect Systems It is impossible to build a system that would not have any flaws But you can build systems that are very difficult to break  Security as a Core requirement  Security and software architecture  Use safe programming practices and OS capabilities  Make sure also security is tested  Isolate each process using sandboxes or other virtualization  Avoid processing clear text data  Use ready code, but keep track of the security status of all third party libraries you use  Audit your code either internally or use a consultant © F-Secure4
  • 5. Security asaCore requirement You get what you ask for, and have in contract  No matter whether it is internal development or contractor  This means that security has to be in RFPs and system requirements  Otherwise development will self optimize, which is to do as little as possible Security goals and targets have to be a part of the process  Have security as part of your request for proposals when ordering software  And have it in the requirements documentation when developing in-house  Microsoft Software Development Life Cycle https://www.microsoft.com/en-us/sdl/ The earlier you plan security in, the cheaper it will be in the long run © F-Secure5
  • 6. Security AndSoftware Architecture There are many similarities between software and building architecture  Fixing security problems when software is in production is 60 times more expensive than preventing it at design stage  Soo Hoo K, Sudbury AW, & Jaquith AR, Secure Business Quarterly, 5 pp, Q2 2001 Modularization is the core of good and secure architecture  Isolate functions into their own modules  Make sure each module has only the access that it needs Do security and threat modeling  Think how your system can be attacked, and how you could mitigate those vectors © F-Secure6
  • 7. Security Standards One way to get security in software is to follow some security standards  ISO27k standards http://www.iso27001security.com/  PCI-DSS https://www.pcisecuritystandards.org/security_standards/  Common Criteria https://www.commoncriteriaportal.org/cc/ However merely following a standard does not guarantee security  Standards are at the same time very extensive, and too high level  This means that following f.ex ISO standards is useful, and some customers require it  Especially large contracts require an audit that a standard is followed  But no standard can really ensure implementation quality © F-Secure7
  • 8. Use SafeProgramming Favor safe languages for the task at hand  C# over C++, Java over Python, Python over PHP or Perl  Haskell and Rust have better built in safety, but it’s difficult to find programmers Make sure programmers have safe programming training Follow security best practices for the language your company uses  https://www.owasp.org/  https://www.securecoding.cert.org/confluence/display/seccode/SEI+CERT+Coding+Standards Enable every security option provided by the OS and compiler  DEP, ASLR, GS, SafeSEH, etc https://msdn.microsoft.com/en-us/library/k3a3hzw7.aspx © F-Secure8
  • 9. TreatIncomingDataWith Caution Most vulnerabilities are essentially data input problems  Attacker was able to feed data that the programmer was not expecting Thus all incoming data needs to be treated with caution  Any code reading and handling data needs to be carefully reviewed  Filter out any data that you do not need Example: Barcode readers are basically USB keyboards that read barcode  The input is read and transmitted as keypresses over USB  Unless the receiver program filters input, the attacker can execute code with barcode © F-Secure9 http://www.slideshare.net/PacSecJP/ hyperchem-ma-badbarcode- en1109nocommentfinal
  • 10. MakeSure ThatSecurity Is Tested Testing very easily focuses only on verifying that a program works correctly  Security testing tries to break software in ways never seen in real use Use static and runtime code analysis tools to find out potential vulnerabilities  https://www.owasp.org/index.php/Static_Code_Analysis Use fuzzing analysis to find crashes and vulnerabilities  https://www.owasp.org/index.php/Fuzzing  http://lcamtuf.coredump.cx/afl/ Read hacking books for your environment, and try the methods on your software © F-Secure10
  • 11. Sandbox EveryProcess It is very likely that an attacker will find an exploitable vulnerability  But that does not need to be the end of the world Use sandboxing or app virtualization techniques to isolate every component  For Linux use AppArmor, Grsecurity, TOMOYO  For Windows use access control to run process with minimum privileges https://msdn.microsoft.com/en-us/library/windows/desktop/aa374860(v=vs.85).aspx  Or use Chromium sandbox https://www.chromium.org/developers/design-documents/sandbox/  Windows Server 2016 container model also looks very promising Once code runs in a sandbox you can control access to every resource  Allow only what the code needs, deny everything else © F-Secure11
  • 12. AvoidProcessing ClearText Store only data that you need  In recent data leaks there has been a ton of data that should have been deleted Hash information where the original data is not needed  Hash both user name and password, have cleartext username in memory not in DB  Use slow key derivation functions (PBKDF2, Scrypt, Bcrypt) with >1M iterations Do not communicate cleartext data to frontend  In most of cases it’s the frontend that gets compromised  Isolate data behind API, encrypt data coming to frontend with users password  Thus if attacker is able to compromise frontend, he cannot use the data without PW © F-Secure12
  • 13. Use Libraries Where Possible The less your team has to code the less there is to fix  Use public libraries when there are good options available  Especially avoid writing own crypto (unless you have real experts, that is) However be aware of the security history of the code you use  How many known vulnerabilities there have been in the past?  What is the impression they give of code quality, were they beginner mistakes?  How quick was the patch provided after a vulnerability was found Know where to get updates and take them into use as soon as possible © F-Secure13
  • 14. SignYour Code Use digital signatures for every binary, and verify signatures  Update tampering attacks are trivial if updates are not verified  Thus you need to verify that code is signed, and pin to CA certificate  Digital signature verification protects also against viruses, tampering and cracking  But do make sure that you store code signing cert securely Digital signatures help to avoid AV false alarms  Some vendors trust signatures blindly, which is not good but useful for SW dev  Others use signatures to build reputation, and trust well known signatures © F-Secure14
  • 15. AuditYour Code Perform internal or external audits on your code  Audit does not guarantee quality, but it helps to maintain it  Make sure that audit discoveries lead to improvements But an audit at end of the project is a very expensive way to get quality  Focus on programmer education and constant improvement  Whenever there is a problem, do root cause analysis and learn from it  Encourage environment that promotes professional engineering © F-Secure15
  • 16. Conclusions Security is not about following some standard  Although standards do help a lot Security is about doing things right  Make sure security is a part of requirements  Make sure security is a core requirement in architecture  Make sure software production is done with security in mind  Isolate every component as well as possible  Test your software, not only that it works, but try to attack it  Be reachable when someone wants to report a security bug © F-Secure16
  • 17. THANK YOUFORYOUR PARTICIPATION! 17 The Recording will be available at the BUSINESS SECURITY INSIDER https://business.f-secure.com/https://business.f- secure.com