
M Đ UỞ Ầ
Ngày nay, khi Internet đ c ph bi n r ng rãi ,các t ch c đ 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à vi ph m 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 ng cho nhi u ng i t n công v i các m c đích khác nhau. Đôi khố ượ ề ườ ấ ớ ụ i 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 ng d ch v t n công trên Internet cũng tăng theo c p s nhân. Trong khi cácượ ị ụ ấ ấ ố
ph ng ti n thông tin đ i chúng ngày càng nh c nhi u đ n nh ng kh năng truyươ ệ ạ ắ ề ế ữ ả
c p thông tin c a Internet, thì các tài li u chuyên môn b t đ u đ c p đ n nhi uậ ủ ệ ắ ầ ề ậ ế ề
v n đ b o đ m và an toàn d li u cho các máy tính k t n i vào m ng Internet.ấ ề ả ả ữ ệ ế ố ạ
Vì th 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 là c n thi t nh m m c đích b o v d li u, b o v thông tin doanhạ ầ ế ằ ụ ả ệ ữ ệ ả ệ
nghi p, ng i dùng và b o v h th ng.ệ ườ ả ệ ệ ố
Tuy đã có nhi u c g ng t các nhà l p trình Web nh ng v n không th đ m b oề ố ắ ừ ậ ư ẫ ể ả ả
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 m t vài khuôn kh 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 i l p trình ng d ng.ườ ậ ứ ụ
Vì v y, đ tài này đ c th c hi n v i m c đích tìm hi u, phân tích các l h ngậ ề ượ ự ệ ớ ụ ể ỗ ổ
b o m t trong ả ậ các ng d ng Web. ứ ụ
* M c tiêu và nhi m v ụ ệ ụ
- Tìm hi u các v n đ liên quan đ n ho t đ ng c a m t ng d ng Web.ể ấ ề ế ạ ộ ủ ộ ứ ụ
- Tìm hi u các k thu t t n công ng d ng Web c b n nh : XSS, Session, DOS.ể ỹ ậ ấ ứ ụ ơ ả ư
- Tìm hi u và nghiên c u c th k thu t t n công chèn câu truy v n SQLể ứ ụ ể ỹ ậ ấ ấ
Injection và các gi i pháp phòng ng a.ả ừ
- Xây d ng ng d ng Web Demo th hi n các cách t n công c a k thu t SQLự ứ ụ ể ệ ấ ủ ỹ ậ
Injection và đ a ra gi i pháp fix các l h ng trong ch ng trình.ư ả ỗ ổ ươ
- K t qu th c hi n: n m rõ b n ch t và cách th c t n công vào ng d ng Web,ế ả ự ệ ắ ả ấ ứ ấ ứ ụ
áp d ng vào th c t đ h n ch th p nh t kh năng b t n công các ng d ngụ ự ế ể ạ ế ấ ấ ả ị ấ ứ ụ
Web s tri n khai.ẽ ể
* Đ i t ng và ph m vi nghiên c uố ượ ạ ứ
- C s lý thuy t liên quan c a ho t đ ng ng d ng Web.ở ở ế ủ ạ ộ ứ ụ
- Các mô hình t n công đ c tr ng vào ng d ng Web.ấ ặ ư ứ ụ
-1-

- K thu t v t qua c a s đăng nh p.ỹ ậ ượ ử ổ ậ
- K thu t l i d ng các câu l nh Select, Insert.ỹ ậ ợ ụ ệ
- K thu t d a vào các Stored Procedure.ỹ ậ ự
- Các gi i pháp phòng ng a m c qu n tr và ng i l p trình ng d ng.ả ừ ở ứ ả ị ườ ậ ứ ụ
- Ngôn ng ASP.NET, SQL Server 2005.ữ
* Ph ng pháp nghiên c u ươ ứ
- T ng h p tìm hi u, nghiên c u t các t li u liên quan.ổ ợ ể ứ ừ ư ệ
- Phân tích, đánh giá các k thu t t n công. Đ a ra các gi i pháp phòng ng a cácỹ ậ ấ ư ả ừ ở
m c.ứ
- Thi t k table c s d li u, xây d ng ng d ng Web Demo th hi n các cáchế ế ơ ở ữ ệ ự ứ ụ ể ệ
t n công c a SQL Injection.ấ ủ
* Ý nghĩa th c ti n c a đ tàiự ễ ủ ề
- V m t lý thuy t, đ tài th hi n rõ các cách t n công c b n th ng đ cề ặ ế ề ể ệ ấ ơ ả ườ ượ
hacker s d ng đ t n công vào các ng d ng Web t tr c đ n nay, và có th sử ụ ể ấ ứ ụ ừ ướ ế ể ử
d ng ti p trong th i gian dài trong t ng lai.ụ ế ờ ươ
- V m t th c ti n, v i các cách t n công c a hacker nh đã tìm hi u, nghiên c uề ặ ự ể ớ ấ ủ ư ể ứ
trong báo cáo này, n u áp d ng t t các ph ng pháp phòng ng a trong đ tài nêu raế ụ ố ươ ừ ề
s góp ph n nâng cao kh năng b o v các ng d ng Web tr c nguy c t n côngẽ ầ ả ả ệ ứ ụ ướ ơ ấ
c a k x u.ủ ẽ ấ
* B c c c a báo cáo ố ụ ủ đ án t t nghi pồ ố ệ
Báo cáo t t nghi p đ c chia thành 3 ch ng:ố ệ ượ ươ
- Ch ng 1:ươ T NG QUAN V WEB VÀ CÁC NGUY C T N CÔNG NGỔ Ề Ơ Ấ Ứ
D NG WEBỤ
- Ch ng 2:ươ M T S PH NG PHÁP T N CÔNG VÀO TRANG WEB VÀỘ Ố ƯƠ Ấ
CÁCH PH NG CH NGỒ Ố
- Ch ng 3:ươ XÂY D NG NG D NG DEMO SQL INJECTIONỰ Ứ Ụ
-2-

