You are on page 1of 59

Notes on Network Security

Issues

From security courses at:


Stern School of Business, NYU
Georgia Tech
Attacks
 An attack occurs when someone attempts to use
a vulnerability
 Kinds of attacks
 Passive (e.g., eavesdropping)
 Active (e.g., password guessing)
 Denial of Service (DOS)
 Distributed DOS – using many endpoints
 A compromise occurs when an attack is
successful
 Typically associated with taking over resources
Eavesdropping - Message Interception
(Attack on Confidentiality)
 Unauthorized access to information
 Packet sniffers and wiretappers
 Illicit copying of files and programs

S R

Eavesdropper
Integrity Attack - Tampering With
Messages
 Stop the flow of the message
 Delay and optionally modify the message
 Release the message again

S R

Perpetrator
Authenticity Attack - Fabrication
 Unauthorized assumption of other’s identity
 Generate and distribute objects under this
identity

S R

Masquerader: from S
Attack on Availability
 Destroy hardware (cutting fiber) or software
 Modify software in a subtle way (alias commands)
 Corrupt packets in transit

S R

 Blatant denial of service (DoS):


 Crashing the server
 Overwhelm the server (use up its resource)
Trust
 Trust refers to the degree to
which an entity is expected to behave
 A trust model describes, for a particular

environment, who is trusted to do what?


 Note: you make trust decisions every day

People - the biggest security risk?


 A CompTIA study identified human error as a

major underlying factor in 63% of security


breaches
What is Authentication?
 Short answer: establishes identity
 Answers the question: To whom am I speaking?
 Long answer: evaluates the authenticity of
identity proving credentials
 Credential – is proof of identity
 Evaluation – process that assesses the
correctness of the association between credential
and claimed identity
 for some purpose
 under some policy
What is Identity?
 That which gives you access … which is largely
determined by context
 We all have lots of identities
 Pseudo-identities
 Really, determined by who is evaluating credential
 Driver’s License, Passport, SSN prove …
 Credit cards prove …
 Signature proves …
 Password proves …
 Voice proves …
Something you know …
 Passport number, mothers maiden name, last 4
digits of your social security, credit card number
 Passwords and pass-phrases
 Note: passwords are generally pretty weak
 University of Michigan: 5% of passwords were goblue
(followed by: love, beer)
 Passwords used in more than one place
 Not just because bad ones selected: If you can remember it,
then a computer can guess it
 Computers can often guess very quickly
Something you have …

 Tokens (transponders, …)
 Speedpass, EZ-pass
 Smartcards

 Digital Certificates (used by Websites to


authenticate themselves to customers)
Something you are …
 Biometrics
 Measures some physical characteristic

 Fingerprint, face recognition, retina scanners, voice, signature,

DNA
 Can be extremely accurate and fast

 Active biometrics authenticate, passive biometrics recognize

 What is the fundamental problem?


 Revocation – lost fingerprint?

 Great for physical security, generally not feasible for on-line

systems
Encryption algorithm
 Algorithm used to make content unreadable by
all but the intended receivers

E(plaintext,key) = ciphertext
D(ciphertext,key) = plaintext

 Algorithm is public, key is private


 Block vs. Stream Ciphers
 Block: input is fixed blocks of same length
 Stream: stream of input
Symmetric key cryptography
 Traditional use of cryptography
 Symmetric keys, where A single key is used is
used for E and D

D( E(p,k1), k1 ) = p

 All (intended) receivers have access to key


 Note: Management of keys determines who
has access encrypted data
 E.g., password encrypted email
Data Encryption Standard (DES)
 Introduced by the US NBS
(now NIST) in 1972
 Signaled the beginning of
the modern area of
cryptography
 Block cipher
 Fixed sized input
 8-byte input and a 8-byte
key (56-bits+8 parity bits)
DES Top View
56-bit Key
64-bit
48-bitInput
K1
Generate keys
Permutation Initial Permutation
48-bit K1
Round 1
48-bit K2
Round 2
…... 48-bit K16
Round 16

Swap Swap 32-bit halves

Permutation Final Permutation

64-bit Output
Cryptanalysis of DES
 DES has an effective 56-bit key length
 Wiener: 1,000,000$ - 3.5 hours (never built)
 July 17, 1998, the EFF DES Cracker, which was built for
less than $250,000 < 3 days
 January 19, 1999, Distributed.Net (w/EFF), 22 hours and
