Khoa CNTT
TR
B GIÁO D C VÀ ÀO T O
NG
I H C KHOA H C T NHIÊN TP.HCM
KHOA CÔNG NGH THÔNG TIN
B MÔN M NG MÁY TÍNH
cd
LU N V N T T NGHI P
TÀI:
NGHIÊN C U M T S V N
V B OM T
NG D NG WEB TRÊN INTERNET
GVHD: Th.S. MAI V N C NG
SVTH : NGUY N DUY TH NG - 9912074
NGUY N MINH THU - 9912156
KHÓA H C: 1999-2003
Khoa CNTT
L ic m n
Sau g n 6 tháng n l c th c hi n, lu n v n nghiên c u “Các k thu t t n công và
b o m t ng d ng Web trên Internet” đã ph n nào hoàn thành. Ngoài s c g ng
h t mình c a b n thân, chúng em đã nh n đ
tr
Tr
c s khích l r t nhi u t phía nhà
ng, th y cô, gia đình và b n bè.
c h t chúng con xin cám n ba m đã luôn đ ng viên và t o m i đi u ki n
t t đ chúng con h c t p và hoàn thành lu n v n t t nghi p này.
Chúng em xin cám n th y cô tr
ng
i H c Khoa H c T Nhiên đã truy n đ t
nh ng ki n th c quý báu cho chúng em trong su t quá trình h c t p.
chúng em xin bày t lòng chân thành sâu s c đ n th y Mai V n C
t n tình h
c bi t,
ng, ng
i đã
ng d n và giúp đ chúng em trong quá trình làm lu n v n t t nghi p.
Xin cám n t t c b n bè đã và đang đ ng viên, giúp đ chúng tôi trong quá trình
h c t p và hoàn thành t t lu n v n t t nghi p này.
Khoa CNTT
L i nh n xét
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
……………………………………………………………………………………………
Khoa CNTT
Nghiên c u m t s v n đ v b o m t ng d ng Web trên Internet
M CL C
GI I THI U……………………………………………………………………………… 7
T ch c c a lu n v n……………………………………………………………………... 9
PH N TH
Ch
NH T: C S LÍ THUY T………………………………………………. 11
ng 1: Gi i th u
I. KHÁI NI M
NG D NG WEB………………………………..…………………… 13
II. MÔ T HO T
Ch
ng d ng Web…………………………………………………….. 12
NG C A M T
NG D NG WEB………..…………………... 16
ng 2: Các khái ni m, thu t ng liên quan ………………………………………….. 18
I. HACKER……………………………………………………………………………… 19
II. HTTP HEADER……………………………………………………………………... 19
III. SESSION…………………………….……………………………………………… 21
IV. COOKIE…………………………………………………………………………….. 22
V. PROXY………………………………………………………………………………. 25
Ch
ng 3: Gi i thi u s l
c v các k thu t t n công
ng d ng Web………………….. 26
I. KI M SOÁT TRUY C P WEB……………………………………………………… 27
I.1. Thâm nh p h th ng qua c a sau………………………………………………….. 27
II. CHI M H U PHIÊN LÀM VI C…………………………………………………... 27
II.1. n đ nh phiên làm vi c…………………………………………………………… 27
II.2. ánh c p phiên làm vi c…………………………………………………………. 27
III. L I D NG CÁC THI U SÓT TRONG VI C KI M TRA D
LI U NH P H P
L ……….……………………………………………………………………………....... 27
III.1. Ki m tra tính đúng đ n c a d li u b ng ngôn ng phía trình duy t…………....
28
III.2. Tràn b đ m……………..………………………………………………………. 28
III.3. Mã hóa URL……………………………………………………………………..
28
III.4. Kí t Meta……………………………………………………………………….. 28
t qua đ
ng d n……………………………………………………………..
29
III.6. Chèn mã l nh th c thi trên trình duy t n n nhân………………………………..
29
III.7. Thêm câu l nh h th ng………………….……………………………………...
29
III.5. V
Khoa CNTT
Nghiên c u m t s v n đ v b o m t ng d ng Web trên Internet
III.8. Chèn câu truy v n SQL…………………….……………………………………
30
III.9. Ngôn ng phía máy ch ………………................................................................
30
III.10. Kí t r ng….…………………………………………………………………...
30
III.11. Thao tác trên tham s truy n…………………………………………………...
30
IV.
L THÔNG TIN……………………………………………………………….
31
V. T
CH I D CH V ………………….……………………………………………..
31
PH N TH
HAI: CÁC K THU T T N CÔNG VÀ B O M T
NG D NG WEB.. 33
ng 4: Thao tác trên tham s truy n…………………………………………………
34
I. THAO TÁC TRÊN URL……………………………………………………………..
35
I.1. Khái ni m………………………………………………………………………….
35
Ch
I.2. M t s bi n pháp kh c ph c………………………………………………………. 36
II. THAO TÁC TRÊN BI N N FORM………………………………………………. 36
II.1. Khái ni m………………………………………………………………………… 36
II.2. M t s bi n pháp kh c ph c……………………………………………………...
38
III. THAO TÁC TRÊN COOKIE………………………………………………………
39
III.1. Khái ni m ……………………………………………………………………….
39
III.2. M t s bi n pháp kh c ph c……………………………………………………..
40
IV. THAO TÁC TRONG HTTP HEADER……………………………………………. 41
IV.1. Khái ni m………………………………………………………………………..
41
IV.2. M t s bi n pháp kh c ph c…………………………………………………….. 42
Ch
ng 5: Chèn mã l nh th c thi trên trình duy t n n nhân (Cross Side Scripting)……. 43
I. K THU T T N CÔNG CROSS-SITE SCRIPTING (XSS)………………………... 44
NG PHÁP T N CÔNG XSS TRUY N TH NG…………………………...
46
III. M T S WEBSITE TÌM TH Y L H NG XSS………………………………...
50
IV. T N CÔNG XSS B NG FLASH………………………………………………….
51
V. CÁCH PHÒNG CH NG……………………………………………………………
54
II. PH
Ch
ng 6: Chèn câu truy v n SQL (SQL Injection)……………………………………. 56
I. KHÁI NI M SQL INJECTION……………………………………………………...
57
II. GI I THI U MÔ HÌNH C S
57
D
LI U………………………………………...
Khoa CNTT
Nghiên c u m t s v n đ v b o m t ng d ng Web trên Internet
III. CÁC CÁCH T N CÔNG………………………………………………………….
58
III.1. K thu t t n công SQL Injection………………………………………………...
58
III.2. T n công d a vào câu l nh SELECT……………………………………………
60
III.3. T n công d a vào câu l nh HAVING…………………………………………...
62
III.4. T n công d a vào câu l nh k t h p UNION……………………………………
62
III.5. T n công d a vào l nh INSERT………………………………………………...
69
III.6. T n công d a vào STORED PROCEDURE……………………………………
70
III.7. Nâng cao………………………………………………………………………...
70
III.7.1. Chu i kí t không có d u nháy đ n………………………………………….
70
III.7.2. T n công 2 t ng………………………………………………………………
71
III.7.3. Tránh s ki m soát…………………………………………………………...
74
III.7.4. Dùng Extended Stored Procedure……………………………………………
75
III.7.4.1. Dùng Extended Stored Procedure có s n trong h th ng SQL Server…...
75
III.7.4.2. Dùng Extended Stored Procedure t t o………………………………….
76
III.7.4.3. Nh p t p tin v n b n vào b ng……………………………………………
77
IV. CÁCH PHÒNG CH NG…………………………………………………………
77
IV.1. Ki m tra d li u………………………………………………………………..
78
IV.2. Khoá ch t SQL Server (SQL Server Lockdown)……………………………...
81
ng 7: Chi m h u phiên làm vi c (Session Management)…………………………
83
I. T NG QUAN V SESSION ID……………………………………………………..
84
II. N
NH PHIÊN LÀM VI C……………………………………………………...
85
II.1. T n công Session ID trên tham s URL…………………………………………
88
II.2. T n công Session ID trong bi n n form………………………………………...
89
II.3. T n công Session ID trong cookie……………………………………………….
89
II.4. Cách phòng ch ng……………………………………………………………….
91
III. ÁNH C P PHIÊN LÀM VI C…………………………………………………..
92
III.1. T n công ki u d đoán phiên làm vi c (Prediction sessionID)…………………
93
III.2. T n công ki u vét c n phiên làm vi c (Brute force ID)………………………...
93
III.3. T n công ki u dùng đo n mã đ đánh c p phiên làm vi c……………………...
94
Ch
Khoa CNTT
Nghiên c u m t s v n đ v b o m t ng d ng Web trên Internet
III.4. Cách phòng ch ng……………………………………………………………….
94
III.5. S khác bi t gi a đánh c p phiên làm vi c (session hijacking) và n đ nh phiên
làm vi c (session fixation)……………………………………………………………...
94
ng 8: Tràn b đ m (Buffer Overflow)……………………………………………..
97
I. KHÁI NI M………………………………………………………………………….
98
II. S
99
Ch
T CH C C A B NH ………………………………………………….
II.1. Stack……………………………………………………………………………...
100
II.2. Push và Pop………………………………………………………………………
101
II.3. Cách làm vi c c a hàm…………………………………………………………..
102
II.4. Shell code………………………………………………………………………...
104
NG D NG WEB……………….
106
IV. CÁC CÁCH PHÒNG CH NG…………………………………………………….
106
III. M T S CÁCH GÂY TRÀN B
Ch
M QUA
ng 9: T ch i d ch v (DoS)……………………………………………………….
108
I. KHÁI NI M………………………………………………………………………….. 109
II. NH NG KH N NG B T N CÔNG B NG DOS………………………………. 109
III. CÁC K THU T T N CÔNG……………………………………………………..
110
III.1. Khái ni m v Tcp b t tay ba chi u………………………………………………
110
III.2. L i d ng TCP th c hi n ph
ng pháp SYN flood truy n th ng………………..
112
III.3. T n công vào b ng thông………………………………………………………..
113
III.3.1. Ki u t n công th 1…………………………………………………………..
113
III.3.2. Ki u t n công th 2…………………………………………………………..
113
III.4. Ki u t n công vào tài nguyên h th ng………………………………………….
117
IV. BI N PHÁP PHÒNG CH NG…………………………………………………….
117
ng 10: M t s k thu t t n công khác……………………………………………...
119
I. MÃ HÓA URL (URL Encoding) ……………………………………………………
120
I.1. Khái ni m…………………………………………………………………………
120
I.2. M t s bi n pháp phòng ch ng…………………………………………………...
121
Ch
NG D N…………………………………………
121
II.1. Khái ni m………………………………………………………………………..
121
II. KI U T N CÔNG V
T
Khoa CNTT
Nghiên c u m t s v n đ v b o m t ng d ng Web trên Internet
II.2. M t s bi n pháp phòng ch ng…………………………………………………..
122
R NG…………………………………………...
123
III.1. Khái ni m………………………………………………………………………..
123
III.2. M t s bi n pháp phòng ch ng………………………………………………….
123
III. T N CÔNG D A VÀO KÍ T
PHÍA TRÌNH CH ………………………………………………….
123
IV.1. Khái ni m………………………………………………………………………..
123
IV.2. Cách t n công……………………………………………………………………
125
IV.3. Bi n pháp phòng ch ng…………………………………………………………
125
IV. NGÔN NG
Ch
ng 11: T ng k t quá trình t n công c a Hacker…………………………………...
127
M C H T NG C A M C TIÊU…………………
128
NG D NG WEB……………………………………………………
131
III. T N CÔNG………………………………………………………………………..
132
I. THU TH P THÔNG TIN
II. KH O SÁT
ng 12: T ng k t các bi n pháp phòng ch ng……………………………………...
134
I. V I NH NG NHÀ QU N TR M NG……………………………………………
135
II. V I NH NG NHÀ THI T K
NG D NG WEB……………………………….
137
NG D NG WEB……………………………………...
139
NG TRÌNH WEB CHECKER………………………………..
140
Ch
III. V I NG
PH N TH
IS
D NG
BA: CH
Ch
ng 13: Ch
ng trình Web Checker………………………………………………..
141
I.
C T CH
NG TRÌNH WEB CHECKER……………………………………..
142
I.1. T ng quan………………………………………………………………………...
142
I.2. Yêu c u…………………………………………………………………………...
142
I.2.1. Yêu c u ch c n ng…………………………………………………………….
142
I.2.1. Yêu c u phi ch c n ng………………………………………………………...
143
NG TRÌNH WEB CHECKER………………………………..
143
ng trình Web Checker…………………………………………...
143
II. KI N TRÚC CH
II.1. Ki n trúc ch
ng trình v i trình ch Web………………………………….
144
T…………………………………………………………………………...
145
III.1. Ngôn ng cài đ t………………………………………………………………..
145
ng pháp cài đ t…………………………………………………………….
145
II.2. Giao ti p gi a ch
III. CÀI
III.2. Ph
Khoa CNTT
Nghiên c u m t s v n đ v b o m t ng d ng Web trên Internet
III.2.1. S d ng mô hình giao di n d ng Dialog…………………………………….
145
III.2.2. S d ng ActiveX Control (Microsoft Web Browser)……………………….
145
III.2.3. S d ng giao di n l p trình Window Socket 2………………………………
146
III.2.4. M t s l p và hàm chính đ
ng trình………………….
146
ng trình và cách s d ng……………………………………………
151
III.3. Mô t ch
c cài đ t trong ch
ng trình………………………………………………………
151
III.3.2. Cách s d ng………………………………………………………………...
152
III.3.1. Màn hình ch
IV. ÁNH GIÁ CH
NG TRÌNH……………………………………………………
IV.1. Nh ng v n đ đ t đ
153
c………………………………………………………..
153
IV.2. Nh ng v n đ h n ch …………………………………………………………
153
K T LU N……………………………………………………………………………...
155
C…………………………………………………….
156
NG PHÁT TRI N…………………………………………………………….
157
L C………………………………………………………………………………..
158
I. NH NG V N
II. H
PH
T
Khoa CNTT
Nghiên c u m t s v n đ v b o m t ng d ng Web trên Internet
GI I THI U
Ngày nay, khi Internet đ
c ph bi n r ng rãi, các t ch c, cá nhân đ u có nhu c u
gi i thi u thông tin c a mình trên xa l thông tin c ng nh th c hi n các phiên giao
d ch tr c tuy n. V n đ n y sinh là khi ph m vi ng d ng c a các ng d ng Web ngày
càng m r ng thì kh n ng xu t hi n l i và b t n công càng cao, tr thành đ i t
cho nhi u ng
ng
i t n công v i các m c đích khác nhau. ôi khi, c ng ch đ n gi n là đ
th tài ho c đùa b n v i ng
i khác.
Cùng v i s phát tri n không ng ng c a Internet và các d ch v trên Internet, s l
các v t n công trên Internet c ng t ng theo c p s nhân. Trong khi các ph
ng
ng ti n
thông tin đ i chúng ngày càng nh c nhi u đ n nh ng kh n ng truy nh p thông tin c a
Internet, thì các tài li u chuyên môn b t đ u đ c p nhi u đ n v n đ b o đ m và an
toàn d li u cho các máy tính đ
c k t n i vào m ng Internet.
Theo s li u c a CERT (Computer Emegency Response Team - "
tính"), s l
ng các v t n công trên Internet đ
i c p c u máy
c thông báo cho t ch c này là ít h n
200 vào n m 1989, kho ng 400 vào n m 1991, 1400 vào n m 1993, và 2241 vào n m
1994, và n m 2001 là 5315 v .
Nh ng v t n công này nh m vào t t c các máy tính có m t trên Internet, các máy tính
c a t t c các công ty l n nh AT&T, IBM, các tr
ng đ i h c, các c quan nhà n
c,
các t ch c quân s , nhà b ng... M t s v t n công có quy mô kh ng l (có t i
100.000 máy tính b t n công). H n n a, nh ng con s này ch là ph n n i c a t ng
b ng. M t ph n r t l n các v t n công không đ
-Trang 7-
c thông báo, vì nhi u lý do, trong đó
Khoa CNTT
Nghiên c u m t s v n đ v b o m t ng d ng Web trên Internet
có th k đ n n i lo b m t uy tín, ho c đ n gi n nh ng ng
i qu n tr h th ng không
hay bi t nh ng cu c t n công đang nh m vào h th ng c a h .
i n hình là cu c t n công vào ph n m m th
ng m i c a IBM tháng 3/2001, hai
hacker đã tìm th y l h ng trên ng d ng mà b t c ai v i m t trình duy t Web c ng
có th l y tài kho n c a ng
Không ch s l
i dùng, th m chí c ng
i qu n tr .
ng các cu c t n công t ng lên nhanh chóng, mà các ph
ng pháp t n
công ngày càng tinh vi và có t ch c. M t khác, vi c qu n tr các h th ng m ng đòi
h i nhà qu n tr h th ng có ki n th c và kinh nghi m v h th ng m ng ch c ch n,
do đó s y u kém trong qu n lý s t o nhi u đi u ki n cho các hacker khai thác.
C ng theo CERT, nh ng cu c t n công th i k 1988-1989 ch y u là đoán tên ng
s d ng-m t kh u (UserID/password) ho c s d ng m t s l i c a các ch
i
ng trình và
h đi u hành (security hole) làm vô hi u h th ng b o v , tuy nhiên các cu c t n công
vào th i gian g n đây còn bao g m c các thao tác nh gi m o đ a ch IP, theo dõi
thông tin truy n qua m ng, chi m các phiên làm vi c t xa (telnet ho c rlogin), cài
trojan hay worm đ ki m soát hay đi u khi n máy tính…vì th , nhu c u b o v thông
tin trên Internet là c n thi t nh m m c đích b o v d li u, b o v thông tin ng
i dùng
và b o v h th ng.
Khi nói đ n v n đ b o m t, h u h t các chuyên gia b o m t đ u chú tr ng đ n s an
toàn c a h th ng m ng và h đi u hành.
đ
b o v cho h th ng, ph
ng pháp th
ng
c ch n là s d ng firewall. Tuy nhiên, theo tuyên b c a CSI/FBI : 78% n i b h i
có s d ng firewall và 59% thì b t n công thông qua Internet, c th h n là theo báo
cáo c a CSI/FBI Computer Crime và Security Survey thì t ng s thi t h i do nh ng
ng d ng Web b t n công t
n m 1997 đ n n m 2000 là 626 tri u đôla M .
-Trang 8-
Khoa CNTT
Nghiên c u m t s v n đ v b o m t ng d ng Web trên Internet
V i nh ng công c t đ ng tìm l h ng tuy giúp r t nhi u cho nh ng nhà l p trình
Web nh ng v n không th ng n ch n toàn b vì công ngh Web đang phát tri n nhanh
chóng (ch y u chú tr ng đ n y u t th m m , y u t t c đ …) nên d n đ n nhi u
khuy t đi m m i phát sinh. S t n công không n m trong khuôn kh vài k thu t đã
phát hi n, mà linh đ ng và t ng lên tùy vào nh ng sai sót c a nhà qu n tr h th ng
c ng nh c a nh ng ng
Lu n v n đ
i l p trình ng d ng.
c th c h ên v i m c đích tìm hi u, phân tích các l h ng b o m t trong
ng trình minh h a) đ qua đó đ xu t các ph
các ng d ng web (cùng v i ch
s a ch a. Song song đó, lu n v n còn th c hi n m t ch
ng án
ng trình “T đ ng phát hi n
l h ng trên ng d ng Web” giúp ích cho nh ng nhà l p trình Web ít kinh nghi m
tránh nh ng sai sót trong quá trình t o các ng d ng.
T ch c c a lu n v n
Lu n v n g m 13 ch
ng chia thành 3 ph n:
Ph n th nh t: C
LÍ THUY T
S
Ph n này g m có 3 ch
ng:
+ Ch
ng 1 : Gi i thi u v
ng d ng Web
+ Ch
ng 2 : M t s khái ni m, thu t ng liên quan.
+ Ch
ng 3: S l
c các k thu t t n công ng d ng Web
Ph n th hai:CÁC K THU T T N CÔNG VÀ BI N PHÁP PHÒNG CH NG
Ph n này g m có 9 ch
ng t ch
ng 4 đ n ch
lu n v các k thu t t n công, cu i m i ch
thu t. Ch
ng 12 trong đó 7 ch
ng đ u bàn
ng là bi n pháp phòng ch ng cho t ng k
ng 11 nói v quá trình t n công c a hacker và đ n ch
các bi n pháp phòng ch ng chung nh t.
-Trang 9-
ng 12 là n i dung
Khoa CNTT
Nghiên c u m t s v n đ v b o m t ng d ng Web trên Internet
Ph n th ba : CH
Là g m ch
NG TRÌNH “WEB CHECKER”
ng cu i trình bày, gi i thích v ch
K t thúc lu n v n là ph n k t lu n, tóm l
h
ng phát tri n trong t
ng trình
c l i nh ng v n đ đã trình bày và m t s
ng lai và danh m c các tài li u tham kh o.
-Trang 10-
Khoa CNTT
Ph n I: C s lý thuy t
PH N TH
C
S
NH T
LÍ THUY T
-Trang 11-
Khoa CNTT
Ch
ng 1: Gi i thi u
ng d ng Web
Ch
GI I THI U
ng 1
NG D NG WEB
N i dung:
I.
Khái ni m v
ng d ng Web
II.
Mô t cách ho t đ ng c a m t ng d ng Web
-Trang 12-
Khoa CNTT
Ch
ng 1: Gi i thi u
CH
ng d ng Web
NG 1: GI I THI U
NG D NG WEB
cd
Lu n v n đ
c th c hi n nh m tìm hi u v các k thu t t n công trang Web và đ ra
cách phòng ch ng. Do đó, trong ch
ng đ u tiên lu n v n s gi i thi u s l
cm ts
khái ni m c b n và đây chính là n n t ng đ xây d ng n i dung cho nh ng ph n sau.
I. KHÁI NI M
NG D NG WEB
ng d ng Web là m t ng d ng ch /khách s d ng giao th c HTTP đ t
ng
ng tác v i
i dùng hay h th ng khác.
Trình khách dành cho ng
i s d ng th
ng là m t trình duy t Web nh Internet
Explorer hay Netscape Navigator. C ng có th là m t ch
lý ng
i dùng ho t đ ng nh m t trình duy t t đ ng. Ng
ng trình đóng vai trò đ i
i dùng g i và nh n các
thông tin t trình ch thông qua vi c tác đ ng vào các trang Web. Các ch
ng trình
có th là các trang trao đ i mua bán, các di n đàn, g i nh n e-mail…
T c đ phát tri n các k thu t xây d ng ng d ng Web c ng phát tri n r t nhanh.
Tr
c đây nh ng
ng d ng Web th
Gateway Interface) đ
ng đ
c xây d ng b ng CGI (Common
c ch y trên các trình ch Web và có th k t n i vào các c s
d li u đ n gi n trên cùng máy ch . Ngày nay ng d ng Web th
Java (hay các ngôn ng t
c vi t b ng
ng t ) và ch y trên máy ch phân tán, k t n i đ n nhi u
ngu n d li u.
M t ng d ng web th
ng đ
ng có ki n trúc g m:
-Trang 13-
Khoa CNTT
Ch
ng 1: Gi i thi u
ng d ng Web
Hình 1.I-1. Ki n trúc m t ng d ng Web
• L p trình bày: L p này có nhi m v hi n th d li u cho ng
i dùng, ngoài ra còn
có th có thêm các ng d ng t o b c c cho trang web.
• L p ng d ng: là n i x lý c a ng d ng Web. Nó s x lý thông tin ng
i dùng
yêu c u, đ a ra quy t đ nh, g i k t qu đ n “l p trình bày”. L p này th
đ
c cài đ t b ng các k
ColdFusion, đ
thu t l p trình nh
ng
CGI, Java, .NET , PHP hay
c tri n khai trên các trình ch nh IBM WebSphere, WebLogic,
Apache, IIS…
• L p d li u: th
ng là các h qu n tr d li u (DBMS) ch u trách nhi m qu n lý
các file d li u và quy n s d ng.
Mô hình hóa ho t đ ng c a m t ng d ng Web:
-Trang 14-
Khoa CNTT
Ch
ng 1: Gi i thi u
ng d ng Web
Hình 1.I-2. Mô hình ho t đ ng c a m t ng d ng Web
Trong đó:
• Trình khách ( hay còn g i là trình duy t): Internet Explorer, Netscap Navigator
• Trình ch : Apache, IIS, ….
• H qu n tr c s d li u: SQL Server, MySQL, DB2, Access….
Bên c nh đó, m t gi i pháp dùng đ b o v m t h th ng m ng th
là b c t
ng đ
c s d ng
ng l a, nó có vai trò nh là l p rào ch n bên ngoài m t h th ng m ng, vì
ch c n ng chính c a firewall là ki m soát lu ng thông tin gi a các máy tính. Có th
xem firewall nh m t b l c thông tin, nó xác đ nh và cho phép m t máy tính này có
đ
c truy xu t đ n m t máy tính khác hay không, hay m t m ng này có đ
xu t đ n m ng kia hay không.
Ng
i ta th
ng dùng firewall vào m c đích:
• Cho phép ho c c m nh ng d ch v truy xu t ra ngoài.
-Trang 15-
c truy
Khoa CNTT
Ch
ng 1: Gi i thi u
ng d ng Web
• Cho phép ho c c m nh ng d ch v t bên ngoài truy nh p vào trong.
• Ki m soát đ a ch truy nh p, c m đ a ch truy nh p.
Firewall ho t đ ng d a trên gói IP do đó ki m soát vi c truy nh p c a máy ng
is
d ng
II.MÔ T HO T
NG C A M T
NG D NG WEB
u tiên trình duy t s g i m t yêu c u (request) đ n trình ch Web thông qua các
l nh c b n GET, POST… c a giao th c HTTP, trình ch lúc này có th cho th c thi
m t ch
ng trình đ
c xây d ng t nhi u ngôn ng nh Perl, C/C++… ho c trình
ch yêu c u b di n d ch th c thi các trang ASP, JSP… theo yêu c u c a trình khách.
Tùy theo các tác v c a ch
ng trình đ
c cài đ t mà nó x lý, tính toán, k t n i đ n
c s d li u, l u các thông tin do trình khách g i đ n…và t đó tr v cho trình
khách 1 lu ng d li u có đ nh d ng theo giao th c HTTP, nó g m 2 ph n:
• Header mô t các thông tin v gói d li u và các thu c tính, tr ng thái trao đ i
gi a trình duy t và WebServer.
• Body là ph n n i dung d li u mà Server g i v Client, nó có th là m t file
HTML, m t hình nh, m t đo n phim hay m t v n b n b t kì.
Theo mô hình
hình 1.I-2, v i firewall, lu ng thông tin gi a trình ch và trình khách
là lu ng thông tin h p l . Vì th , n u hacker tìm th y vài l h ng trong ng d ng
Web thì firewall không còn h u d ng trong vi c ng n ch n hacker này. Do đó, các k
thu t t n công vào m t h th ng m ng ngày nay đang d n t p trung vào nh ng s
su t (hay l h ng) trong quá trình t o ng d ng c a nh ng nhà phát tri n Web h n là
t n công tr c ti p vào h th ng m ng, h đi u hành. Tuy nhiên, hacker c ng có th
-Trang 16-
Khoa CNTT
Ch
ng 1: Gi i thi u
ng d ng Web
l i d ng các l h ng Web đ m r ng s t n công c a mình vào các h th ng không
liên quan khác.
-Trang 17-
Khoa CNTT
Ch
ng 2: Các khái ni m, thu t ng liên quan
Ch
ng 2
CÁC KHÁI NI M, THU T NG
N i dung:
I.
Hacker
II.
HTTP Header
III. Phiên làm vi c (Session)
IV. Cookie
V.
Proxy
-Trang 18-
LIÊN QUAN
Khoa CNTT
Ch
ng 2: Các khái ni m, thu t ng liên quan
CH
NG 2:
CÁC KHÁI NI M, THU T NG
LIÊN QUAN
cd
I. HACKER
Hacker là m t thu t ng dùng đ chuyên ch nh ng k phá ho i các h th ng m ng…
Hacker th
ng là nh ng chuyên gia v máy tính. Hacker không t o ra các k h cho
h th ng, nh ng hacker l i là nh ng ng
i am hi u v h đi u hành, h qu n tr d
li u, các ngôn ng l p trình…H s d ng ki n th c c a mình trong vi c tìm tòi và
khai thác các l h ng c a h th ng m ng. M t s hacker ch d ng l i vi c phát hi n
và thông báo l i tìm đ
h đ
c cho nh ng nhà b o m t hay ng
i phát tri n ch
ng trình,
c xem nh là WhiteHat (Hacker nón tr ng). M t s hacker d a vào nh ng l
h ng th c hi n vi c khai thác trái phép nh m m c đích phá ho i hay m u l i riêng,
nh ng ng
i này b xem nh là BlackHat (Hacker nón đen).
Vì tính ch t ph bi n c a thu t ng
hacker, nên trong ph n trình bày, lu n v n s s
d ng “hacker” thay cho “k t n công”.
II.HTTP HEADER
HTTP header là ph n đ u (header) c a thông tin mà trình khách và trình ch g i cho
nhau. Nh ng thông tin trình khách g i cho trình ch đ
c g i là HTTP requests (yêu
c u) còn trình ch g i cho trình khách là HTTP responses (tr l i). Thông th
ng,
m t HTTP header g m nhi u dòng, m i dòng ch a tên tham s và giá tr . M t s
-Trang 19-
Khoa CNTT
Ch
ng 2: Các khái ni m, thu t ng liên quan
tham s có th đ
c dùng trong c header yêu c u và header tr l i, còn s khác thì
ch đu c dùng riêng trong t ng lo i. Ví d :
• Header yêu c u:
GET /tintuc/homnay.asp HTTP/1.1
Accept: */*
Accept-Language: en-us
Connection: Keep-Alive
Host: localhost
Referer: http://localhost/lienket.asp
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
Accept-Encoding: gzip, deflate
o
Dòng đ u là dòng yêu c u cho bi t ph
ng th c yêu c u (GET ho c
POST), đ a ch yêu c u (/tintuc/homnay.asp) và phiên b n HTTP
(HTTP/1.1)..
o Ti p theo là các tham s . Ch ng h n nh :
̇ Accept-Language: Cho bi t ngôn ng dùng trong trang web.
̇ Host: Cho bi t đ a ch c a máy ch .
̇ Referer: Cho bi t đ a ch c a trang web tham chi u t i.
o Header c a HTTP request s k t thúc b ng m t dòng tr ng.
• Header tr l i:
HTTP/1.1 200 OK
Server: Microsoft-IIS/5.0
Date: Thu, 13 Jul 2000 05:46:53 GMT
-Trang 20-
Khoa CNTT
Ch
ng 2: Các khái ni m, thu t ng liên quan
Content-Length: 2291
Content-Type: text/html
Set-Cookie: ASPSESSIONIDQQGGGNCG=LKLDFFKCINFLDMFHCBCBMFLJ;
path=/
Cache-control: private
<HTML>
<BODY>
...
o Dòng đ u là dòng tr ng thái, đ cho bi t phiên b n HTTP đ
c dùng
(HTTP/1.1), mã tr ng thái (200) và tr ng thái (OK).
o Ti p theo là các tham s .
o Ti p theo là m t dòng tr ng đ báo hi u k t thúc header, ti p theo là ph n
thân c a HTTP response.
Danh sách tham s c a HTTP header đ
c trình bày trong ph l c A
III. SESSION
HTTP là giao th c h
ng đ i t
ng t ng quát, phi tr ng thái, ngh a là HTTP không
l u tr tr ng thái làm vi c gi a trình duy t v i trình ch . S thi u sót này gây khó
kh n cho m t s
ng d ng Web, b i vì trình ch
không bi t đ
c tr
c đó trình
duy t đã có nh ng tr ng thái nào. Vì th , đ gi i quy t v n đ này, ng d ng Web
đ a ra m t khái ni m phiên làm vi c (Session). Còn SessionID là m t chu i đ ch ng
th c phiên làm vi c. M t s trình ch
s cung c p m t SessionID cho ng
khi h xem trang web trên trình ch .
duy trì phiên làm vi c thì sessionID th
ng đ
-Trang 21-
c l u vào :
i dùng
Khoa CNTT
Ch
ng 2: Các khái ni m, thu t ng liên quan
• Bi n trên URL
• Bi n n form
• Cookie
Phiên làm vi c ch t n t i trong m t kho ng th i gian cho phép, th i gian này đ
c
c u hình qui đ nh t i trình ch ho c b i ng d ng th c thi. Trình ch s t đ ng gi i
phóng phiên làm vi c đ khôi ph c l i tài nguyên c a h th ng.
IV. COOKIE
Cookie là nh ng ph n d li u nh có c u trúc đ
duy t c a ng
i dùng.
Các cookie đ
c l u tr d
c chia s gi a trình ch và trình
i nh ng file d li u nh d ng text, đ
đ l u tr /truy tìm/nh n bi t các thông tin v ng
c ng d ng t o ra
i dùng đã ghé th m trang Web và
nh ng vùng mà h đi qua trong trang. Nh ng thông tin này có th bao g m tên/đ nh
danh ng
i dùng, m t kh u, s thích, thói quen...cookie đ
c trình duy t c a ng
i
dùng ch p nh n l u trên đ a c ng c a máy mình, tuy nhiên không ph i lúc nào trình
duy t c ng h tr cookie, mà còn tùy thu c vào ng
i dùng có ch p nh n chuy n l u
tr đó hay không.
nh ng l n truy c p sau đ n trang Web đó, ng d ng có th dùng l i nh ng thông
tin trong cookie (nh
Messenger!...) mà ng
thông tin liên quan đ n vi c đ ng nh p vào Yahoo
i dùng không ph i làm l i thao tác đ ng nh p hay ph i cung
c p l i các thông tin khác.
Cookie đ
c phân làm 2 lo i secure/non-secure và persistent/non-persistent do đó ta
s có 4 ki u cookie là:
-Trang 22-