Chapter 7 Web Security
-
Upload
bruno-solomon -
Category
Documents
-
view
26 -
download
0
description
Transcript of Chapter 7 Web Security
![Page 1: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/1.jpg)
Chapter 7
Web Security
MSc. NGUYEN CAO DATDr. TRAN VAN HOAI
![Page 2: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/2.jpg)
BKTP.HCM
Web SecurityWeb now widely used by business, government,
individualsbut Internet & Web are vulnerablehave a variety of threats▫integrity▫confidentiality▫denial of service▫authentication
need added security mechanisms▫Transport Layer Security (SSL/TLS)▫Secure Electronic Transactions (SET)
![Page 3: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/3.jpg)
BKTP.HCM
SSL (Secure Socket Layer) Reliable end-to-end secure service Provides a “secure TCP socket” Usually used with Web browsers▫Can be used for other applications too
Introduced by Netscape in 1995 Provided options for 40 and 128 bit keys Submitted to IETF standards▫Result – TLS (RFC 2246)
![Page 4: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/4.jpg)
BKTP.HCM
SSL Architecture
![Page 5: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/5.jpg)
BKTP.HCM
SSL Architecture
SSL session▫an association between client & server▫created by the Handshake Protocol▫define a set of cryptographic parameters▫may be shared by multiple SSL connections
SSL connection▫a transient, peer-to-peer, communications link▫associated with 1 SSL session
![Page 6: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/6.jpg)
BKTP.HCM
SSL Record Protocol Servicesmessage integrity▫using a MAC with shared secret key▫similar to HMAC but with different padding
confidentiality▫using symmetric encryption with a shared secret key
defined by Handshake Protocol▫AES, IDEA, RC2-40, DES-40, DES, 3DES, Fortezza,
RC4-40, RC4-128▫message is compressed before encryption
![Page 7: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/7.jpg)
BKTP.HCM
SSL Record Protocol Operation
![Page 8: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/8.jpg)
BKTP.HCM
SSL Change Cipher Spec Protocol
one of 3 SSL specific protocols which use the SSL Record protocol
a single messagecauses pending state to become currenthence updating the cipher suite in use
![Page 9: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/9.jpg)
BKTP.HCM
SSL Alert Protocolconveys SSL-related alerts to peer entityseverity
warning or fatalspecific alert
fatal: unexpected message, bad record mac, decompression failure, handshake failure, illegal parameter
warning: close notify, no certificate, bad certificate, unsupported certificate, certificate revoked, certificate expired, certificate unknown
compressed & encrypted like all SSL data
![Page 10: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/10.jpg)
BKTP.HCM
SSL Handshake Protocol allows server & client to:▫ authenticate each other▫ to negotiate encryption & MAC algorithms▫ to negotiate cryptographic keys to be used
comprises a series of messages in phases▫ Establish Security Capabilities▫ Server Authentication and Key Exchange▫ Client Authentication and Key Exchange▫ Finish
![Page 11: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/11.jpg)
BKTP.HCM
SSL Handshake Protocol
![Page 12: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/12.jpg)
BKTP.HCM
TLS (Transport Layer Security)IETF standard RFC 2246 similar to SSLv3with minor differences▫in record format version number▫uses HMAC for MAC▫a pseudo-random function expands secrets▫has additional alert codes▫some changes in supported ciphers▫changes in certificate types & negotiations▫changes in crypto computations & padding
![Page 13: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/13.jpg)
BKTP.HCM
Client AuthenticationSSL/TLS, IE, Netscape, Firefox all support client
certs▫Rarely used outside of corporate settings▫Peoplesoft ISIS? Nope
HTTP Basic authentication within SSL session▫Cleartext password stored on server, but hidden on wire▫Could use Digest authentication instead
![Page 14: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/14.jpg)
BKTP.HCM
Performance
SSL is slow▫Crypto▫Latency (in addition to TCP)▫Session resumption▫Servers have it rough, signing with private key to prove
identity
![Page 15: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/15.jpg)
BKTP.HCM
HTTPS and Web Servers HTTP over SSL usually port 443
▫ 443 means "use SSL"▫ No substantial HTTP awareness of SSL underneath
Web pages typically include a lot of embedded content▫ potentially fetched over different TCP connections▫ session resumption is critical for performance▫ HTTP persistent connections are very helpful
Proxies▫ A proxy is a man-in-the-middle▫ HTTP "CONNECT" method just relays data; proxy can't examine▫ Possible to reconfigure clients so that a real man-in-the-middle "attack" on https is
possible Set up your own Certificate Authority and issue a server cert for name *
Apache / OpenSSL / mod_ssl very common combination▫ Fairly complicated setup
Plenty of commercial server support
![Page 16: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/16.jpg)
BKTP.HCM
Secure Electronic Transactions (SET)
open encryption & security specificationto protect Internet credit card transactionsdeveloped in 1996 by Mastercard, Visa etcnot a payment systemrather a set of security protocols & formats▫secure communications amongst parties▫trust from use of X.509v3 certificates▫privacy by restricted info to those who need it
![Page 17: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/17.jpg)
BKTP.HCM
SET Components
![Page 18: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/18.jpg)
BKTP.HCM
SET Transaction1. customer opens account2. customer receives a certificate3. merchants have their own certificates4. customer places an order5. merchant is verified6. order and payment are sent7. merchant requests payment authorization8. merchant confirms order9. merchant provides goods or service10. merchant requests payment
![Page 19: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/19.jpg)
BKTP.HCM
Dual Signature
customer creates dual messages▫order information (OI) for merchant▫payment information (PI) for bank
neither party needs details of otherbut must know they are linkeduse a dual signature for this▫signed concatenated hashes of OI & PI
![Page 20: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/20.jpg)
BKTP.HCM
Dual Signature Construction
DS=E(PRc, [H(H(PI)||H(OI))])
![Page 21: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/21.jpg)
BKTP.HCM
SET Purchase Request
SET purchase request exchange consists of four messages
1. Initiate Request - get certificates2. Initiate Response - signed response3. Purchase Request - of OI & PI4. Purchase Response - ack order
![Page 22: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/22.jpg)
BKTP.HCM
Purchase Request – Customer
![Page 23: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/23.jpg)
BKTP.HCM
Purchase Request – Merchant
1. verifies cardholder certificates using CA sigs2. verifies dual signature using customer's public
signature key to ensure order has not been tampered with in transit & that it was signed using cardholder's private signature key
3. processes order and forwards the payment information to the payment gateway for authorization (described later)
4. sends a purchase response to cardholder
![Page 24: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/24.jpg)
BKTP.HCM
Purchase Request – Merchant
![Page 25: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/25.jpg)
BKTP.HCM
Payment Gateway Authorization1. verifies all certificates2. decrypts digital envelope of authorization block to obtain
symmetric key & then decrypts authorization block3. verifies merchant's signature on authorization block4. decrypts digital envelope of payment block to obtain
symmetric key & then decrypts payment block5. verifies dual signature on payment block6. verifies that transaction ID received from merchant matches
that in PI received (indirectly) from customer7. requests & receives an authorization from issuer8. sends authorization response back to merchant
![Page 26: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/26.jpg)
BKTP.HCM
Payment Capture
merchant sends payment gateway a payment capture request
gateway checks requestthen causes funds to be transferred to merchants
accountnotifies merchant using capture response
![Page 27: Chapter 7 Web Security](https://reader036.fdocuments.in/reader036/viewer/2022062314/56813945550346895da0e076/html5/thumbnails/27.jpg)
BKTP.HCM
Summary
have considered:▫Transport layer security (SSL/TLS)▫Secure Electronic Transactions (SET)