15 minutes (over many machines)
 We all assume that NSA and agencies like it around the
world can crack (recover key) DES in seconds
 What now? Give up on DES? Try variants Triple
DES etc.
Diffie-Hellman Key Exchange
 g and p known to both
Alice Bob
pick secret Sa randomly pick secret Sb
randomly
compute TA=gSa mod p compute TB=gSb mod p
send TA to Bob send TB to Alice
compute TBSa mod p compute TASb mod p
Alice and Bob reached the same secret gSaSb mod
p, which is then used as the shared key.
Diffie-Hellman Scheme
 Security factors
 Discrete logarithm very difficult.
 Shared key (the secret) itself never
transmitted.
 Disadvantages:
 Expensive exponential operation
 DoS possible.
 The scheme itself cannot be used to encrypt
anything – it is for secret key establishment.
 No authentication, so you can not sign
anything …
Bucket Brigade Attack...Man In The
Middle Attack
Alice Trudy Bob
gSa=123 gSx =654 gSb =255
123 --> 654 -->
<--654 <--255
654Sa=123Sx 255Sx=654Sb
 Trudy plays Bob to Alice and Alice to Bob
Public Key Cryptography
 Public Key cryptography
 Each key pair consists of a public and private
component: k+ (public key), k- (private key)
D( E(p, k+), k- ) = p
D( E(p, k-), k+ ) = p
 Public keys are distributed (typically) through
public key certificates
 Anyone can communicate secretly with you if they
have your certificate
 E.g., SSL-base web commerce
RSA (Rivest, Shamir, Adelman)
 A dominant public key algorithm
 The algorithm itself is conceptually simple
 Why it is secure is very deep (number thoery)
 Use properties of exponentiation modulo a product of
large primes
 "A method for obtaining Digital Signatures and
Public Key Cryptosystems“, Communications of
the ACM, Feb., 1978 21(2) pages 120-126.
The symmetric/asymmetric key tradeoff

 Symmetric (shared) key systems


 Efficient (Many MB/sec throughput)
 Difficult key management
 Kerberos
 Key agreement protocols
 Asymmetric (public) key systems
 Slow algorithms (so far …)
 Easy key management
 PKI - public key infrastructures
 Webs of trust (PGP)
Hash Algorithms
 Hash algorithm
 Compression of data into a hash value
 E.g., h(d) = parity(d)
 Such algorithms are generally useful in programs
 … as used in cryptosystems
 One-way - (computationally) hard to invert h() , i.e.,
compute h-1(y), where y=h(d)
 Collision resistant hard to find two data x1 and x2 such
that h(x1) == h(x2)
 Q: What can you do with these constructs?
Message Digest 5 (MD5)
512-bit message chunks (16 words)

Initial
128-bit vector

128-bit result
Hashed Message Authentication Code

 HMAC
 Authenticates/integrity for data d
 Uses some key k and hash algorithm h
 To simplify,
hmac(k,d) = h( k+d )
 Why does this provide authenticity?
 Can not produce hmac(k,d) unless you know k
and d
 If you could, then can invert h
 Used in protocols to authenticate content
Digital Signatures
 Models physical signatures in digital world
 Association between private key and document
 … and indirectly identity and document.
 Asserts that document is authentic and non-reputable
 To sign a document
 Given document d, private key k-
 Signature S(d) = E( k-, h(d) )
 Validation
 Given document d, signature S(d), public key k+
 Validate D(k+, S(d)) = H(d)
 Q: Are Digital Signatures Legally binding?
Web security: the high bits
 The largest distributed system in existence
 threats are as diverse as applications and users
 But need to be thought out carefully …
 The stakeholders are …
 Consumers (users, businesses, agents, …)
 Providers (web-servers, IM services, …)
 Another way of seeing web security is
 Securing the web infrastructure such that the integrity,
confidentiality, and availability of content and user
information is maintained
Web Authentication
 Authentication is a bi-directional process
 Client
 Server
 Mutual authentication
 Several standard authentication tools
 Basic (client)
 Digest (server)
 Secure Socket Layer (server, mutual)
 Cookies (indirect, persistent)
Basic Authentication Problems
 Passwords easy to intercept
 Passwords easy to guess
 Passwords easy to share
 No server authentication
 Easy to fool client into sending password to
