Topic-4 Web Application Security
Topic-4 Web Application Security
Protocols:
SSL & TLS
Outline
• Web Security threats
• Secure Socket Layer (SSL)
• Transport Layer Security (TLS)
Web Security Threats
One way to group those threats is in terms of passive and
active attacks.
Passive attacks
• It include eavesdropping on network traffic between
browser and server and gaining access to information on a
web site that is supposed to be restricted.
Active attacks
• It include impersonating another user, altering messages in
transit between client and server, and altering information
on a web site.
A Comparison of Threats on The
Web
Web Security Threats
Another way to classify Web security threats is in terms of the
location of the threat:
Web server, Web browser, and network traffic between browser
and server.
• Issues of server and browser security fall into the category of
computer system security.
• Issues of traffic security fall into the category
of network security.
Web Traffic Security Approaches
A number of approaches to providing Web security are possible.
• One way to provide Web security is to use IP security (IPsec).
Web Traffic Security Approaches
• Another relatively general-purpose solution is to implement security
just above TCP.
At this level, there are two implementation choices.
• SSL (or TLS) could be provided as part of the underlying protocol
suite and therefore be transparent to applications.
• Alternatively, SSL can be embedded in specific packages. For
example, Netscape and Microsoft Explorer browsers.
Web Traffic Security Approaches
Web Traffic Security Approaches
• Application-specific security services are embedded within the
particular application.
Advantage: The service can be tailored to the specific needs of a
given application.
Secure Socket Layer (SSL)
• Invented by Phil Karlton (CMU Ph.D.) and others at
Netscape.
• It is a secure data exchange protocol providing
• Privacy between two Internet applications.
• Authentication of server (authentication of browser optional).
• It is a two layers protocols
SSL Handshake, Change Cipher Spec and Alert Protocols
• They are used in the management of SSL exchanges, such as Negotiates symmetric
encryption protocol, authentication, etc.
SSL Record Protocol
• It is used to provide basic security services to various higher layer protocols, such as
Packs/unpacks records, performs encryption/decryption.
SSL (Secure Socket Layer)
• Handshake
• Certificate_request_message
It includes two parameters:
certificate_type and certificate_authorities that include public
key algorithm along with its use and list of acceptable certificate
authorities, respectively.
• Server_done_message
It is sent by the server to indicate the end of the server hello
and associated messages.
Phase 3: Client Authentication and Key Exchange
Upon receiving server_done_message, the client should verify
server’s certificate and check that server hello parameters are
acceptable.
Initial Exchange to Setup a Logical Connection b/w peers
• Premaster secret
• Created by client; used to “seed” calculation of encryption
parameters.
• Very simple: 2 bytes of SSL version + 46 random bytes.
• Sent encrypted to server using server’s public key.
• Master secret
• Generated by both parties from premaster secret and random values
generated by both client and server.
• Key material
• Generated from the master secret and shared random values.
• Encryption keys
• Extracted from the key material.
Forming the Master Secret
SERVER’S PUBLIC KEY
IS SENT BY SERVER IN
ServerKeyExchange
• Secure-Bank.Com
• Web-Charge
• SecureTrans
Transport Layer Security (TLS )
• Padding:
It can be any amount (e.g., 1, 9, 17 and so on, up to 249 bytes) that results in a total that is a
multiple of the cipher’s block length, up to a maximum of 255 bytes.
A variable length padding is used to frustrate attacks.
SET Certificate Hierarchy
Root CA
(SET Co)
Brand CA
(MasterCard, Visa)
SOURCE: INZA.COM
Major Ideas
• SSL, TLS are secure message protocols, not payment
protocols
• SSL requires the vendor to have a certificate.
• SSL is secure against breaking of any one form of encryption.
• SET is a payment protocol.
• SET requires all parties to have certificates.
Secure Sockets Layer (SSL) Handshake
SYMMETRIC
if it has one
ASYMMETRIC
ASYMMETRIC
SYMMETRIC