
1
CHNG 7
BO MT WEB
I- TNG QUAN V BO MT WEB
I.1- Gii thiu
Web là dch v quan trng bc nht hin nay trong s các dch v ca mng Internet.
Rt nhiu ng dung ưc xây dng trên nn Web, c bit là các ng dng thương mi in
t. Tính an toàn ca dch v này vì th tr thành yêu cu bt buc.
Tuy nhiên, cng ging như nhng ng dng khác trên nn mng Internet, Web cng
tha hưng nhng im mnh ca cơ s h tng mng và b giao thc TCP/IP, nhưng cng
ng thi i din vi nhng thách thc v bo mt. Ngoài ra, bn thân công ngh Web cng
t nó n cha mt s nguy cơ c thù. Có th k ra nhng thách ln i vi dch v Web như
sau:
• Web là mt công ngh phc tp. Mc dù vic s dng Web browser truy
xut Web là ơn gin, vic cài t và cu hình mt Web server là ơn gin, c
vic xây dng các ng dng Web vi s h! tr ca các công c mnh hin nay
cng là ơn gin, nhưng kin trúc bên trong ca dch v Web li là mt h
thng ht sc phc tp. S phc tp này n cha nhng nguy cơ tim tàng v
bo mt. Trong thc t, nhng l!i bo mt xut phát t bên trong công ngh là
khá nghiêm trng, có th d"n n nhng tn công nguy him i vi h thng.
• Web server là nơi giao tip vi th gii mng bên ngoài, cng ng thi là nơi
có kt ni gn gi vi các h qun tr cơ s d liu bên trong. Nên trong a s
các trưng hp tn công, thì Web server chính là ca ngõ thích hp nht
hacker bt u, t ó tin sâu vào các cơ si73 d liu quan trng bên trong.
• Ngưi dùng Internet thuc nhiu thành phn khác nhau, và a s không có
kin thc và ít quan tâm n vn bo mt, k c nhng thông báo rt c th
ca Web browser trong các tình hung nguy him. Do ó, các tn công hưng
v phía ngưi dùng cng là mt trong nhng sơ h nghiêm trng ca Web.
I.2- Các nguy cơ tn công bo mt i vi dch v Web
Các nguy cơ tn công an ninh i vi dch v Web có th phân thành 4 nhóm như sau:
• Tn công vào thuc tính toàn v#n ca thông tin trên Web (integrity): gm các
tn công như thay $i d liu ca ngưi dùng, thay $i d liu trong quá trình
trao $i gia web server và web browser, tác ng vào b nh web server
thông qua các l!i tràn b m, … Các tn công loi này gây ra mt thông tin,
cho phép hacker xâm nhp và h thng và t ó to ra nhiu l! h$ng bo mt
khác. % ng&n chn các tn công thuc nhóm này, k' thut mã hóa và xác
thc thông tin là gii pháp hu hiu nht.
• Tn công vào thuc tính bí mt ca thông tin trên Web (confidentiality): gm
các tn công như c lén trên ưng truyn, ly cp d liu trên server, ly cp
d liu trên máy ngưi dùng, do thám thông tin v cu hình mng, … Các tn
công này gây mt thông tin và tit l các thông tin cá nhân ca ngưi dùng.
Gii pháp ng&n chn các tn công loi này là dùng các k' thut mã hóa và web
proxy.

