Xem mẫu

  1. -1- B GIÁO D C VÀ ĐÀO T O Công trình ñư c hoàn thành t i Đ I H C ĐÀ N NG Đ I H C ĐÀ N NG PH M TH HÀ PHƯƠNG Ngư i hư ng d n khoa h c: PGS. TS. Lê Văn Sơn Ph n bi n 1: GS. TS. Nguy n Thanh Th y NGHIÊN C U XÂY D NG GI I PHÁP PHÒNG V NGUY CƠ TRÊN NG D NG WEB Ph n bi n 2: TS. Huỳnh H u Hưng Chuyên ngành: KHOA H C MÁY TÍNH Mã s : 60.48.01 Lu n văn ñư c b o v t i H i ñ ng ch m Lu n văn t t nghi p th c sĩ k thu t h p t i Đ i h c Đà N ng vào ngày 10 tháng 9 năm 2011. TÓM T T LU N VĂN TH C SĨ K THU T * Có th tìm hi u lu n văn t i: - Trung tâm Thông tin - H c li u, Đ i h c Đà N ng Đà N ng - Năm 2011 - Trung tâm H c li u, Đ i h c Đà N ng
  2. -2- -3- M Đ U Ph m vi nghiên c u c a ñ tài là xây d ng gi i pháp phòng v 1. Lý do ch n ñ tài nguy cơ trên ng d ng web, bao g m các gi i pháp m c h th ng Cùng v i s phát tri n không ng ng c a Internet, s lư ng và các gi i pháp m c v n hành ng d ng, ti p ñ n là ñ xu t gi i website và các d ch v ñi kèm cũng tăng lên nhanh chóng. Khi kh pháp trong vi c k t h p s d ng các công c ki m tra l i b o m t năng qu n lý và truy nh p thông tin c a các website càng phát tri n, web. thì càng có nguy cơ m t an toàn d li u cho các website trong quá 4. Phương pháp nghiên c u trình ho t ñ ng. Ph n l n nh ng nguy cơ này xu t phát t các cu c V lý thuy t, tìm hi u ng d ng web, s v n hành c a ng t n công có m c ñích ñ truy c p trái phép vào h th ng nh m khai d ng web và các nguy cơ liên quan ñ n ng d ng web. Ti n hành thác ho c thay ñ i thông tin, ph c v ý ñ c a cá nhân ho c t ch c phân lo i nguy cơ, sau ñó phân tích các nguy cơ ph bi n trên ng nh t ñ nh (g i chung là tin t c). Tuy nhiên, bên c nh ñó cũng còn có d ng web g m nh ng l h ng b o m t nguy h i liên quan ñ n vi c các nguy cơ khách quan khác như h th ng g p s c , ngư i qu n tr khai thác ch c năng c a ng d ng. Qua ñó ñ xu t gi i pháp ki m tra thi u ki n th c v b o m t,… Đ ñ m b o cho s v n hành c a và phòng tránh cho m i nguy cơ. website cũng như b o v nh ng thông tin cá nhân c a ngư i dùng V th c ti n, nghiên c u ñ xu t gi i pháp phòng v nguy cơ trang web, m t v n ñ ñ t ra là c n có gi i pháp b o v an toàn cho trên ng d ng web, g m các gi i pháp m c h th ng và các gi i các website kh i các nguy cơ nói trên. pháp m c v n hành ng d ng. Ti p ñ n là tìm hi u các công c ñã Đư c s ñ ng ý và hư ng d n c a PGS. TS. Lê Văn Sơn, tôi ñư c phát tri n ñ ph c v cho vi c ñánh giá, ki m tra các l i b o ch n th c hi n ñ tài “Nghiên c u xây d ng gi i pháp phòng v nguy m t web. Qua vi c phân tích các ưu/khuy t ñi m c a m i công c , ñ cơ trên ng d ng web” v i mong mu n ñóng góp m t gi i pháp giúp xu t m t gi i pháp t ng th nh m phát huy t i ña m i ưu ñi m c a b o v toàn di n cho website kh i các nguy cơ khách quan cũng như các công c , h n ch thi u sót trong k t qu ñánh giá mà m i công c ch quan trong quá trình v n hành ng d ng web. ñ c l p mang l i. 2. M c ñích nghiên c u 5. Ý nghĩa khoa h c và th c ti n c a ñ tài Lu n văn ñư c th c hi n v i m c ñích nghiên c u các nguy cơ Các k t qu nghiên c u s giúp ngư i l p trình ng d ng web khách quan cũng như ch quan trên ng d ng web. Qua ñó xây d ng và ngư i v n hành trang web thông qua ñó th c hi n quy trình phòng gi i pháp phòng v nguy cơ, ki m tra và kh c ph c các nguy cơ. v nguy cơ cho ng d ng web m t cách t ng th , bao g m vi c ch 3. Đ i tư ng và ph m vi nghiên c u ñ ng phòng tránh nguy cơ, ki m tra s xu t hi n c a các nguy cơ và Đ i tư ng nghiên c u c a ñ tài là các nguy cơ ph bi n liên gi i pháp kh c ph c n u ñã g p ph i các nguy cơ ñó. quan ñ n vi c khai thác ch c năng c a ng d ng web.
  3. -4- -5- 6. C u trúc c a lu n văn CHƯƠNG 1: B c c c a lu n văn ñư c t ch c thành ba chương, có n i KHÁI NI M V NG D NG WEB VÀ CÁC NGUY CƠ dung như sau: TRÊN NG D NG WEB Chương 1: Khái ni m v ng d ng web và các nguy cơ trên N i dung chương này trình bày các khái ni m v ng d ng ng d ng web. Nghiên c u ki n trúc cơ b n và ho t ñ ng c a m t web và các v n ñ liên quan ñ n b o m t ng d ng web. N i dung ng d ng web, các v n ñ liên quan ñ n ho t ñ ng c a ng d ng khái ni m v ng d ng web trình bày ki n trúc cơ b n c a m t ng web. Ti p ñ n, gi i thi u t ng quan v b o m t web: s li u th ng kê d ng web, các thành ph n như l p trình di n, l p ng d ng, l p cơ s v tình hình b o m t, các nguy cơ nh hư ng ñ n b o m t ng d ng d li u, và s giao ti p c a các thành ph n này trong ho t ñ ng c a web và các phương pháp ki m tra l i b o m t web. ng d ng web. Các v n ñ liên quan ñ n ng d ng web trình bày các Chương 2: Phòng v nguy cơ trên ng d ng web. Trình bày khái ni m liên quan ñ n s v n hành c a ng d ng web như giao các nguy cơ ph bi n liên quan ñ n vi c khai thác ch c năng c a ng th c truy n d li u HTTP/HTTPS, giao th c b o m t SSL/TLS, các d ng web, ñ xu t các gi i pháp ki m tra và phòng v cho t ng nguy phương th c truy n d li u GET/POST và s qu n lý phiên (session) cơ. Bên c nh ñó gi i thi u gi i pháp phòng v nguy cơ theo mô hình trong quá trình giao ti p gi a máy khách và máy ch . N i dung b o Defense-In-Depth, qua ñó trình bày hư ng ti p c n và phát tri n c a m t ng d ng web trình bày s li u th ng kê v tình hình b o m t, ñ tài trong vi c xây d ng gi i pháp phòng v nguy cơ trên ng d ng các nguy cơ nh hư ng ñ n b o m t ng d ng web và các phương web. pháp ñư c s d ng ñ ki m tra l i b o m t web. Chương 3: Tri n khai gi i pháp phòng v nguy cơ trên ng 1.1 KHÁI NI M V NG D NG WEB d ng web. N i dung chương này trình bày chi ti t vi c tri n khai xây M t ng d ng web thư ng bao g m m t t p h p các k ch b n d ng gi i pháp phòng v nguy cơ cho ng d ng web m c h th ng (script) cư trú máy ch web (webserver) và tương tác v i cơ s d và m c v n hành ng d ng web. m c h th ng, tri n khai xây li u (database) hay các ngu n n i dung ñ ng khác (dynamic content). d ng mô hình web an toàn. m c v n hành ng d ng, tri n khai quy ng d ng này nhanh chóng ñư c s d ng r ng rãi vì nó cho phép trình ki m soát l i b o m t ng d ng web. Cu i cùng là minh h a nhà cung c p d ch v và khách hàng chia s thông tin theo các n n vi c áp d ng các gi i pháp phòng v nguy cơ trên m t trang web c ñ c l p thông qua cơ s h t ng c a Internet. M t vài ví d v ng th qua vi c ki m tra mô hình web và các l i b o m t trên trang web, d ng web (web application) như: công c tìm ki m, trang mua s m sau ñó ñưa ra gi i pháp phòng v nguy cơ cho trang web. và c ng thông tin ñi n t hay máy ch thư ñi n t (webmail).
  4. -6- -7- 1.1.1 Ki n trúc cơ b n 1.3 B OM T NG D NG WEB M t ng d ng web khi tri n khai s có ba l p như sau: l p 1.3.1 T ng quan tình hình b o m t ng d ng web trình di n, l p ng d ng và l p cơ s d li u. Trong ñó: 1.3.1.1 Thông tin t Zone-H.org - L p trình di n t c là l p nơi mà máy ch ñư c cài ñ t có tác 1.3.1.2 Thông tin t sách tr ng WHID (Web Hacking Incident d ng ph c v các yêu c u v web, hay nói cách khác l p trình di n Database - Cơ s d li u v s c t n công web) chính là máy ch ph c v web. 1.3.1.3 Thông tin t VNCERT - L p ng d ng là nơi các k ch b n hay mã ngu n (có th là 1.3.2 Các nguy cơ trên ng d ng web ASP.NET, PHP, JSP, Perl, Python, ...) phát tri n ra ng d ng web ñó. 1.3.2.1 Phân lo i nguy cơ - L p cơ s d li u (có th là MySQL, SQL Server, Oracle, … ) Khi nghĩ ñ n phòng v nguy cơ cho ng d ng web, ngư i qu n là nơi mà ng d ng lưu tr và thao tác v i d li u c a ng d ng. tr thư ng th c hi n các bi n pháp ch ng l i s t n công c a tin t c. 1.1.2 Ho t ñ ng c a m t ng d ng web Tuy nhiên, nh ng nguy cơ ñe d a ñ n an ninh c a m t ng d ng web Đ u tiên trình khách (hay còn g i là trình duy t như Internet ñ n t nhi u nguyên nhân khách quan, ch quan khác nhau: Explorer, Netscap Navigator,…) s g i m t yêu c u ñ n trình ch - Nh ng th m h a b t ng : bao g m nh ng tác ñ ng ñ n t bên web (Apache, Tomcat, IIS,…) thông qua các l nh cơ b n GET, ngoài, nh hư ng ñ n b o v m c v t lý c a trang web như h a POST,… c a giao th c HTTP/HTTPS. Trình ch lúc này có th cho ho n, bão lũ, ñ ng ñ t, kh ng b , tai n n lao ñ ng,… th c thi m t chương trình ñư c xây d ng t nhi u ngôn ng như - Nh ng s c máy tính: bao g m nh ng tr c tr c v t lý nh Perl, C/C++,… ho c trình ch yêu c u b di n d ch th c thi các trang hư ng ñ n ho t ñ ng c a trang web như s c ngu n ñi n, h ng ph n ASP, JSP,… theo yêu c u c a trình khách và th c hi n các yêu c u c ng, thi t b n i m ng h ng, môi trư ng v n hành thi t b h ng,… như c p nh t, truy v n thông tin trong cơ s d li u,… Sau ñó ng - Nh ng s c vô tình: bao g m nh ng nh hư ng ñ n h th ng d ng web g i thông tin l i cho ngư i dùng qua trình duy t. do y u t con ngư i như nhân viên thi u hi u bi t v b o m t, nhân 1.2 CÁC V N Đ LIÊN QUAN Đ N NG D NG WEB viên lơ ñ nh c u th khi qu n lý h th ng,… 1.2.1 Ngu n g c phát tri n - Nh ng s c có ch ý: bao g m nh ng ho t ñ ng phá ho i, 1.2.2 Giao th c truy n d li u (HTTP/HTTPS) khai thác t n công làm nh hư ng ñ n an ninh c a trang web như t i 1.2.3 Giao th c b o m t (SSL/TLS) ph m máy tính, tình báo công ngh cao, kh ng b công ngh cao, 1.2.4 Phương th c truy n d li u (GET/POST) nhân viên b t mãn v i t ch c, nhân viên gián ñi p bán thông tin ñ 1.2.5 S qu n lý phiên (session) nh n h i l , nhân viên b ñánh l a ñ l y các tài kho n h th ng (hay 1.2.5.1 Session còn g i là k thu t xã h i – sociable engineer),… 1.2.5.2 Cookie
  5. -8- -9- Lo i b các m i ñe d a này ñòi h i ph i t n nhi u th i gian và - Ki m tra h p tr ng: là quá trình ki m tra tr c ti p mã ngu n công s c. V n ñ trư c tiên là c n xây d ng ý th c rõ ràng và ñ y ñ c a ng d ng web ñ tìm ra các l i b o m t. v nh ng hi m h a này, và sau ñó lên k ho ch th c hi n qu n lý và - Ki m tra h p ñen: là phương pháp ki m tra ng d ng t bên phòng tránh r i ro thích h p trư c m i lo i nguy cơ. ngoài, t c là quan sát các d li u ñư c ñ trình ñ n ng d ng và các 1.3.2.2 Các nguy cơ ph bi n nh hư ng ñ n ng d ng web d li u t ng d ng xu t ra mà không c n hi u ñ n ho t ñ ng bên Như ñã trình bày trên, các m i ñe d a nh hư ng ñ n an ninh trong c a ng d ng. c a ng d ng web ñ n t nhi u nguyên nhân khác nhau. M i nguy cơ Các phương pháp ki m tra h p tr ng và h p ñen có th ñư c c n có nh ng bi n pháp phòng tránh c th . Trong khuôn kh c a th c hi n m t cách th công ho c v i s h tr c a các công c t lu n văn này, tôi ñi sâu tìm hi u và ñ xu t gi i pháp phòng v cho ñ ng. Phương pháp ki m tra th công tuy ñòi h i ñ u tư nhi u th i các nguy cơ t n công có ch ý, hay nói cách khác chính là nh ng gian và công s c nhưng giúp ki m soát ch t ch m i l i b o m t khi nguy cơ t n công t phía tin t c, t n công nh m m c tiêu d a vào v n hành ng d ng. Đ tăng cư ng hi u su t c a vi c ki m tra có th vi c khai thác các ñi m y u trong s v n hành c a ng d ng web. s d ng thêm các công c t ñ ng. Tuy nhiên, c n k t h p v i s Các nguy cơ này ñư c phân lo i theo t ng nhóm ch c năng c a ng hi u bi t c a ngư i ki m tra trong quá trình s d ng ñ giúp các công d ng web như sau: c t ñ ng mang l i k t qu chính xác (ñây là khái ni m liên quan - L thông tin nh y c m. ñ n ki m tra h p xám). - Qu n lý xác th c không an toàn. 1.3.3.1 Ki m tra th công - Qu n lý phiên không an toàn. Ki m tra th công là quá trình ki m tra t ng ch c năng c a - Đi u khi n truy c p không an toàn. ng d ng, qua ñó xác ñ nh ñư c các ñi m y u b o m t c a ng d ng - Chèn d li u không an toàn (d n ñ n l i XSS, SQLi,…). ñ có gi i pháp kh c ph c phù h p. Các công c h tr cho vi c ki m - T n công t ch i d ch v (DOS). tra th công l i b o m t: BURP, PAROS, WEBSCARAB,… B ng Trên ñây là các nguy cơ r t ph bi n và nh hư ng tr c ti p vi c s d ng các công c này ñ quan sát ho t ñ ng c a ng d ng ñ n an toàn c a ng d ng, ñòi h i ph i có s nghiên c u, tìm ra gi i trong vi c th c hi n các request/response, ngư i ki m tra có th phát pháp ñ ki m tra và ch ñ ng phòng v cho ng d ng trư c các nguy hi n l i c a ng d ng ñ qua ñó có bi n pháp kh c ph c l i cho ng cơ. d ng. 1.3.3 Các phương pháp ki m tra 1.3.3.2 Ki m tra b ng công c t ñ ng Các phương pháp ki m tra l i b o m t trên ng d ng web ñư c Các công c t ñ ng ñư c phát tri n ñ h tr cho vi c ki m dùng ph bi n là phương pháp ki m tra h p tr ng và phương pháp tra th công các l i b o m t trên ng d ng web. Các công c này r t ki m tra h p ñen. ña d ng, có th là mã ngu n m ho c tính phí v i các ưu/khuy t ñi m
  6. - 10 - - 11 - khác nhau. Nh ng công c này s t ñ ng quét ng d ng và phát CHƯƠNG 2: hi n l i, sau ñó tr v các báo cáo l i. Ngư i ki m tra lúc này c n PHÒNG V NGUY CƠ TRÊN NG D NG WEB ph i h p s d ng nhi u công c ñ ki m tra xác nh n l i nh ng v trí Trong chương này, nghiên c u vi c phòng v các nguy cơ ph l i, tránh tình tr ng công c c nh báo l i sai ho c thi u. Các công c bi n trên ng d ng web, vi c phòng v toàn di n cho h th ng, ñ ng ki m tra l i tiêu bi u như Acunetix, w3af,… th i gi i thi u hư ng ti p c n c a lu n văn trong vi c xây d ng gi i 1.4 T NG K T CHƯƠNG 1 pháp phòng v nguy cơ trên ng d ng web. N i dung phòng v các Trong toàn b chương 1, tôi ñã gi i thi u t ng quan các v n ñ nguy cơ ph bi n trình bày v các l h ng b o m t liên quan ñ n vi c liên quan ñ n ng d ng web và nguy cơ nh hư ng ñ n ng d ng khai thác ch c năng c a ng d ng web, như nguy cơ l thông tin web. nh y c m hay nguy cơ b chèn các thông tin không ñúng chu n ñ Trình bày chi ti t v ki n trúc cơ b n c a m t ng d ng web khai thác ng d ng,… qua ñó ñ xu t các gi i pháp ki m tra và như l p trình di n, l p ng d ng, l p cơ s d li u, và s giao ti p phòng v cho t ng nguy cơ. N i dung phòng v toàn di n cho h c a các thành ph n này trong ho t ñ ng c a ng d ng web. Các khái th ng gi i thi u gi i pháp phòng v nguy cơ theo mô hình Defense- ni m liên quan ñ n s v n hành c a ng d ng web như giao th c In-Depth. N i dung cu i c a chương trình bày v vi c xây d ng gi i truy n d li u HTTP/HTTPS, giao th c b o m t SSL/TLS, các pháp phòng v nguy cơ trên ng d ng web, các gi i pháp này ñư c phương th c truy n d li u GET/POST và s qu n lý phiên (session) phân tích t các v n ñ liên quan ñ n mô hình ng d ng web và các trong quá trình giao ti p gi a máy khách và máy ch . l i b o m t trên ng d ng web. Trình bày t ng quan v tình hình b o m t web qua s li u ñư c 2.1 PHÒNG V CÁC NGUY CƠ PH BI N t ng h p t nhi u ngu n th ng kê uy tín như Zone-H hay sách tr ng 2.1.1 L thông tin nh y c m WHID (Web Hacking Incident Database) và s li u v các cu c t n 2.1.1.1 L mã ngu n công vào các website ñ a phương, các cơ quan ban ngành t i Vi t 2.1.1.2 L c u trúc thư m c Nam do VNCERT cung c p. Bên c nh ñó, trình bày các nguy cơ nh 2.1.1.3 L t p tin cũ và t p tin sao lưu hư ng ñ n ng d ng web và các phương pháp ñư c s d ng ñ ki m Bi n pháp phòng tránh tra l i b o m t web. Ki m tra sâu vào các t p tin nh y c m, sau ñó có bi n pháp b o V n ñ ñ t ra là các nguy cơ ph bi n trên ng d ng web ñ n v cho các t p tin nh y c m này. t s t n công có ch ý c a tin t c, t n công nh m m c tiêu d a vào 2.1.2 Vư t qua xác th c vi c khai thác các ñi m y u trong v n hành c a ng d ng web, c n M t vài trư ng h p, chương trình xác th c có th b b qua có s nghiên c u tìm ra gi i pháp ñ ki m tra và ch ñ ng phòng v b ng cách g i tr c ti p ñ n m t trang n i b , tư ng r ng ch ñư c cho ng d ng web trư c các nguy cơ. truy c p sau khi ñã xác th c thành công, ho c gi m o yêu c u và
  7. - 12 - - 13 - ñánh l a ng d ng r ng xác th c ñã thành công b ng cách s a ñ i Bi n pháp phòng tránh các tham s URL cho trư c. Ki m tra truy c p m i ñ i tư ng s d ng t ngu n chưa tin Bi n pháp phòng tránh tư ng ph i có cơ ch ki m tra ñi u khi n truy c p. Đ m b o r ng Có bi n pháp xác th c phù h p cho t ng trang c a ng d ng. ngư i s d ng ñã ch ng th c ñ i v i nh ng ñ i tư ng ñư c yêu c u. 2.1.3 T n công Brute Force 2.1.6 L giá tr phiên Các tài kho n ngư i dùng khác nhau s có nh ng quy n truy Các giá tr c a m t phiên làm vi c g i là các token g m có c p vào h th ng khác nhau. Tin t c tìm cách li t kê các cookie, ñ nh danh phiên (sessionID) và trư ng n (hidden field). N u User/Password h p l và sau ñó th c hi n t n công Brute Force ñ các giá tr c a phiên b l thì tin t c có th ñóng gi là ngư i dùng và tìm c p User/Password h p l . truy c p ñư c vào h th ng v i quy n c a ngư i s d ng. Do v y, Bi n pháp phòng tránh c n ph i luôn b o m t các giá tr token này trong su t quá trình liên User/Password c n ñư c ñ t khó ñoán và ñ m b o yêu c u b o l c gi a ngư i dùng và trình ng d ng web. m t như ñ dài trên 7 ký t , s d ng các ký t ñ c biêt,… Bi n pháp phòng tránh 2.1.4 Vư t qua xác quy n Có bi n pháp b o v các ñ nh danh phiên như s d ng giao Trang web có các phân quy n truy c p khác nhau cho các tài th c b o m t SSL/TLS. kho n ngư i dùng khác nhau. N u m t thành viên bên ngoài có th 2.1.7 Chèn yêu c u gi m o (CSRF) ñ c ñư c nh ng thông tin ñư c b o v không ñúng quy n truy c p T n công CSRF (Cross Site Request Forgery – Chèn yêu c u truy c p (vư t qua ñi u khi n truy c p) thì trang web ñã không ñ m gi m o) là ki u t n công mà ngư i dùng b l i d ng ñ th c thi b o an ninh thông tin. nh ng hành ñ ng không mong mu n ngay trên phiên ñăng nh p c a Bi n pháp phòng tránh h . Khi khai thác thành công l i CSRF, tin t c có th l y ñư c các Có bi n pháp b o v các ñ i tư ng ñư c truy c p b i ngư i thông tin v tài kho n ngư i dùng, th c hi n các hành ñ ng làm nguy dùng ho c nh ng tham chi u ñ i tư ng gián ti p. Đi u này ngăn ch n h i ñ n cơ s d li u trên trang web n u ngư i dùng ñó là ngư i qu n tin t c tr c ti p truy c p nh ng tài nguyên không ñư c phép. tr trang web… 2.1.5 Leo thang ñ c quy n Bi n pháp phòng tránh Leo thang ñ c quy n x y ra khi m t ngư i dùng ñư c quy n Có th g p token duy nh t trong m t trư ng n. Nó s ñư c truy c p vào m t ch c năng ho c tài nguyên nhi u hơn m c ñư c cho g i thông qua ph n thân c a yêu c u HTTP, tránh ñư c vi c g p nó phép. Đi u này thư ng gây ra b i m t l h ng trong ng d ng. K t trong URL s phơi bày cho tin t c bi t. qu là ng d ng cho phép các ñ c quy n ngoài d ñ nh c a nhà phát tri n ho c qu n tr viên h th ng.
  8. - 14 - - 15 - 2.1.8 Chèn k ch b n th c thi (XSS) phát tri n ng d ng, và ñ gi m thi u nguy cơ t các cu c t n công Chèn k ch b n th c thi (Cross Site Scripting – XSS) là phương này, ch có th tăng cư ng ki n trúc m ng. Tuy nhiên, m t vài l pháp thao tác v i các thông s ñ u vào ñ tìm ra l h ng c a ng h ng trong ng d ng có th b l i d ng ñ t n công t ch i d ch v . d ng. XSS cho phép tin t c th c thi k ch b n trên trình duy t c a n n Nh ng v n ñ này thư ng n m trong l i các trình ng d ng và nhân và có th cư p ño t phiên ngư i s d ng, thay ñ i giao di n thư ng xu t phát t ñi m y u trong vi c ki m tra các d li u nh y website ho c chuy n hư ng ngư i s d ng ñ n nh ng trang ñ c h i. c m do ngư i dùng nh p vào. Bi n pháp phòng tránh Bi n pháp phòng tránh Có bi n pháp l c d li u h p lý ñ tránh tình tr ng tin t c chèn Có bi n pháp ki m tra d li u ñ u vào trư c khi x lý. mã l nh th c thi. 2.2 PHÒNG V TOÀN DI N H TH NG 2.1.9 Chèn câu truy v n SQL Phòng v toàn di n h th ng (Defense-In-Depth) là m t chi n Chèn câu truy v n SQL (SQL Injection) là ki u t n công ñư c lư c ñ m b o thông tin (IA – Information Assurance) trong ñó các th c hi n b ng cách chèn các câu truy v n SQL vào d li u tương tác l p ñư c phòng v ñư c ñ t xuyên su t trong h th ng thông tin c a gi a máy khách và trình ng d ng. Quá trình khai thác l i SQL m t t ch c. Mô hình này bao g m vi c phòng v nguy cơ cho h Injection thành công có th giúp tin t c l y ñư c các d li u nh y th ng c m c con ngư i, công ngh và v n hành. Đây là chi n lư c c m trong c s d li u, th c thi các hành ñ ng v i quy n c a ngư i ñư c hình thành b i Cơ quan An ninh qu c gia (M ) – National qu n tr và cao hơn có th ñi u khi n ñư c h ñi u hành máy ch . Security Agency (NSA) ñ ñ m b o an ninh thông tin. Bi n pháp phòng tránh Mô hình Defense-In-Depth ñư c trình bày như sau: Ki m tra d li u ñ u vào trư c khi x lý; Mã hóa d li u trong cơ s d li u và không cho xu t trang báo l i n i dung cú pháp SQL ñ tin t c không th thu th p thông tin cơ s d li u; Gi i h n quy n truy c p cơ s d li u c a ngư i dùng và áp d ng các công ngh phòng tránh l i SQL Injection,… 2.1.10 T n công t ch i d ch v T n công t ch i d ch v là ki u t n công làm cho m t trang web không th ñư c truy c p b i ngư i dùng bình thư ng. Tin t c s d ng m t lư ng l n băng thông ñ làm l t h th ng máy ch , làm cho máy ch không ñ kh năng gi i quy t t t c các yêu c u nh n ñư c. Nh ng ki u t n công này vư t xa t m ki m soát c a các nhà Hình 2.1. Các l p trong mô hình Defense-In-Depth
  9. - 16 - - 17 - Theo mô hình Defense-In-Depth, d li u (Data) là thành ph n trong vi c phòng ch ng cho ng d ng trư c các nguy cơ t n công t quan tr ng nh t trong m t h th ng web. Đ b o v l p d li u, các tin t c. l p bên ngoài ñư c t ch c như sau: 2.3.2 V n ñ v l i b o m t trên ng d ng web - Policies, Procedures, Awareness: bao g m vi c xây d ng các Theo các k t qu th ng kê ñã ñư c công b , nghiên c u t n chính sách, th t c b o m t, giáo d c ý th c v b o m t. công và phòng th ng d ng web là m t lĩnh v c phát tri n m nh, - Physical: b o v m c v t lý (ví d như s d ng khóa c a). trong ñó các khái ni m m i và phương pháp t n công m i ñư c hình - Perimeter: b o v vành ñai như tư ng l a, c u hình router, thành v i t c ñ nhanh hơn so v i các phương pháp cũ ñã có. M t VPN,…. khác, vi c phát tri n không ng ng c a công ngh ñ áp d ng xây - Internal Network: b o v m ng trong như các ño n m ng, d ng các ng d ng web ñã ñư c ñ y xa hơn n n t ng ban ñ u r t Network Based IDS,…. nhi u. Chính ñi u này ñã d n ñ n vi c xu t hi n nhi u nguy cơ m i, - Host: b o v host như qu n lý máy ch , Host-Based Firewall, k c nh ng l h ng b o m t không lư ng trư c ñư c. các ph n m m b o v , h th ng phòng th t n công, qu n lý vi c c p Tuy nhiên, các phương pháp t n công hay nguy cơ m i xu t nh t các l i b o m t,…. hi n xét cho cùng cũng xu t phát t vi c khai thác ch c năng c a h - Application: bao g m vi c b o v m c v n hành c a ng th ng. Chính vì v y ñ gi i quy t v n ñ phòng v nguy cơ trên ng d ng như t o m t kh u m nh, s d ng các giao th c b o m t như d ng web, vi c thư ng xuyên ki m tra s v n hành c a ng d ng, SSL/TLS, IPSec,… quá trình x lý t t thông tin vào/ra và qu n lý thông tin trên h th ng 2.3 Đ XU T GI I PHÁP s ñáp ng ñư c yêu c u ñ t ra. Nói cách khác, vi c xây d ng m t 2.3.1 V n ñ v mô hình ng d ng web quy trình ki m soát ch c năng c a h th ng cũng chính là ñ gi i M t ng d ng web khi ñư c tri n khai trên m ng Internet c n quy t v n ñ phòng v nguy cơ cho h th ng. có s tham gia c a nhi u y u t . Đ ñ m b o cho ng d ng ñó ho t 2.3.3 Hư ng ti p c n và phát tri n c a ñ tài ñ ng an toàn thì các thành ph n c u thành như mã ngu n ng d ng Như ñã trình bày trên, ñ h n ch các nguy cơ t n công lên web ph i ñư c l p trình an toàn, các thành ph n b tr như máy ch ng d ng web, c n ph i có m t gi i pháp t ng th và ñư c tri n khai ph c web và h qu n tr cơ s d li u,… cũng c n ñư c qu n lý t t. trên trên toàn b các lĩnh v c. B t ñ u t vi c tuyên truy n ý th c, Tuy r ng không có m t mô hình nào là t i ưu và ñ m b o an toàn trách nhi m v b o m t; vi c ñào t o ñ i ngũ qu n tr , v n hành h tuy t ñ i cho m t ng d ng web kh i nh ng nguy cơ, nhưng vi c xây th ng ñ trình ñ k thu t; vi c ñ u tư h th ng m ng, h th ng ph n d ng m t mô hình web h p lý, c u hình các thành ph n trong mô c ng, ph n m m ñ m b o yêu c u an ninh; vi c xây d ng mô hình hình web phù h p v i s v n hành c a ng d ng là v n ñ trư c tiên web h p lý, ñ m b o yêu c u an toàn cho h th ng; ñ n vi c ki m c n quan tâm ñ qu n lý t t h th ng và giúp ngư i qu n tr ch ñ ng soát t t l i b o m t trên ng d ng web;…
  10. - 18 - - 19 - Lo i b các y u t v tuyên truy n, ñào t o và ñ u tư cho v n CHƯƠNG 3: ñ b o m t, trong khuôn kh c a lu n văn, quan ñi m “Xây d ng gi i TRI N KHAI GI I PHÁP PHÒNG V NGUY CƠ pháp phòng v nguy cơ trên ng d ng web” ñư c tri n khai m cñ TRÊN NG D NG WEB xây d ng mô hình ng d ng web an toàn và ki m soát t t các l i b o Qua vi c tìm hi u các nguy cơ ph bi n liên quan ñ n vi c m t trên trang web. khai thác ch c năng c a ng d ng web, gi i pháp phòng v nguy cơ - V n ñ xây d ng mô hình ng d ng web an toàn liên quan cho ng d ng web s ñư c tri n khai xây d ng hai m c, m c h ñ n vi c phòng v nguy cơ m c h th ng c a ng d ng. th ng và m c v n hành ng d ng web. m c h th ng, tri n khai - V n ñ ki m soát các l i b o m t trên ng d ng web liên xây d ng mô hình web an toàn qua vi c c u hình các thành ph n web quan ñ n vi c phòng v nguy cơ m c v n hành ng d ng. h p lý và vi c cài ñ t các ng d ng b o v cho trang web (như Các gi i pháp phòng v nguy cơ này ñư c xây d ng dư i góc Firewall, Anti-vius,…). m c v n hành ng d ng web, tri n khai nhìn c a ngư i l p trình ng d ng web trong quá trình phát tri n ng quy trình ki m soát l i b o m t trên ng d ng web. Cu i cùng là d ng và ngư i qu n tr (admin) trang web trong quá trình v n hành minh h a vi c áp d ng các gi i pháp phòng v nguy cơ trên website ng d ng. B u c Qu c h i khóa 13 (baucukhoa13.quochoi.vn), c th b ng 2.4 T NG K T CHƯƠNG 2 vi c ki m tra mô hình web và các l i b o m t trên trang web. Trên cơ Trong toàn b chương 2, tôi ñã nghiên c u vi c phòng v các s ñó, tôi báo cáo v các nguy cơ và gi i pháp phòng v cho t ng nguy cơ ph bi n trên ng d ng web, phòng v toàn di n cho h nguy cơ. th ng, qua ñó trình bày hư ng ti p c n c a lu n văn trong vi c xây 3.1 PHÒNG V NGUY CƠ M C H TH NG d ng gi i pháp phòng v nguy cơ trên ng d ng web. Đ phòng v nguy cơ m c h th ng, m t mô hình web ñ m Đ phòng v các nguy cơ ph bi n trên ng d ng web c n hi u b o an toàn ñư c ñ xu t như sau: rõ v s v n hành c a ng d ng web, qua ñó tìm hi u các l h ng b o m t liên quan ñ n vi c khai thác ch c năng c a ng d ng, sau ñó là nghiên c u v các gi i pháp ki m tra và phòng v cho t ng nguy cơ. Bên c nh ñó ñ ch ñ ng phòng tránh cho ng d ng kh i các nguy cơ c n có m t gi i pháp ñ m b o an toàn trên nhi u phương di n. Tôi ñã gi i thi u mô hình Defense-In-Depth, qua ñó ñ t v n ñ v vi c xây d ng gi i pháp phòng v nguy cơ trên ng d ng web m c h th ng và m c v n hành ng d ng web. Hình 3.1. Xây d ng mô hình web ñ m b o an toàn
  11. - 20 - - 21 - 3.1.1 C u hình web h p lý 3.1.2.2 Anti-Virus M t ng d ng web khi tri n khai s có ba l p: l p trình di n, 3.1.2.3 Cơ ch sao lưu l p ng d ng và l p cơ s d li u. Vi c ho ch ñ nh các l p trong c u 3.1.2.4 Cơ ch ph c h i trúc web t t không nh ng giúp cho ngư i qu n tr d dàng v n hành 3.2 PHÒNG V NGUY CƠ M C V N HÀNH NG mà còn ch ñ ng trong vi c phòng ch ng các nguy cơ t n công t tin D NG t c. M t s cách b trí l p thư ng g p trong th c t như sau: Đ phòng v nguy cơ m c v n hành ng d ng, c n có m t gi i pháp ki m tra m i l i b o m t liên quan ñ n ho t ñ ng c a ng d ng web. Quy trình ki m soát l i b o m t trên ng d ng web ñư c ti n hành t vi c thu th p thông tin v ng d ng web và ti n hành phân tích, ñ n vi c ki m tra các c u hình và ch c năng trên ng d ng. N i dung c th như sau: Thu th p thông tin và phân tích 1. Thu th p thông tin 2. Phân tích Hình 3.2. Các mô hình c u trúc web Thi t ñ t Đi u khi n Ki m tra d Thi t ñ t máy Qua các mô hình trên cho th y n u như tri n khai gi a các l p web truy c p li u ñ u vào ch không có s tách bi t rõ ràng thì m t l p b tin t c t n công có th 3 . Ki m t r a 4 . Ki m t r a 7 . Ki m t r a 8 . Ki m t r a d n ñ n các l p khác cũng b nh hư ng theo. Do v y, các l p khi các thi t ñ t xác th c l i chèn d thi t ñ t máy web li u ch tri n khai nên tách bi t ñ c l p thành mô hình ba l p, ñ tránh tình tr ng m t l p b t n công d n ñ n các l p khác b nh hư ng. Ngoài 5 . Ki m t r a 9 . Ki m t r a qu n lý phiên l i phía máy ra, vi c phân lo i ñ c l p ba l p s t o ñi u ki n thu n l i cho vi c ch v n hành, b o trì h th ng cũng như d dàng áp d ng các bi n pháp b o v ñ i v i m i l p chuyên bi t. 6 . Ki m t r a ñi u khi n 3.1.2 Cài ñ t ng d ng b o v truy c p 3.1.2.1 Firewall Hình 3.3. Quy trình ki m soát l i b o m t ng d ng web
  12. - 22 - - 23 - 3.2.1 Thu th p thông tin - Các t p tin sao lưu và t p tin cơ s d li u c n có bi n pháp b o 3.2.2 Phân tích ñi m y u ng d ng v h p lý, thi t l p các quy n truy c p v i các t p tin này. 3.2.3 Ki m tra thi t ñ t web - Đ ñ m b o an toàn trong quá trình truy c p FTP, nên s d ng 3.2.4 Ki m tra xác th c giao th c SFTP ho c FTPS. 3.2.5 Ki m tra qu n lý phiên - Nên có ch ñ khóa tài kho n ho c ñ a ch IP n u có s l n 3.2.6 Ki m tra ñi u khi n truy c p ñăng nh p sai nhi u, ho c s d ng captcha t i nơi ñăng nh p. 3.2.7 Ki m tra l i chèn d li u - Nên s d ng m t b l c ñ ki m tra tính h p pháp c a các siêu 3.2.8 Ki m tra thi t ñ t máy ch ký t do ngư i dùng nh p vào ng d ng web ñ tránh các nguy cơ v 3.2.9 Ki m tra l i phía máy ch l i chèn d li u như SQL Injectiontion, XPath Injection hay Cross 3.3 TRI N KHAI GI I PHÁP PHÒNG V NGUY CƠ TRÊN Site Scripting (XSS). WEBSITE BAUCUKHOA13.QUOCHOI.VN 3.4 T NG K T CHƯƠNG 3 3.3.1 Cài ñ t công c Trong toàn b chương 3, gi i pháp phòng v nguy cơ cho ng 3.3.2 Báo cáo t ng quan d ng web ñã ñư c tri n khai xây d ng hai m c, m c h th ng và 3.3.3 Báo cáo chi ti t l i m c v n hành ng d ng web. m c h th ng, ñã tri n khai xây 3.3.3.1 L thông tin v h ñi u hành máy ch và máy ch web d ng mô hình web an toàn qua vi c c u hình các thành ph n web h p 3.3.3.2 Các giao th c ñư c cho phép trên máy ch lý và vi c cài ñ t các ng d ng b o v cho trang web (như Firewall, 3.3.3.3 T n t i t p tin sao lưu trên website Anti-vius,…). m c v n hành ng d ng web, ñã tri n khai quy trình 3.3.3.4 Thư m c cơ s d li u t n t i trên website ki m soát l i b o m t trên ng d ng web. Quy trình này ñư c xây 3.3.3.5 FTP h tr truy c p không mã hóa d ng chi ti t t m c thu th p thông tin, phân tích ñ n m c ki m tra 3.3.3.6 Trang ñăng nh p quy n qu n tr không gi i h n s l n các ho t ñ ng ch c năng c a ng d ng web như ki m tra các thi t ñ t ñăng nh p web, ñi u khi n truy c p, ki m soát l i nh p li u ñ u vào và cu i 3.3.3.7 L i SQL Injection cùng là ki m tra các thi t ñ t c a máy ch ñ ñ m b o an toàn cho 3.3.3.8 L i XPath Injection ho t ñ ng c a ng d ng web. Tôi cũng ñã minh h a vi c áp d ng các 3.3.3.9 L i Cross Site Scripting (XSS) gi i pháp phòng v nguy cơ trên vào vi c ki m tra website B u c 3.3.4 Bi n pháp phòng v nguy cơ qu c h i khóa 13 v i s h tr c a các công c ñư c t p h p trong - Ch nên cho phép truy c p c ng 3389 t m ng n i b ho c BackTrack 5, qua ñó ñ xu t bi n pháp phòng v nguy cơ cho trang ñóng c ng này n u không c n dùng ñ tránh các r i ro l thông tin v web. máy ch .
  13. - 24 - - 25 - K T LU N VÀ HƯ NG PHÁT TRI N phát tri n là c n ph i có m t gi i pháp ñ m b o an toàn cho ho t T k t qu nghiên c u các tư li u và th c nghi m cho th y các ñ ng c a ng d ng, qua ñó s tránh ñư c các nguy cơ t vi c tin t c nguy cơ trên ng d ng web ñư c khai thác thành công d a trên m t khai thác nh ng sai sót trong b n thân ch c năng khi ng d ng v n nguyên t c cơ b n là tin t c c g ng tìm ki m các sai sót trong ho t hành. Gi i pháp phòng v nguy cơ trên ng d ng web ñã ñư c tri n ñ ng c a ng d ng web và thông qua nh ng sai sót này ñ t n công khai xây d ng hai m c: m c h th ng và m c v n hành ng d ng. ngư c vào ng d ng. Nh ng sai sót (hay l h ng b o m t) này xu t m c h th ng ñã tri n khai xây d ng mô hình web an toàn và hi n có th có nhi u nguyên nhân: do b n thân ng d ng trong quá m c v n hành ng d ng ñã tri n khai quy trình ki m soát l i b o m t trình phát tri n ñã ñ l i nhi u l h ng nhưng chưa ñư c ki m tra k trên ng d ng web. lư ng trư c khi ñưa vào v n hành, do ng d ng ch y trên các n n Đ ñ m b o an toàn cho ng d ng web trư c các hình th c t n t ng công ngh chưa hoàn ch nh ñư c cung c p b i các nhà s n xu t công ngày càng tăng c v s lư ng và ch t lư ng, không th ch ph và b tin t c thông qua ñó khai thác ñ t n công vào ng d ng, do thu c vào m t công ngh hay m t quy trình c th vì công ngh web ngư i qu n tr h th ng chưa hi u rõ các nguyên t c ñ m b o an toàn ñang phát tri n nhanh chóng, kéo theo ñó là nhi u khuy t ñi m m i cho ng d ng ho c vô tình t o ra các cơ ch qu n lý l ng l o, t o phát sinh. S t n công không n m trong khuôn kh vài k thu t ñã ñi u ki n cho tin t c t n công,… phát hi n, mà linh ñ ng và tăng lên tùy vào nh ng sai sót c a nhà s n K t qu th c hi n lu n văn “Nghiên c u xây d ng gi i pháp xu t, c a ngư i qu n tr h th ng cũng như c a ngư i l p trình ng phòng v nguy cơ trên ng d ng web” tôi ñã nghiên c u v b o m t d ng web. V n ñ thi t y u c n quan tâm là b n thân ngư i l p trình ng d ng web, các nguy cơ trên ng d ng web và xây d ng hoàn ng d ng web hay ngư i qu n tr trang web c n có s hi u bi t n n thi n gi i pháp phòng v nguy cơ trên ng d ng web. Các nghiên c u t ng v ho t ñ ng c a ng d ng web, qua ñó s có nh ng bi n pháp t ng quan v b o m t ng d ng web ñã trình bày v ho t ñ ng c a thích h p ñ c i ti n quy trình hay công ngh ki m soát l i b o m t ng d ng web, các nguy cơ trên ng d ng web cũng như các phương web m t cách phù h p. Các hư ng phát tri n nghiên c u c a lu n pháp thư ng ñư c s d ng ñ ki m tra nguy cơ như ki m tra th văn như sau: công hay ki m tra b ng công c t ñ ng. N i dung phòng v nguy cơ - Ti p t c nghiên c u nh ng nguy cơ m i xu t hi n trên ng trên ng d ng web ñã t p trung trình bày vi c phòng v cho nh ng d ng web và cách phòng v cho các nguy cơ trên nh m nâng cao hi u nguy cơ ph bi n liên quan ñ n vi c khai thác ch c năng c a ng qu trong vi c ñ m b o an toàn cho s v n hành c a ng d ng web. d ng web, m i nguy cơ ñ u trình bày t ng gi i pháp phòng v riêng - Tìm hi u thêm v các công c ki m tra l i b o m t m i ñư c và cu i cùng là trình bày v vi c phòng v toàn di n cho h th ng phát tri n ho c t xây d ng m t vài công c ñ c thù h tr cho vi c theo mô hình Defense-In-Depth. T vi c nghiên c u phòng tránh dò tìm l i b o m t ñ phát huy t i ña hi u qu c a vi c phòng v cho t ng nguy cơ nh hư ng ñ n ng d ng web, tôi ñã ñ xu t hư ng nguy cơ trên ng d ng web.
nguon tai.lieu . vn