malicious server
 One intercepted password gives
eavesdropper access to many documents
Challenge and Response
 Challenge (“nonce”): any changing string
 e.g. Random Number, Timestamp etc
 Response: challenge encrypted with hashed
password

 Server-specific implementation options


 One-time nonces
 Time-stamped nonces
 Method authentication digests
Advantages of Digest over Basic
 Cleartext password never transmitted across
network
 Cleartext password never stored on server
 Replay attacks difficult
 Intercepted response only valid for a single URL
 Shared disadvantages
 Vulnerable to man-in-the-middle attacks
 Document itself can be sniffed
What is a Digital Certificate?
 A certificate …
 … makes an association between a user
identity/job/attribute and a private key
 … contains public key information {e,n}
 … has a validity period
 … is signed by some certificate authority (CA)
 Issued by CA for some purpose
 Verisign is in the business of issuing certificates
 People trust Verisign to vet identity
What is a Public Key Infrastructure?
 Rooted tree of CAs Root
 Cascading issuance
 Any CA can issue cert
CA1 CA2 CA3
 Parent CAs issue certs
for child CAs

CA11 CA12 … CA1n CA21 … CA22 …

Cert11a Cert11b Cert11c … … … …


Secure Socket LAYER

 Used to authenticate servers


 Uses certificates, “root” CAs
 Can authenticate clients HTTP
 Inclusive security protocol
SSL
 Security at the socket layer
 Transport Layer Security
TCP

IP
SSL Operation

 Phase 1: the SSL Handshake


 Establishes algorithms used throughout
 Authenticates parties
 Establishes master secret
 Used to create other secrets
1. Encryption Key (client-server)
2. Encryption Key (server- client)
3. Authentication Key (client-server)
4. Authentication Key (server-client)
Advantages of SSL

 Confidential session
 Server authentication*
 GUI clues for users
 Built into every browser
 Easy to configure on the server
 Protocol has been analyzed like crazy
 Seems like you are getting security “for free”
Secure Electronic Transaction
 An open encryption and security
specification for credit card transaction on
the Internet
 Main requirements
 Confidentiality of payment and ordering
information
 Integrity of all transmitted data
 Authentication of cardholder
 Authentication of merchant
Basic Workflow

buyer 5 ship order payment


gateway
3 OI + PI
2 order form 6 payment req
1 browse
merchant
4 auth req
Network security: the high bits
 The network is …
 … a collection of interconnected computers
 … with resources that must be protected
 … from unwanted inspection or modification
 … while maintaining adequate quality of service.
 Another way of seeing network security is
 Securing the network infrastructure such that the
integrity, confidentiality, and availability of the
resources is maintained.
 Q: How do we do this?
Filtering: the threats
 Adversary 1: some external
network entity attempting to gain access to
internal resources
 Adversary 2: some internal, but malicious
entity (or software) trying to expose sensitive
data
 Adversary 3: some internal or external entity
that is preventing access to internal resource
(DOS)
What is a firewall?

• Device that provides secure connectivity between networks


(internal/external; varying levels of trust)
• Used to implement and enforce a security policy for
communication between networks

Untrusted Networks
Trusted Networks Firewall & Servers
Untrusted Users

Internet
Router
Intranet

DMZ Public Accessible


Servers & Networks
Trusted Users
Firewall Policies
 Specifies what traffic is (not) allowed
 Maps attributes to address and ports
 Example: HTTP should be allowed to any external host, but
inbound only to web-server

Source Destination
Protocol Flags Actions
Address Port Address Port

* * 1.1.1.1 80 TCP SYN Accept

1.1.1.* * * 80 TCP SYN Accept

* * * 80 TCP Accept

* * * * TCP Deny
Packet Filters / Application Gateways

 Decisions made on a  Relay for connections


per-packet basis  Client  Proxy  Server
 No state information  Recognizes application
saved protocol such as HTTP
 Processing intensive  Can implement
 Lower level monitoring authentication and
access rules on per
protocol basis
Communications Security
 A host wants to establish a secure channel to
remote hosts over an untrusted network
 Not Login – end-users may not even be aware that
protections in place
 Remote hosts may be internal or external
 The protection service must …
 Authenticate the end-points (each other)
 Negotiate what security is necessary (and how)
 Establish a secure channel
 Process the traffic between the end points
