IIG University of Freiburg
Web Security, Summer Term 2012
Secure HyperText Transfer Protocol
- Dr. E. Benoist
Sommer Semester
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 1
Web Security, Summer Term 2012 Secure HyperText Transfer Protocol - - PowerPoint PPT Presentation
IIG University of Freiburg Web Security, Summer Term 2012 Secure HyperText Transfer Protocol Dr. E. Benoist Sommer Semester Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 1 Table of Contents Attacks using HTTP
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 1
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 2
◮ HTTP is transfered Cleartext over the internet
◮ Eavesdropping
◮ Message Modification
Examples:
◮ Add some Javascript for sending information to a third party ◮ Change the action of a form (to redirect the user to a
physhing site)
◮ . . . Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 3
◮ Confidentiality
◮ Authentication of the partner
◮ Integrity of the Message
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 4
◮ Symetric Cryptography
◮ Efficiency
◮ Problem
correspondant
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 5
◮ Knowledge of Keys is Asymetric
◮ Encryption of a message
◮ Problem
another one
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 6
◮ Bob wants to be certain the message was sent by Alice
◮ Signing of the message
such a message
◮ Combining both : encrypting and signing
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 7
◮ A lot of keys have to be exchanged
◮ How to exchange keys in a secure way?
CA)
the CA
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 8
◮ Alice wants to receive Bob’s public key
the CA
◮ Name of the Certificate Authority ◮ Name of the owner of the certificate (Bob) ◮ Address, . . . ◮ Public key of Bob
◮ So if Alice trusts the verification of CA, she trusts the
◮ Problems in real life
We have a chain of trust (or web of trust)
anybody trusts.
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 9
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 10
◮ Public Key Cryptography
◮ Symetric Key Cryptography
◮ Solution
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 11
◮ TCP/IP socket can be read and modified
◮ SSL and TLS
◮ Content is protected from its origin to its destination
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 12
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 13
MAC): HMAC-MD5 or HMAC-SHA
OpenPGP)
valid)
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 14
◮ Eavesdropping
to read it.
◮ Data Modification
content can not be modified
◮ Man in the middle attack
certificate.
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 15
◮ Relies on the PKI infrastructure
◮ Man in the Middle attack
◮ Interception / Modification
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 16
◮ Create a Certificate (Standard X.509)
◮ Let a CA sign your certificate You add the following
◮ Configure the port 443 of your server
this port using HTTPS.
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 17
Certificate: Data: Version: 1 (0x0) Serial Number: 7829 (0x1e95) Signature Algorithm: md5WithRSAEncryption Issuer: C=ZA, ST=Western Cape, L=Cape Town, O=Thawte Consulting cc, OU=Certification Services Division, CN=Thawte Server CA/emailAddress=server-certs@thawte.com Validity Not Before: Jul 9 16:04:02 1998 GMT Not After : Jul 9 16:04:02 1999 GMT Subject: C=US, ST=Maryland, L=Pasadena, O=Brent Baccala, OU=FreeSoft, CN=www.freesoft.org/emailAddress=baccala@freesoft.org Subject Public Key Info: Public Key Algorithm: rsaEncryption RSA Public Key: (1024 bit) Modulus (1024 bit): 00:b4:31:98:0a:c4:bc:62:c1:88:aa:dc:b0:c8:bb: 33:35:19:d5:0c:64:b9:3d:41:b2:96:fc:f3:31:e1: ... d2:75:6b:c1:ea:9e:5c:5c:ea:7d:c1:a1:10:bc:b8: e8:35:1c:9e:27:52:7e:41:8f Exponent: 65537 (0x10001) Signature Algorithm: md5WithRSAEncryption 93:5f:8f:5f:c5:af:bf:0a:ab:a5:6d:fb:24:5f:b6:59:5d:9d: 92:2e:4a:1b:8b:ac:7d:99:17:5d:cd:19:f6:ad:ef:63:2f:92: ... 8f:0e:fc:ba:1f:34:e9:96:6e:6c:cf:f2:ef:9b:bf:de:b5:22: 68:9f Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 18
◮ Virtual Hosts very common on Apache
at the same address)
names.
◮ Problem with virtual hosts for HTTPS
◮ Solution: Having One IP-Address per Virtual-host
IP addresses.
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 19
◮ HTTPS means : authentification of the server
authentification of the client: Username + password
◮ Users May be authenticated by a certificate
browser, on a chip card or USB stick.
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 20
◮ You have to create a Certificate
◮ Install SSL module
◮ Create a Virtual Host for your SSL server
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 21
For authenticating the users also
◮ Definition of the CA’s certificates (CRT)
◮ Definition of revocation lists (CRL) (for the CA’s)
◮ Set properties for clients
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 22
◮ Private Key may be compromized (stollen, copied,
◮ Content of the site may have been changed
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 23
◮ Client may not pay attention to security warnings
◮ Client may be compromized
handshaking part of the protocol)
◮ Client may be malicious
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 24
◮ Apache SSL/TLS Encryption
◮ Wikipedia
◮ Other resources
Web Security, Summer Term 2012 3 Secure HyperText Transfer Protocol 25