Security architecture & engineering: introduc2on

32
Security architecture & engineering: introduc2on Suman Jana Columbia University *some slides are borrowed from Vitaly Shma2kov and Ari Juels 1

Transcript of Security architecture & engineering: introduc2on

Page 1: Security architecture & engineering: introduc2on

Securityarchitecture&engineering:introduc2on

SumanJanaColumbiaUniversity

*someslidesareborrowedfromVitalyShma2kovandAriJuels

1

Page 2: Security architecture & engineering: introduc2on

Coursegoals

•  Understandthefundamentalprinciplesofsecurity– Whatarethecommonsecuritymechanisms?WhytheyoEengowrong?

– Whataretheunderlyingprinciplesbehindbuildingsecuresystems?

– Whybuildingsecuresystemsishard?

2

Page 3: Security architecture & engineering: introduc2on

Logis2cs

•  Notextbookbutassignedreadingsfromdifferentsources

•  Grading– Sixprogrammingassignments(54%)– Midterm(20%)– Non-cumula2vefinal(20%)– Classpar2cipa2on(6%)

•  Classwebpage:hVp://sumanj.info/security_arch.html

3

Page 4: Security architecture & engineering: introduc2on

Theartofadversarialthinking

4

Page 5: Security architecture & engineering: introduc2on

What’sadversarialthinking?

“Securityrequiresapar/cularmindset.Securityprofessionals--atleastthegoodones--seetheworlddifferently.Theycan'twalkintoastorewithoutno/cinghowtheymightshopli?.They

can'tuseacomputerwithoutwonderingaboutthesecurityvulnerabili/es.Theycan'tvotewithouttryingtofigureouthow

tovotetwice.Theyjustcan'thelpit.”

-BruceSchneier

5

Page 6: Security architecture & engineering: introduc2on

Adversarialthinkingdisclaimer

Hopefully,youwilllearntothinklikeacriminalmastermindbutbehavelikeagentleman/woman!

6

Page 7: Security architecture & engineering: introduc2on

Adversarialthinking:keyques2ons

•  Securitygoal:whatsecuritypolicytoenforce?

•  Threatmodel:whoistheadversary?Whatac2onscantheadversaryperform?

•  Mechanisms:Whatsecuritymechanismscanbeusedtoachievethesecuritygoalsgiventheadversarialmodel

7

Page 8: Security architecture & engineering: introduc2on

Keysecuritygoals

•  Confiden2ality:Datanotleaked

•  Integrity:Datanotmodified

•  Availability:Dataisaccessiblewhenneeded

•  Authen2city:Dataorigincannotbespoofed

8

Page 9: Security architecture & engineering: introduc2on

Youcanapplyadversarialthinkinganywhere

•  ColumbiaIDcards– CanyoufakeanIDcard?

•  ATMmachine– Howdoestheservicepersongetsaccesstorefillitwithcash?

•  MTAmetrocard– Canyouincreasethecardbalancewithoutpaying?

9

Page 10: Security architecture & engineering: introduc2on

Example:airtravel

Printboardingpassathome

IDcheckbyTSA

Boardingpasscheckatthegate

10

Page 11: Security architecture & engineering: introduc2on

Adversarialthinkingexample:airtravel

•  Securitygoal:Ensurethateachpersongelnginsideanairporthasavalidboardingpassandisauthorizedtofly(i.e.,notontheno-flylist)

•  Mechanisms–  TSAchecksvalidityoftheID(e.g.,driver’slicense)andtheboardingpassHow?

–  TSAmatchesnameintheIDagainstthenameintheboardingpass

–  TSAensuresthatthenameisnotontheno-flylist– GateagentcheckswhethertheboardingpassisvalidandhasbeencheckedbyTSAHow?

11

Page 12: Security architecture & engineering: introduc2on

CananaVackerwhoisontheno-flylistfly?

12

Page 13: Security architecture & engineering: introduc2on

Whatisthethreatmodel?

•  CananaVackercreateafakeboardingpass?

•  CananaVackerfakeadriver’slicense?

13

Page 14: Security architecture & engineering: introduc2on

Securityunderdifferentthreatmodels

•  Securitygoal:Ensurethateachpersongelnginsideanairporthasavalidboardingpassandisauthorizedtofly(i.e.,notontheno-flylist)– WhataretheminimumrequirementsforsomeonetoviolatethisgoalinthecurrentTSAsystem?