IPsec (not IPSec!)
 Host level protection service
 IP-layer security (below TCP/UDP)
 De-facto standard for host level security
 Developed by the IETF (over many years)
 Now available in most operating systems
 E.g., Available in XP, OS X, Linux, BSD*, …
 Implements a wide range of protocols and cryptographic
algorithms
 Provides ….
 Confidentiality, integrity, authenticity, replay protection,
DOS protection
IPsec Protocol Suite
Policy/
Configuration Key Management Packet Processing
Managent

(SPS)
(SPS) (ESP)
(ESP)
Security
SecurityPolicy
Policy Manual
Manual Encapsulating
Encapsulating
System
System Security
SecurityPayload
Payload

(IKE)
(IKE) (AH)
(AH)
Internet
InternetKey
Key Authentication
Authentication
Exchange
Exchange Header
Header
IPsec in Tunnel Mode

Encrypted Tunnel

Gateway Gateway

Encrypted Unen
ry pted crypt
ed
A Une
nc B

New IP AH or ESP Orig IP TCP Data


Header Header Header
Network Isolation: VPNs
 Idea: I want to create a collection of hosts which
operate in a coordinated way
 E.g., a virtual security perimeter over physical network
 Hosts work as if they are isolated from malicious hosts
 Solution: Virtual Private Networks
 Create virtual network topology over physical network
 Use communications security protocol suites to secure virtual
links “tunneling”
 Manage networks as if they are physically separate
 Hosts can route traffic to regular networks (split-tunneling)
Intrusion Detection System
 IDS systems claim to detect adversary when they
are in the act of attack
 Monitor operation
 Trigger mitigation technique on detection
 Monitor: Network, Host, or Application events
 IDS systems really refer to three kinds of
detection technologies
 Anomaly Detection
 Misuse Detection QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture.

 Intrusion Detection
Anomaly Detection
 Compares profile of normal systems operation to
monitored state
 Hypothesis: any attack causes enough deviation from
profile (generally true?)
 Q: How do you derive normal operation?
 AI: learn operational behavior from training data
 Constructive: construct profile from domain knowledge
 Q: Will a profile from one environment be good
for others?
Misuse Detection
 Profile signatures of known attacks
 Monitor operational state for signature
 Hypothesis: attacks of the same kind has enough
similarity to distinguish from normal behavior
 Q: Where do these signatures come from?
 Record: recorded progression of known attacks
 Comprise: domain knowledge
 AI: Learn by negative and positive feedback

Event Stream Write Read Write Send Send


Attack Profile Read Write Send
Intrusion Detection
 Monitor for illegal or inappropriate access or use of
resources
 Reading, writing, or forwarding of data
 DOS
 Hypothesis: resources are not adequately protected by
infrastructure
 Often less effective at detecting attacks
 Buttress existing infrastructure with checks
 Validating/debugging policy
 Detects inadvertent, often catastrophic, human errors
 “rm -rf /” issue
 Q: Who is the intruder?
Denial of Service
 Intentional prevention of access to valued
resource
 CPU, memory, disk (system resources)
 DNS, print queues, NIS (services)
 Web server, database, media server (applications)
 This is an attack on availability
 Note: launching DOS attacks is easy
 Note: preventing DOS attacks is hard
 Mitagation the path most frequently traveled
Distributed denial of service
 DDOS: Network oriented attacks aimed at
preventing access to some network, host or
service
 Saturate the target’s network with traffic
 Consume all network equipment resources
 Overload a service with requests
 Use “expensive” requests (e.g., “sign this data”)
 Can be extremely costly (e.g, Amazon)
 Result: service/host/network is unavailable
 Frequently distributed via other attack
Time to Think About Building Secure
Software
 Common mistakes
 Forget to make the software secure
 Adding security as an afterthought
 Why these mistakes
 Security is boring
 Security gets in the way
 Security is difficult to measure
 Security is not the primary skill or interest of
designers and developers
Security Principles to Live By

 Establish a security process


 Define the product security goals
 Consider security as a product feature
 Learn from mistakes
 Use defense in depth
 Assume external systems are insecure
Security Design by Threat Modeling

 Use a taxonomy of threats, e.g., STRIDE:


 Spoofing identity
 Tampering with data
 Repudiation
 Information disclosure
 Denial of service
 Elevation of privilege
 Consider target, chance, criticality, attack
techniques, mitigation techniques, etc.

You might also like