2
• Tn công t chi dch v (DoS): gm các tn công như tt các lung x lý ca
user, chim tài nguyên ca web server (b&ng thông, (a cng, b nh) và tn
công vào các cơ s d liu DNS nh)m cô lp Web server. Hu qu mà các tn
công này gây ra thưng là làm gián on dch v, gây khó chu cho ngưi dùng
và thm chí ng&n chn các truy xut hp l ca ngưi dùng. Các tn công dng
này hin nay chưa có gii pháp c th.
• Tn công các cơ ch xác thc ca dch v Web (authentication): bao gm gi
danh ngưi dùng và gi mo d liu. Các tn công này cng ưc gii quyt
b)ng các k' thut mt mã i xng và bt i xng.
Hình 7.1: Các ng dng bo mt trong mô hình TCP/IP
Ngoài cách phân loi các nguy cơ bo mt như trên, còn có mt cách phân loi khác là
da vào v trí ca các nguy cơ này trong mô hình hot ng ca dch v Web. Theo ó, các
nguy cơ tn công bo mt i vi dch v Web có th xut hin 3 v trí như sau:
• Các nguy cơ phía web server
• Các nguy cơ phía web client
• Các nguy cơ trên ưng truyn d liu.
Cho dù có dùng cách phân loi nào i na, thì các gii pháp bo mt cho dch v WeB thưng
tp trung vào hai nhóm như sau:
• Gia c Web server và Web client dùng các công c h! tr và các bn cp nht
thưng xuyên ca nhà sn xut.
• %m bo tính toàn v#n, bí mt và xác thc ca d liu trao $i gia web
browser và web server dùng các công c mã hóa và xác thc.
Trong phm vi tài liu này, các gii pháp bo mt dch v web ưc mô t tp trung
vào nhóm gii pháp mt mã hc. %ây là nhóm gii pháp nn tng và có th áp dng thng
nht cho các tình hung mà không cn phân bit các cơ s h tng mà web ưc trin khai
(như h iu hành, phn mm web server và các phn mm ng dng trên nn web). Nhóm
gii pháp này bao gm:
1. Trin khai IPSec trên các kt ni gia Web server và Web client
2. Dùng giao thc bo mt SSL
3. Mô hình giao dch an toàn SET
4. Các giao thc xác thc an toàn
IPSec ã ưc trình bày chương trưc. Phn còn li ca chương này tp trung vào
giao thc bo mt SSL, mô hình giao dch an toàn SET và các giao thc xác thc mc ng
dng.

