Tải bản đầy đủ (.pdf) (169 trang)

Nghien cuu mot so van de ve bao mat ung dung web tren intern

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.99 MB, 169 trang )

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-


×