ISS6 Secur for web

Download Report

Transcript ISS6 Secur for web

Information Systems
Security
Information Security for Webbased Applications
The full picture
Securing web sites






Reduce the attack surface of the web
server
Prevent unauthorized access to web sites
and applications
Isolate web sites and applications
Configure user authentication
Encrypt confidential data exchanged with
clients
Maintain web sites and application
security
Securing web sites

Reduce the attack surface of the web
server
 Enable only essential OS components
and services
 Enable only web server components and
services
 Enable only MIME types
 Configure OS security settings
Securing web sites

Prevent unauthorized access to web
sites and applications
 Store content on a dedicated disk
volume
 Set web site permissions
 Set IP address and domain name
restrictions
 Set NTFS file system permissions
Securing web sites

Isolate web sites and applications
 To prevent multiple web sites and
applications from adversely affect with
one another
 Have to create application pool, assign
web sites and applications to them, and
assign proper service account and
permission
 Complicated procedure
Securing web sites

Configure user authentication
 Select appropriate authentication
method
 Digest
 Advanced digest
 Integrated windows
 Client certificates
 MS .NET passport
Securing web sites

Encrypt confidential data exchanged
with clients
 Use of Secure Socket Layer (SSL)
 Install server certificate
 https instead of http
 Use IPSec or VPN for remote
administration
Securing web sites

Maintain web sites and application
security
 Obtain up-to-date security updates
 Enable server security logs
 Enable web server application logs
 Review security policies, processes and
procedures
Reading
Microsoft: Improving Web Application
Security: Threats and Countermeasures
 Chapter 1 “Web Application Security
Fundamentals”
 Chapter 4 “Design Guidelines for
Secure Web Applications” is good but a
bit too advanced for most students
Problem in e-Commerce

The transaction is done online. The
customer and the company cannot see
each other. How can they trust each other?
 Who are you?
 Can I trust you?
 What if I cannot receive my goods?
 What if I cannot receive the payment?
Certificate Authority



Now the CA comes in. It give a digital
identity to all concerned party. It verifies
the company is okay to do business with,
and the customer is also okay
This is not done by the government but by
some commercial organizations
PKI is used as the technology to provide
the digital identification
What is PKI

The set of hardware, software, people and
procedures need to create, store,
distribute, revoke key/certificates based on
public key cryptography
PKI infrastructure and
software development

PKI uses of public key cryptography for
authentication and access control of a
user, guaranteeing the integrity and nonrepudiation of documents signed by the
user, and confidentiality of data.
PKI infrastructure and
software development



Certificate Authority
Registration Authority
Certificate





Name
Issuing CA
Expiration date
Public key
Certificate Revocation List
X.509 Certificate structure
PKI

PKI employs a pair of keys for each user:
a private key which is known only to the
user himself, and a public key which is
published by some authority, in the form of
a digital certificate (certificate for short).
PKI

In signing a document or an e-mail, a user
signs using his own private key so that
others can use the signer's public key to
verify the authenticity and non-repudiation
of documents or e-mail. Since only the
user has his own private key to sign, nonrepudiation is established
PKI

The use of PKI saves the trouble of
maintaining and distributing the same
encryption/decryption key between the
sender and the receiver
Authentication using
certificates
Secure online payment





Credit card payment
Secure Socket Layer
Secure Electronic Transaction (SET)
PayPal
E-purse
Credit Card


Invented in 1950s
Only becomes profitable after 20 years
when the customers reach a critical mass
Credit Card Payment


This is the usual payment method used in
eCommerce
4 parties are involved:
 Cardholder (payer)
 Merchant (payee)
 Issuing Bank
 Acquiring Bank
Measures to stop fraud






Hot card lists
Merchant floor limits – authorization
required when a certain amount is
exceeded
Expiry date used as password
Delivered to cardholder’s address
Card verification value (MAC)
Intrusion detection (anomaly detection)
SSL: Secure Socket Layer


Developed by Netscape to secure HTTP
sessions
Provides





Data encryption
Server authentication
Message integrity
Optional client authentication
NOT a payment system in itself
SSL: Secure Socket Layer



Authentication of server by use of digital
certificate
Use public key technology to exchange a
session key (symmetric) between server
and client used only for that session
After the buyer sends information thro the
secure channel, the merchant processes
the transaction in the usual manner
SSL

Client to Server


Server to Client


Name C, transaction serial no. C#, nonce Nc
Name S, transaction serial no. S#, nonce Ns,
public key KS
Client to Server


Pre-mastered secret key encrypted by KS
{Ko}KS
SSL

Client to Server



Server


Finished message, MAC for all messages to
date
{finished, MAC(K1, everything_to_date)}Kcs
Compute k1=h(Ko, Nc, Ns)
Server to Client

{finished, MAC{k1,every_to_date)}Ksc,
{data}Ksc
Secure Electronic Transaction