– ThecurrentTSAsystemissecureunderwhichthreatmodels?

14

Page 15: Security architecture & engineering: introduc2on

Notallthreatmodelsareequal

•  Whichoneisharderandwhy?– Crea2ngafakeaboardingpass– Crea2ngafakedriver’slicense

15

Page 16: Security architecture & engineering: introduc2on

Securitymeasuresinadriver’slicense?

16

Page 17: Security architecture & engineering: introduc2on

Securitymeasuresinaboardingpass?

Canthebarcodebefaked?

17

Page 18: Security architecture & engineering: introduc2on

Airtravelrevisited:adifferentsecuritygoal

Printboardingpassathome

IDcheckbyTSA

Boardingpasscheckatthegate

Securitygoal:everybodyboardinganaircraEmustpassthroughTSAsecuritycheck

18

Page 19: Security architecture & engineering: introduc2on

EverybodymustgothroughTSAchecks

•  HowdoesthecurrentTSAsystemensurethis?•  WhatisanexamplethreatmodelwherethisgoalcanbeviolatedbyanaVacker?

19

Page 20: Security architecture & engineering: introduc2on

Yetanothersecuritygoal

•  Onlyauthorizedtravelersshouldbeallowedtoenterpremiumlounges– Howwilltherecep2onistattheloungeknowwhoisauthorized?

20

Page 21: Security architecture & engineering: introduc2on

WhatisthethreatmodelforthisaVack?

Howwillyoufixit?

21

Page 22: Security architecture & engineering: introduc2on

WhataboutTSAPre-Check?

•  HowdoesTSAPre-Checkwork?– PassengersapplyforPre-Check– TSArandomlydecidewhetherthepassengeriseligibleforPre-Checkornotandsendstheinforma2onbacktotheAirline.

– TheAirlineencodesthatinforma2oninabarcodethatisontheissuedboardingpass.

22

Page 23: Security architecture & engineering: introduc2on

HackingTSAPre-Check

1meansnoPre-Checkand3meansPre-Check

Source:hVps://puckinflight.wordpress.com/2012/10/19/security-flaws-in-the-tsa-pre-check-system-and-the-boarding-pass-check-system/

Noencryp2on

23

Page 24: Security architecture & engineering: introduc2on

Unintendedside-effectsoftheboarding-passdesign

•  Whathappensifsomeoneelsegetsholdofyourboardingpass?

Allthisinforma2onisintheboarding

passincleartext

24

Page 25: Security architecture & engineering: introduc2on

Adifferentselng:money

•  Coun2ngtokensmustbekeptinasafeplacetopreventtampering–  Inatempleorinclayenvelopesonshippingroutes

•  Howtomakecoun2ngtokenscompletelyportablefortrade?

25

Page 26: Security architecture & engineering: introduc2on

Adifferentselng:money

•  Securitygoals– Tokenscanonlybecreatedbyatrustedauthority– Authen2cityoftokensshouldbeeasilyverifiablebyanyone

•  Threatmodel– AVackerscanforgeormodifytokens

•  Claytokenscanbeeasilyforged!

26

Page 27: Security architecture & engineering: introduc2on

Adifferentselng:money

•  Coinswereintroducedaround6/7thcenturyBCE– Maketokensoutofscarceresources(goldandsilvers)

– Applyasignaturethatishardtocopy(dependsontheskillsoftheengravers)

– Harshpenaltyforforgers

27

Page 28: Security architecture & engineering: introduc2on

Moderncrypto-currencies

•  Sameprinciples!– Scarceresource:computa2on– Hard-to-forgedata:cryptography– Wewilltalkaboutbitcoinslaterintheclass

28

Page 29: Security architecture & engineering: introduc2on

Whoistheadversary?dependsonwhoyouare

29

Page 30: Security architecture & engineering: introduc2on

Hackers

•  EvgeniyMikhailovichBogachev– GameoverZeusbotnet:bankingfraudandransomwaredistribu2on

30

Page 31: Security architecture & engineering: introduc2on

Chinesegovernment

•  Censorshipofmaterialscri2caltothecurrentregime

•  Monitoringdissidents

31

Page 32: Security architecture & engineering: introduc2on

Na2onalSecurityAgency(NSA)

32