how much training should staff have on cyber security? · how much training should staff have on...

21
How much training should staff have on cyber security?

Upload: buihanh

Post on 16-Jul-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

How much training should staff have on cyber security?

Agenda

• General security awareness training • Setting up a strawman • Defeating the strawman (hopefully)

• Security training for software development • Really good news

Presenter
Presentation Notes
Well, not really a strawman, as Bruce Schneier is behind it

Arguments against training

• Some training just teaches you to pass a test • It will never be 100% successful, some attacks will get

through • We need designs that prevent attacks, not training

Presenter
Presentation Notes
http://www.csoonline.com/article/2131941/security-awareness/why-you-shouldn-t-train-employees-for-security-awareness.html http://www.darkreading.com/risk/on-security-awareness-training/d/d-id/1139381? From various sources, between 5 to 20% will get through even after very good training

Some training is bad

Yes, we need better training • Relevant • Interactive • Entertaining • Repeatable yet up-to-date • Respectful

Presenter
Presentation Notes
Relevant to technology and work function, better yet – relevant to the organisation Interactive – small bites, immediate feedback Entertaining – story based, variety of media, concept with examples Repeatable – we learn with repetition. But security landscape changes, so must update the training constantly Respectful – don’t treat your staff like idiots. Let them do it at their own pace, give opportunity to think, and give concepts, not just procedures. Give pointers to additional reading. Research about doctors – surgeons grow better with experience, radiologists don’t – training that simulates immediate feedback based on practical cases Good training: http://www.csoonline.com/article/2131688/security-awareness/ten-commandments-for-effective-security-training.html

Training is not bullet-proof

Neither are bullet-proof vests! And bad guy can aim for your head

Presenter
Presentation Notes
Is it a reason not to wear one to a gun fight?

Insider threat

• Malicious actions • Innocent mistakes

The second case is much more common

Designs vs training: unfair risk transfer?

• Car safety improves every year, yet so does our behaviour • Standard of fire safety in modern buildings is the highest

ever, yet drills still save lives • Medical equipment

Presenter
Presentation Notes
So the argument is that users should not be trained as it makes them responsible for security problems, designs should prevent a possibility of mistake. I say it’s unfair dichotomy, false choice. Cars: if you watch 60th movies, not much seatbelts, everyone is drinking

Bad vs really bad

In the 60s, Marvin Minsky assigned a couple of undergrads to spend the summer programming a computer to use a camera to identify objects in a scene. He figured they'd have the problem solved by the end of the summer. Half a century later, we're still working on it.

Presenter
Presentation Notes
Chess – computers are just computationally not quite there yet, conceptually it’s the same as tick-tack-toe Recognising sketch cat, cartoon cat and real cat – it’s a completely different level of “bad”.

Lets use it to our advantage

Presenter
Presentation Notes
If we can recognise an abstract “cat”, can we recognise an abstract attack? Example of phishing email from Shaun’s presentation. It’s impossible to create a computer filter that will recognise all the variations of this attack, with all the possible domain trickery and all the variations in text, and not prohibitive false positive rate. However, we can teach humans – every time you are asked through email to put your credentials on some website, it’s an attack. Don’t do it even if it’s accompanied by a phone call from “IT”. We will never legitimately ask you to do that. It will cover all 4 cases we’ve discussed in the previous trust forum. For maintenance, for disk quota, for any reason phishers haven’t invented yet.

It’s not either/or

• Updates, AV, web and mail filtering, firewalls • App whitelisting, proxy and traffic monitoring • Security awareness training • Phishing and social engineering assessments • Internal awards program

Presenter
Presentation Notes
To reiterate: we need both technical solutions and awareness
Presenter
Presentation Notes
From http://csrc.nist.gov/publications/nistpubs/800-50/NIST-SP800-50.pdf Hopefully you are convinced about awareness. Now let’s look at the next level of security competency pyramid: specialized training for secure software development Education is the process that fills minds with knowledge and expands one's ability to reason about the issues faced. For each stage of SDLC, by training your staff in good secure development practices you improve the overall engineering standards

Requirements

• SMART security requirements • Bug Bar • Quality gates • Risk assessment • Abuse/misuse cases • Identify roles and assets • Specify operational environments

Presenter
Presentation Notes
Either introduce bug management tool, or improve the value you get out of it Learn to write SMART requirements outside of security Quality gates will catch functional bugs as well Learn to write use cases – one of the most efficient requirements tools, improved communication between product management and dev Better understanding of your software, knowledge sharing Better deploys

Design and Architecture

• Attack surface analysis / reduction • Threat modeling • Architecture and design reviews • Principles of secure design also make more maintainable

code

Presenter
Presentation Notes
You get knowledge sharing, documentation Simplified design and smaller codebase => less functional bugs

Whitelist vs blacklist

DWORD dwRet = IsAccessAllowed(...);

if (dwRet == ERROR_ACCESS_DENIED)

{ // Security check failed.

// Inform user that access is denied.

}

else

{ // Security check OK. }

DWORD dwRet = IsAccessAllowed(...); if (dwRet == NO_ERROR) { // Security check OK. // Perform task. } else { // Inform user that access is denied. }

Presenter
Presentation Notes
We usually think about it in the context of input validation, but it’s more widely applicable than that. List of error codes returned by function, class, module, library can change. Explicitly list what’s allowed, and reject everything else This principle improves code quality even if the function called is not security sensitive

Development

• Source control discipline • Code review • Static analysis • Approved builds • Automation on check-in / integration • Code and packages tracing

Presenter
Presentation Notes
Code review will catch bugs beyond security Approved builds – standardization, better transition between dev/staging/production environment Automation will deliver massive benefits, unit test culture Improved source control practices + code tracing => you’ll be able to respond to customer requests for hotfixes in a much easier way

Testing/Validation

• Security testing • Know your 3rd party components • Fuzzing • Dynamic analysis

Presenter
Presentation Notes
Security testing raises skills of testers and gives them career path To do fuzzing and dynamic analysis properly will require improvements in automation Dynamic analysis – even if they are not exploitable, crashes and memory leaks won’t make you popular with your users Culture of striving for code coverage – better tests all around

Release/Maintenance

• Incident response plan • Vulnerability management • Environment hardening • Operational enablement

Presenter
Presentation Notes
Ability to connect bug number to commit to build number in all the directions. Easily and automatically, not “our oldest developer will have to meditate on this for couple of hours”. Documented host environment => Smoother deploys Better communication between dev and ops

Secure development benefits

• Drives automation in development/testing/release • Drives better requirements • Knowledge sharing, documented designs • Test coverage • Better integration practices, can help on your road to

continuous integration/continuous delivery • Better all around code quality

When to apply these techniques

Always! Good habits trump good principles

Presenter
Presentation Notes
I’ve tried to avoid black and white answers, but this one I’m really sure about. Have to be really careful about prototypes, or lean startup environments. Best training is through practicing. Can't switch on/switch off secure thinking at will.

Questions?

Europe Manchester - Head Office

Cheltenham

Edinburgh

Leatherhead

London

Milton Keynes

Amsterdam

Copenhagen

Munich

Zurich

North America Atlanta

Austin

Chicago

Mountain View

New York

San Francisco

Seattle

Australia Sydney