CH NG 1ƯƠ
T NG QUAN V WEB VÀ CÁC NGUY C T N CÔNGỔ Ề Ơ Ấ
NG D NG WEBỨ Ụ
1.1 T NG QUAN V WEBỔ Ề
1.1.1 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 tác v i ng 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 ng trình đóngể ộ ươ
vai trò đ i lý ng i dùng ho t đ ng nh m t trình duy t t đ ng. Ng 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-mial…ươ ể ổ ể ử ậ
T c đ phát tri n c a 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 ng đ c xây d ng b ng CGIấ ướ ữ ứ ụ ườ ượ ự ằ
(Common Gateway Interface) đ 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 ng đ c vi t b ng Java và ch y trên máy ch phân tán, k t n i đ n nhi uườ ượ ế ằ ạ ủ ế ố ế ề
ngu n d li u.ồ ữ ệ
Dù có nhi u bi n th , m t ng d ng Web thông th ng đ c c u trúc nhề ế ể ộ ứ ụ ườ ượ ấ ư
m t ng d ng ba l p:ộ ứ ụ ớ
Hình 1.1 M t s ng d ng web th ng có ki n trúcộ ố ứ ụ ườ ế
-3-

•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ác 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 ng đ c cài đ t b ng các k thu t l p trình nh CGI, Java, NET, PHPườ ượ ặ ằ ỹ ậ ậ ư
hay ColdFusion, đ 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.ả ữ ệ ề ử ụ
Hình 1.2 Mô hình ho t đ ng c a m t ng d ng Webạ ộ ủ ộ ứ ụ
Ki n trúc m t ng d ng Webế ộ ứ ụ
Trong đó :
- Trình duy t: Internet Explorer, Nétcap 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 g i pháp dùng đ b o v m t h th ng m ng th ng đ cạ ộ ả ể ả ệ ộ ệ ố ạ ườ ượ
s d ng là b c t 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 tinh gi a cácố ạ ứ ủ ể ồ ữ
máy tính. Có th xem là firewall nh m t b l c thông tin, nó xác đ nh cho phépể ư ộ ộ ộ ị
-4-

m t máy tính này đ c truy xu t đ n m t máy tính khác hay không, hay m t m ngộ ượ ấ ế ộ ộ ạ
này có đ c truy 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.ặ ấ ữ ị ụ ấ
•Cho phép ho c c m nh ng d ch v t ngoài truy nh p vào trong.ặ ấ ữ ị ụ ừ ậ
•Ki m soát đ a ch truy nh p, c m đ a ch truy nh p.ể ị ỉ ậ ấ ị ỉ ậ
1.1.2 Các v n đ liên quan đ n ng d ng Webấ ề ế ứ ụ
1.1.2.1 Ngu n g c phát tri n ng d ng Webồ ố ể ứ ụ
Các ng d ng Web đ c phát tri n t nhi u ngu n khác nhau, nên các lứ ụ ượ ể ừ ề ồ ỗ
h ng, các l i b o m t cũng r t đa d ng. Tuy v y, các ng d ng Web ch y uổ ỗ ả ậ ấ ạ ậ ứ ụ ủ ế
đ c phát tri n t các ngu n chính sau đây:ượ ể ừ ồ
•Ng i l p trình t phát tri n ng d ng Web (S d ng các ngôn ng k chườ ậ ự ể ứ ụ ử ụ ữ ị
b n đ t o ng d ng, phát tri n r ng rãi mà ít quan tâm đ n quá trình phátả ể ạ ứ ụ ể ộ ế
tri n ng d ng an toàn. Thi u đ i ngũ l p trình v i k năng nh n bi t phátể ứ ụ ế ộ ậ ớ ỹ ậ ế
tri n ng d ng tránh các l i b o m t).ể ứ ụ ỗ ả ậ
•S d ng ng d ng Web t mã ngu n m (Th ng không theo dõi và c pử ụ ứ ụ ừ ồ ở ườ ậ
nh t các b n vá l i b o m t).ậ ả ỗ ả ậ
•Phát tri n ng d ng Web t m t ng d ng m khác (Tr ng h p nàyể ứ ụ ừ ộ ứ ụ ở ườ ợ
th ng không ki m tra l i b o m t ng d ng c tr c khi phát tri n ti p,ườ ể ỗ ả ậ ứ ụ ủ ướ ể ế
nên v n t n t i các l i b o m t).ẫ ồ ạ ỗ ả ậ
1.2.1.2 S phát tri n đa d ng c a ng d ng Webự ể ạ ủ ứ ụ
Ngày nay v i s phát tri n không ng ng c a Internet, các ng d ng Web cũngớ ự ể ừ ủ ứ ụ
phát tri n đa d ng trên nhi u lĩnh v c: C ng thông tin đi n t , báo tin t c đi n t ,ể ạ ề ự ổ ệ ử ứ ệ ử
giao d ch tài chính ngân hàng, th tr ng ch ng khoán, trang thông tin đi n t doanhị ị ườ ứ ệ ử
nghi p,…ệ
1.1.3 Mô t ho t đ ng c a 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 : C,C+ự ộ ươ ượ ự ừ ề ữ ư
+,java… ho c trình ch yêu c u b di n d c th c thi các trang ASP, JSP…theo yêuặ ủ ầ ộ ể ị ự
c u c a trình khách.ầ ủ
-5-