A joint effort of VISA and MasterCard to
develop a more secure internet payment
system in 1997 (credit card no not kept)
SET makes use of public key technology
and each participants are assigned public
key/private key pairs
Secure Electronic Transaction



Legal entity formed by MasterCard. Visa,
American Express and JCB in 12/97
A protocol designed for electronic payment
with credit card
Key idea
 Merchant does not need to know
payment details
 Bank does not need to know order
details
SET

Client to Server


Server to Client


C, Nc, CC(Cert of client)
S, S#, CS(merchant) CB(bank)
Client to Server

{Order}KS, {Payment}KB, SigKC{h(Order),
h(Payment)}
SET

Server to Bank


(Summary}KB, {Payment}KB
Bank to Server

Sig KS{Auth_response}
SET

Disgrace of SET
 Nothing for the credit card holders
 Huge cost in building PKI
 Benefits less than expected
EDI





Electronic Data Interchange
Used for B2B transactions
Build on Value-Added Networks
International and national message
standards
Expensive
EDI transactions


EDI, or Electronic Data Interchange, provides
trading partners with an efficient business
tool for the automatic transmission of
commercial data from one computer system
directly to another.
Through the use of EDI message standards
such as X.12, UN/EDIFACT, or EANCOM,
data may be communicated quickly,
efficiently and accurately irrespective of the
users' internal hardware and software
equipment.
EDI in Hong Kong




TRAXON for air-cargo
CargoNet for shipping
EZ*TRADE for retail, manufacturing and
trading
Tradelink for HK Government chiefly for the
Customs Department
EDI Infrastructure


VAN (Valued Added Networks) / VPN (Virtual
Private Networks)
i-EDI (Web Based EDI Systems)
EDI example: SWIFT
RGP = Regional General Processor
PayPal




Virtual bank in Internet
Cater for small merchants that cannot
open account with banks
Provides other services such as shopping
cart
Problem of jurisdiction
E-purse




Pre-paid debit cards that can work offline
Not many business successes
 Mondex
Most successful case
 Octopus
Pre-paid phone cards
The Internet Payment
Processing System






Acquiring bank
Credit card association
Customer issuing bank
Internet merchant accounts
Payment gateway
Processor
Parties to Internet transaction
Customer
Merchant
Payment
Gateway
Processor
Issuing Bank
Merchant’s Acquiring Bank
The transaction process
Credit Card NO.
Transaction info
OK
Request for payment
Authorization
Transaction initiation



Customer decides to make a purchase on
merchant’s web site, proceeds to check
out and inputs credit card information
Merchant’s web site receives customer
information and send transaction
information to Payment Gateway
Payment Gateway route information to
processor
Payment authorization




Processor send information to the
Merchant’s Acquiring Bank
Acquiring Bank sends transaction
information to the credit card holder’s
Issuing Bank
Issuing Bank sends transaction result
(authorization or decline) to Acquiring
Bank
Acquiring Bank send transaction result to
Processor
Payment authorization



Processor routes information to the
Payment Gateway
Payment Gateway passes result to the
Merchant
Merchant accepts and ships goods or
rejects transaction
The payment process
Request for payment
Debit
Consumer
A/C
Credit
Merchant
A/C
Payment settlement



Merchant requests Payment Gateway to
settle a payment
Payment Gateway sends all transactions
to be settled to the Processor
Processor send settlement payment
details to customer’s credit card Issuing
Bank , and to the Merchant’s Acquiring
Bank
Payment settlement

Issuing Bank includes the Merchant’s
charge on the customer’s credit card
statement while Acquiring Bank credits the
Merchant’s account
Payment Processing
PCI DSS


Payment Card Industry Data Security
Standard
It is developed by PCI Security Standards
Council, including American Express,
Discover Financial Services, JCB
International, MasterCard Worldwide and
Visa Inc. Inc. International
PCI DSS


It is a security standard that includes
requirements for security management,
policies, procedures, network architecture,
software design and other critical protective
measures.
This is intended to help organizations
proactively protect customer account data.
Requirements
Build and Maintain a Secure Network
 Install and maintain a firewall configuration to
protect cardholder data
 Do not use vendor-supplied defaults for
system passwords and other security
parameters
Requirements
Protect Cardholder Data
 Protect stored cardholder data
 Encrypt transmission of cardholder data
across open, public networks
Requirements
Maintain a Vulnerability Management
Program
 Use and regularly update anti-virus software
 Develop and maintain secure systems and
applications
Requirements
Implement Strong Access Control Measures
 Restrict access to cardholder data by
business need-to-know
 Assign a unique ID to each person with
computer access
 Restrict physical access to cardholder data
Requirements
Regularly Monitor and Test Networks
 Track and monitor all access to network
resources and cardholder data
 Regularly test security systems and
processes
Requirements
Maintain an Information Security Policy
 Maintain a policy that addresses information
security
Reading

Refer Verisign Online Payment Processing
Guide