Assignment-6

profileNicholas_9097
Week6.pdf

ISOL536 Security Architecture and Design

Week 6 Web Threats

Cloud Threats Account Threats

Agenda

• Web threats

• Cloud threats

• Account threats

• Reading: Chapter 13 & 14

Web Threats

• The web is software like other software

• There are specific attack classes like Cross Site Scripting (XSS)

– In much the same way that stack smashing is a “feature” of C or other weakly typed languages

– Threat modeling not needed to help find these

– Finding these in TM is a distraction from the unique threats to your software

Web Site Threats

• Attack surface/Trust boundaries

• Dependencies

• Not showing outbound links

– Is Google analytics safe? (We hope so—it’s on each page!)

• Model helps you consider each part & relationships

Threatmodelingbook. com

Web hosting

Browser

Google Analytics

Textbook web site

DB

Browser Threats

• Mostly the job of a small number of browser makers

• Your job when writing a plugin

– Manage security & privacy

• Literature reviews & careful checking of browser API guidance

Cloud Threats

• New insiders

– At the cloud provider — How do they compare to other IT outsourcing?

– Co-tennants as threats

• Compliance threats

– Regulation: what needs to be compliant?

– Audit & logging: what’s logged where and how?

– Can your controls migrate?

Cloud Threats (2)

• Legal

– In US, subpoena rules change if you give your data to others (“3rd party doctrine”)

• Forensic

– Can you get the hard drives, etc for analysis?

• Integrity

– Creation and management of virtual machines

Accounts Agenda

• Intro

• Account creation & maintenance

Accounts (overview)

• Accounts for systems

• Identity management manages accounts across many systems – Sometimes used as jargon to mean “account”

• Need to create, maintain and retire accounts – Close-relationship accounts vs free accounts

• Accounts that don’t map to a person – Joint bank accounts etc

• Need to authenticate account-holders – Even when they lose their authenticators

– The hardest problems are here

Account Create/Maintain/Delete

• Mostly “normal” engineering with relatively few traps

• Who can get an account?

• How do you ensure information stays up to date?

• What happens when the account-holder quits/leaves/passes away?

Authentication is Hard

• Traditional authentication factors – Something you know (including passwords)

– Something you are (biometrics)

– Something you have (Smartcard, ID card)

• Something you forgot, something you were, something you lost

• Multi-factor/Additional factors – Originally meant more than one from the list above

– Several things you know are not “multi-factor”

– Someone you know

– Elements like IP address, client fingerprinting

Managing Authentication is Hard Spoofing a Client

Login Failures

• “Incorrect username or password”

– Comes from a time that identifying accounts was thought to be hard

– Past its prime; usability win from telling people which was wrong outweighs risk

• Account lockout

Threats to Passwords

• Unintentional small disclosure

– Post-its, wikis, phishing

• Online attacks against the login system

• Offline attacks against a stolen database

– Good design can win you some time

– Modern password attacks are fast: O(1 billion/sec)

– Salting and iteration is better than not

– If your password is ‘123456’ the salting won’t help

– Practical iteration counts from 1000-1000000 barely help

Account Recovery is Hard

• “Forgot your password?” there’s many ways to get back into account – Most are substantially less secure than a half-decent

password – Most are always accessible to attackers

• Goal: account access, not password recovery! – Who cares about the old password? – Password recovery implies cleartext storage

• Many technical choices – Email, social authentication, knowledge based (secret

questions, public records, etc)

Email Alternate Authentication

• Email a new password or access token

– “Obviously” you can’t mail them old password

• Threats

– Information disclosure (eavesdroppping, attacker access to email)

– Denial of service (customer no longer has access to the email)

Knowledge Based Authentication (KBA)

• “What’s your password” is one end of the spectrum – Ideally, known only to you and customer

– Unfortunately, often shared or forgotten

• Leading to – Secret Questions

– Public records (aka “out of wallet”)

– Data only you should know (“Tell us how much we just deposited into your account.”)

Issues with KBA

• Security – “What color are your eyes” has few answers

– Names are differently popular (Mike vs Lawrence)

– Mothers maiden names on genealogy websites

– Et Cetera

• Usability – Applicability – not everyone has a first pet

– Memorability (was Ms Robinson 1st or 2nd grade?)

– Repeatability (Main Street vs Main St)

Social Authentication

• Passive: Identify these pictures of your friends

– Easy for you, hard for an attacker (we hope)

– Threats: friends with pictures of their pets, pictures with name badges

• Active

– Account trustees can help you get back in

– Takes longer

– You may no longer trust your trustees

Names

• Get tricky for computers

– Which Tom Jones?

– “mom”

• Real names don’t help you with security

– People are still jerks

– Policing risks offense

• Secure, human meaningful, decentralized: pick two

Meaningful ID

• Calls to mind the right person for the user

• Requires knowing the person

• The person that “mom” calls to mind is different for each us us, and that’s ok

• Must be presented in a way that’s hard to spoof

• ID documents are opposite of meaningful ID

Social Security Numbers

• Used as identifiers and authenticators

– This is an awful pattern

– An authenticator known to many parties and not subject to change is a bad pattern

• Bad as a database key

• Not everyone has one

• These problems generalize to other identification schemes

Identity Theft

• Often just another name for fraud by an impersonator

• Sometimes much worse – Database records intermingled and confused

– “The computer is always right”

– Reputational damage

• Be careful linking data from various sources

• Be careful when you correct data not to allow another source to override it – If Alice proves she’s not a deadbeat, don’t mark her as

one based on the previous (bad) source

Recap

• To threat model web sites, focus on dependencies and unique functionality

• Cloud: focus on trust boundaries

• Accounts:

– “Backup” auth is just another way into an account

– Social authentication is probably strongest when it meets business goals

– Names, SSNs are harder than you think

What’s next?

• Quiz 4

– Due Sunday 11:59 PM

– 20 multiple choice questions

– 20 minutes

– You have 2 chances (take highest grade)

• Reach chapter 15