3
Hình 3.13: Cu trúc SSL
Giao th
c
bt tay
SSL
Giao th
c
thay i
thông s mã
Giao th
c
cnh bo
HTTP
Giao thc truyn d liu
TCP
IP
II- GIAO THC BO MT SSL
Secure Sockets layer hay SSL là mt giao thc bo mt ưc Netscape thit k nh)m
cung cp các kt ni bo mt cho các ng dng trên nn giao thc TCP/IP. SSL ã ưc
chu n hóa và s dng rng rãi trong nhiu ng dng trên mng Internet như web, mail, …
Phiên bn hin ti ca SSL là 3.0. Phiên bn SSL ưc IEEE chu n hóa là ưc gi là TLS
(Transport Layer Security), và ưc xem như là SSL phiên bn 3.1.
II.1- Cu trúc SSL
SSL thc ra bao gm hai lp giao thc n)m phía trên TCP. Lp th nht là giao thc
truyn d liu SSL (SSL record protocol) và lp th hai gm mt tp các giao thc ph tr
(hình 3.13). Phn này gii thiu khái quát các thành phn ca SSL.
Hai khái nim cơ bn thưng ưc dùng trong SSL là kt ni (connection) và phiên
giao dch (session).
-Kt ni là mt kt ni (tm thi) gia mt u cui này vi mt u cui kia cung
cp mt lai dch v thích hp. M!i kt ni liên kt vi mt phiên giao dch (session).
-Phiên giao dch là mt liên kt gia mt máy con và mt máy ch, ưc to ra bi
giao thc SSL Handshake protocol. Phiên giao dch nh ngh(a các tham s bo mt
dùng chung cho nhiu kt ni.
Trng thái ca phiên giao dch ưc nh ngh(a bi các thông s sau ây:
• Nhn dng phiên (Session identifier): Mt chu!i byte ng"u nhiên ưc server
chn nhn dng mt trng thái ca phiên giao dch.
• Chng thc khóa i phưng (Peer certificate): Chng thc khóa công khai
(X509.v3) ca thc th i phương. Thành phn này có th có hoc không.
• Phưng pháp nén (Compression method): Gii thut nén d liu trưc khi mã
hóa.
• Thut tóan mã (Cipher spec): Xác nh thut toán mã hóa và hàm b&m ưc s
dng cho phiên giao dch.
• Khóa (Master secret): Khóa bí mt (48-byte) dùng chung gia máy con và
server.

4
• Kh nng phc hi (Is resumable): Cho bit phiên giao dch này có th khi
to mt kt ni mi hay không.
Tương t, các thông s nh ngh(a trng thái ca mt kt ni bao gm:
• S nhn dng ngu nhiên (Server and client random): Chu!i byte chn ng"u
nhiên bi server và client, có chc n&ng phân bit các kt ni vi nhau.
• Khóa xác thc ca máy ch (Server write MAC secret): Khóa bí mt dùng
tính giá tr xác thc MAC trên d liu gi i t server.
• Khóa xác thc ca máy con (Client write MAC secret): Khóa bí mt dùng
tính giá tr xác thc MAC trên d liu gi i t máy con.
• Khóa mt mã ca máy ch (Server write key): Khóa bí mt dùng mt mã
hóa d liu gi i t server.
• Khóa mt mã ca máy con (Client write key): Khóa bí mt dùng mt mã
hóa d liu gi i t client.
• Vector khi to (Initialization vectors): vec-tơ khi to (IV) dùng trong ch
mã hóa CBC (Chaining Bock Cipher). Giá tr này ưc khi to bi giao thc
SSL record.
• S th t gói (Sequence numbers): S th t ca các bn tin ưc gi i và
nhn v trên kt ni.
II.2- Giao thc truyn d liu SSL:
Giao thc truyn d liu SSL (SSL record protocol) cung cp 2 dch v cơ bn cho các
kt ni SSL là dch v bo mt và dch v tòan vn d liu.
Hình 3.14 mô t hat ng ca giao thc truyn d liu SSL. Theo ó, các thao tác mà
SSL thc hin trên d liu bao gm: phân an d liu (fragmentation), nén d liu
(compression), xác thc d liu (MAC), mã hóa, thêm các tiêu cn thit và cui cùng gi
D liu gc
Phân on
Nén
G
n thông tin
xác thc (MAC)
Mt mã hoá
G
n ti
êu
g
iao
thc SSL record
Hình 3.14: Hot ng ca giao thc truyn d liu SSL

5
tòan b an thông tin trên trong mt segment TCP. * phía nhn, quá trình ưc thc hin
ngưc li.
Cu trúc gói d liu SSL record gm các thành phn sau (hình 3.15):
• Kiu d liu (Content Type - 8 bits): Giao thc lp trên. Giao thc này s+ x lý
thông tin trong gói d liu SSL.
• Phiên bn chính (Major Version - 8 bits): Phiên bn chính ca SSL. %i vi
SSL v3, giá tr này là 3.
• Phiên bn ph (Minor Version - 8 bits): Phiên bn ph ca SSL. Ví d: i vi
SSLv3 thì giá tr trưng này là 0.
• Kích thưc d liu (Compressed Length -16 bits): Chiu dài ca phn d liu
(plaintext), tính theo byte.
• D liu (Plaintext): D liu ca lp trên ưc chuyn i trong gói SSL record.
D liu này có th ưc nén hoc không.
• Mã xác thc (MAC): Mã xác thc, có kích thưc = 0 byte nu không dùng
chc n&ng xác thc.
Hai chc n&ng quan trng nht ca SSL record là mã hóa và xác thc thông tin. Các
thut toán mã hóa có th dùng trong SSL bao gm:
-Các thut toán mã khi:
• AES (khóa 128/256 bit)
• IDEA (khóa 128 bit)
• RC2-40 (khóa 40 bit)
• DES-40 (khóa 40 bit)
• DES-56 (khóa 56 bit)
• 3DES 3 khóa (168 bit)
Kiu d
liu
Phiên bn
chính
Phiên bn
ph
Kích thưc
d liu
D liu
(có th nén hoc không nén)
Mã xác thc (0, 16 hoc 20 byte)
Thông tin
c mã
hoá
Hình 3.15: Cu trúc gói SSL record