cit 480: securing computer systemswaldenj/classes/2014/fall/... · 2019. 8. 25. · cit 480:...

34
CIT 480: Securing Computer Systems Slide #1 CIT 480: Securing Computer Systems Authentication

Upload: others

Post on 07-Feb-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

  • CIT 480: Securing Computer Systems Slide #1

    CIT 480: Securing Computer Systems

    Authentication

  • CIT 480: Securing Computer Systems

    Topics

    1. Identity 2. Groups and Roles 3. Network Identities 4. Authentication 5. Biometrics 6. UNIX Authentication

    Slide #2

  • Authentication Identity is computer’s representation of an entity

    – Entities can be subjects or objects.

    Authentication is a security control that binds a principal to an identity, so that the system can enforce access control and audit user actions.

    Example: – username expresses your identity. – password binds the person typing to that particular

    identity (username).

    CIT 480: Securing Computer Systems Slide #3

  • CIT 480: Securing Computer Systems

    Purpose of Identity

    Access Control – Most systems base access rights on identity of

    principal executing the process.

    Accountability – Logging and auditing functions. – Need to track identity across account/role

    changes (e.g., su, sudo).

    Slide #4

  • Groups and Roles An “entity” may be a set of entities referred to by a single identifier. Principals often need to share access to files, and thus are taken as groups.

    – static: alias for a group of principles. – dynamic: principal changes from one group to another

    as different privileges are needed.

    role: a group that ties membership to function

    CIT 480: Securing Computer Systems Slide #5

  • CIT 480: Securing Computer Systems

    Network Identity Ethernet (MAC) Address

    – 48-bit data link level identifier – example: 00:0B:DB:78:39:8A

    IP Address – 32-bit network level identifier – ex: 10.17.0.101

    IPv6 Address – 128-bit network level identifier – ex: fe80::2a0:c9ff:fe97:153d/64

    Hostname (DNS name) – string application level identifier – ex: www.nku.edu

    Slide #6

  • Authentication Types

    Authentication can be based on 1. What the entity knows (e.g., passwords) 2. What the entity has (e.g., access card) 3. What the entity is (e.g., fingerprints) 4. Where the entity is (e.g., local terminal)

    Or a combination of two or more of 1..4, which is known as Multi Factor Authentication (MFA).

    CIT 480: Securing Computer Systems Slide #7

  • CIT 480: Securing Computer Systems

    What You Know

    • Passwords • Pass Phrases • PINs

    Slide #8

  • CIT 480: Securing Computer Systems

    What You Have

    • Smart Cards • USB Token • RFID

    RFID used for toll collection

    Slide #9

  • CIT 480: Securing Computer Systems

    USB Tokens and Smart Cards

    Small device with storage and processor. – USB tokens tend to focus on storage. – Smart cards on processor + small storage. – Differences are growing smaller.

    Methods of use – By Hand (read card and type one-time

    password) – USB – Wireless

    Slide #10

  • CIT 480: Securing Computer Systems

    RFID Radio Frequency Identification Types of Tags

    – Passive: use power from reader signal – Active: internal power source

    Applications – Product tracking (EPC barcode replacement) – Transportation payment – Automotive (embedded in car keys) – Passports – Human implants

    EPC RFID Tag

    Slide #11

  • CIT 480: Securing Computer Systems Slide #12

    Authentication System A: set of authentication information

    – information used by entities to prove identity C: set of complementary information

    – information stored by system to validate A F: set of complementation functions f : A → C

    – generate C from A L: set of authentication functions l: A × C→{T,F}

    – verify identity S: set of selection functions

    – enable entity to create or alter A or C

  • CIT 480: Securing Computer Systems Slide #13

    Password System Example Authenticate with 8-character alphanumeric password. System compares against stored MD5 hash. A = [A-Za-z0-9]{8} C = 22-char Base64 strings F = { MD5 } L = { MD5(A)==C }

  • CIT 480: Securing Computer Systems

    What You Are: Biometrics

    Identification by human characteristics: 1. Physiological 2. Behavioral

    A biometric characteristic should be: 1. universal: everyone should have it 2. unique: no two people should share it 3. permanent: it should not change with time 4. quantifiable: it must be practically measurable

    Slide #14

  • CIT 480: Securing Computer Systems Slide #15

    Biometric System Example User authenticates with fingerprint. System compares w/ digital fingerprint template. A = { user fingerprints } C = { digital fingerprint templates } F = { fingerprint reader + analog->digital } L = { tunable similarity function }

  • CIT 480: Securing Computer Systems

    How Biometrics Work 1. User submits sample. 2. Software turns

    sample into digital template.

    3. Software compares template against stored reference template.

    4. Authentication based on how closely templates match.

    Slide #16

  • CIT 480: Securing Computer Systems

    Biometric Measurement

    Possible Outcomes:

    1. Correct person accepted 2. Imposter rejected 3. Correct person rejected (False Rejection) 4. Imposter accepted (False Acceptance)

    Slide #17

  • CIT 480: Securing Computer Systems

    False Positives and Negatives

    Tradeoff between False Accept Rate False Reject Rate

    Slide #18

  • CIT 480: Securing Computer Systems

    Fingerprints Capacitive measurement, using differences in

    electrical charges of whorls on finger to detect those parts touching chip and those raised.

    Slide #19

  • CIT 480: Securing Computer Systems

    Brandon Mayfield

    • Fingerprints found in 2004 Madrid bombing. • Brandon arrested May 6, 2004. • FBI claimed “100 percent positive” match.

    – Held under a false name. – Then transferred to unidentified location.

    • Spanish police identify fingerprint as belonging to an Algerian man May 21, 2004.

    • Brandon released May 25, 2004.

    Slide #20

  • CIT 480: Securing Computer Systems

    Eye Biometrics Iris Scan

    – Lowest false accept/reject rates of any biometric.

    – Person must hold head still and look into camera.

    Retinal Scan – Cataracts and pregnancy

    change retina pattern. – Lower false accept/reject

    rates than fingerprints. – Intrusive and slow.

    Slide #21

  • CIT 480: Securing Computer Systems

    Other Types of Biometrics

    Physiological

    • DNA • Face recognition • Hand geometric • Scent detection • Voice recognition

    Behavioral

    • Gait recognition • Keyboard dynamics • Mouse dynamics • Signatures

    Slide #22

  • CIT 480: Securing Computer Systems

    Biometrics are not infallible

    What are False Accept and Reject Rates? Do the characteristics change over time?

    – Retina changes during pregnancy. – Fingerprint damage due to work/pipe smoking. – Young and old people have fainter fingerprints.

    Is it accurate in the installed environment? – Is someone observing fingerprint or voiceprint

    checks? – i.e., did you collect biometric from the person?

    Slide #23

  • CIT 480: Securing Computer Systems

    Biometrics can be compromised. Unique identifiers, not secrets.

    – You can change a password. – You can’t change your iris scan.

    Examples: – You leave your fingerprints every place. – It’s easy to take a picture of your face.

    Other compromises. – Use faux ATM-style devices to collect biometrics. – Obtain all biometric templates from server.

    Slide #24

  • CIT 480: Securing Computer Systems

    Use and Misuse of Biometrics Employee identification.

    – Employee enters login name. – System uses fingerprint to verify employee is who he

    claims to be. – Problem: Does biometric match the employee?

    Criminal search (Superbowl 2001) – System uses face recognition to search for criminals in

    public places. – Problem: Does any biometric in database match anyone

    in a crowd of people? – Assume system is 99.99% accurate and 1 in 10million

    people is a terrorist. Result: 1000 false positives for each terrorist.

    Slide #25

  • CIT 480: Securing Computer Systems

    Location Classic: only allow access from a particular

    terminal or a particular set of remote hosts.

    Modern: GPS-based – Location Signature Sensor (LSS) for host and user. – Access rules permit user only to access host with

    specific LSS values. – Cell-phones track location, and some states use

    them to track drivers’ speed and locations.

    Slide #26

  • CIT 480: Securing Computer Systems

    UNIX Authentication

    UNIX identifies user with a UID – Username is for humans, UID for computers. – 15-bit to 32-bit unsigned integer. – UID=0 is the superuser, root.

    Identity and authentication data stored in – /etc/passwd

    – /etc/shadow

    – /etc/group

    Slide #27

  • CIT 480: Securing Computer Systems

    /etc/{passwd,shadow}

    /etc/passwd – Username – UID – Default GID – GCOS – Home directory – Login shell

    /etc/shadow – Username – Encrypted password – Date of last pw change. – Days ‘til change allowed. – Days `til change required. – Expiration warning time. – Expiration date.

    Central file(s) describing UNIX user accounts.

    student:x:1000:1000:Example User,,555-1212,:/home/student:/bin/bash student:$1$w/UuKtLF$otSSvXtSN/xJzUOGFElNz0:13226:0:99999:7:::

    Slide #28

  • CIT 480: Securing Computer Systems

    Groups and GIDs

    GIDs are 32-bit non-negative integers. Each user has a default GID.

    – File group ownership set to default GID. – Temporarily change default GID: newgrp.

    Groups are described in /etc/group – Users may belong to multiple groups. – Format: group name, pw, GID, user list. – wheel:x:10:root,waldenj,bergs

    Slide #29

  • CIT 480: Securing Computer Systems

    Superuser Powers

    Superuser can • Read any file. • Modify any file. • Add / remove users. • Become any user. • Kill any process. • Reprioritize processes. • Configure network. • Set date/time. • Shutdown / reboot.

    Superuser can’t • Change read-only

    filesystem. • Decrypt hashed

    passwords. • Modify NFS-mounted

    filesystems. • Read or modify SELinux

    protected files.

    Slide #30

  • CIT 480: Securing Computer Systems

    Switching Users The su command allows you to switch users.

    > id uid=102(wj) gid=102(wj) groups=102(wj) > su Password: # id uid=0(root) gid=0(root)

    groups=0(root),1(bin),2(daemon),3(sys),4(adm), 6(disk),10(wheel)

    # su john john$ id uid=1995(john) gid=1995(john) groups=1995(john) john$ exit # exit > id uid=102(wj) gid=102(wj) groups=102(wj)

    Slide #31

  • CIT 480: Securing Computer Systems

    Real and Effective UIDs

    Real UID – The UID matching the username you logged in as.

    Effective UID – The UID that is checked for access control. – The su command changes your EUID.

    SUID programs – A SUID program executes with an EUID of the

    owner of the program instead of yours. – /usr/bin/passwd is SUID root. Why?

    Slide #32

  • CIT 480: Securing Computer Systems

    Key Points 1. Access control is based on identity. 2. Authentication consists of an entity, the user,

    attempting to convince another entity, the verifier, of the user’s identity

    1. something you know 2. something you have 3. something you are 4. somewhere you are

    3. Authentication Types 1. Passwords 2. Security Tokens 3. Biometrics

    Slide #33

  • CIT 480: Securing Computer Systems

    References 1. Phil Agre. “Your Face is not a Bar Code,” http://polaris.gseis.ucla.edu/pagre/bar-

    code.html, 2003. 2. Ross Anderson, Security Engineering, 2nd edition, Wiley, 2008. 3. Matt Bishop, Introduction to Computer Security, Addison-Wesley, 2005. 4. DigitalPersona, http://www.digitalpersona.com/company/news/pressKit.php, 2006. 5. Simson Garfinkel, Gene Spafford, and Alan Schwartz, Practical UNIX and Internet

    Security, 3/e O’Reilly, 2003. 6. Ben Mook, “Md. pilot program tracks drivers’ speed, location via cell phones,” The Daily

    Record, October 21, 2005, http://www.mddailyrecord.com/pub/5_398_friday/businessnews/172883-1.html

    7. Bruce Schneier, “Biometrics: Truths and Fictions,” Cryptogram, http://www.schneier.com/crypto-gram-9808.html#biometrics, 1998.

    8. Bruce Schneier, “The Curse of the Secret Question,” http://www.schneier.com/essay-081.html, 2005.

    9. Orville Wilson, “Privacy & Identity - Security and Usability: The viability of Passwords & Biometrics,” http://facweb.cs.depaul.edu/research/vc/CIPLIT2004/ppt/Orville_Wilson.ppt, 2004.

    10. “Simple Anatomy of the Retina,” http://webvision.med.utah.edu/sretina.html, 2006.

    Slide #34

    http://polaris.gseis.ucla.edu/pagre/bar-code.htmlhttp://polaris.gseis.ucla.edu/pagre/bar-code.htmlhttp://www.digitalpersona.com/company/news/pressKit.phphttp://www.schneier.com/crypto-gram-9808.html%23biometricshttp://www.schneier.com/essay-081.htmlhttp://www.schneier.com/essay-081.htmlhttp://facweb.cs.depaul.edu/research/vc/CIPLIT2004/ppt/Orville_Wilson.ppthttp://webvision.med.utah.edu/sretina.html

    CIT 480: Securing Computer SystemsTopicsAuthenticationPurpose of IdentityGroups and RolesNetwork IdentityAuthentication TypesWhat You KnowWhat You HaveUSB Tokens and Smart CardsRFIDAuthentication SystemPassword System ExampleWhat You Are: BiometricsBiometric System ExampleHow Biometrics WorkBiometric MeasurementFalse Positives and NegativesFingerprintsBrandon MayfieldEye BiometricsOther Types of BiometricsBiometrics are not infallibleBiometrics can be compromised.Use and Misuse of Biometrics LocationUNIX Authentication/etc/{passwd,shadow}Groups and GIDsSuperuser PowersSwitching UsersReal and Effective UIDsKey PointsReferences