Đang tải... (xem toàn văn)
Tài liệu tham khảo công nghệ thông tin Nghiên cứu một số vấn đề về bảo mật ứng dụng web
Khoa CNTT BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜ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 DE LUẬN VĂN TỐT NGHIỆP ĐỀ TÀI: NGHIÊN CỨU MỘT SỐ VẤN ĐỀ VỀ BẢO MẬ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 Sưu tầm bởi: www.daihoc.com.vn Khoa CNTT Lời cảm ơn Sau gần tháng nỗ lực thực hiện, luận văn nghiên cứu “Các kĩ thuật công bảo mật ứng dụng Web Internet” phần hoàn thành Ngoài cố gắng thân, chúng em nhận khích lệ nhiều từ phía nhà trường, thầy cơ, gia đình bạn bè Trước hết chúng xin cám ơn ba mẹ động viên tạo điều kiện tốt để chúng học tập hoàn thành luận văn tốt nghiệp Chúng em xin cám ơn thầy cô trường Đại Học Khoa Học Tự Nhiên truyền đạt kiến thức quý báu cho chúng em suốt trình học tập Đặc biệt, chúng em xin bày tỏ lòng chân thành sâu sắc đến thầy Mai Văn Cường, người tận tình hướng dẫn giúp đỡ chúng em trình làm luận văn tốt nghiệp Xin cám ơn tất bạn bè động viên, giúp đỡ chúng tơi q trình học tập hồn thành tốt luận văn tốt nghiệp Sưu tầm bởi: www.daihoc.com.vn Khoa CNTT Lời nhận xét …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… Sưu tầm bởi: www.daihoc.com.vn Khoa CNTT Nghiên cứu số vấn đề bảo mật ứng dụng Web Internet MỤC LỤC GIỚI THIỆU……………………………………………………………………………… Tổ chức luận văn…………………………………………………………………… PHẦN THỨ NHẤT: CƠ SỞ LÍ THUYẾT……………………………………………… 11 Chương 1: Giới thệu Ứng dụng Web…………………………………………………… 12 I KHÁI NIỆM ỨNG DỤNG WEB……………………………… …………………… 13 II MÔ TẢ HOẠT ĐỘNG CỦA MỘT ỨNG DỤNG WEB……… ………………… 16 Chươ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 kĩ thuật 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 đắn liệu ngơn ngữ phía trình duyệt………… 28 III.2 Tràn đệm…………… ……………………………………………………… 28 III.3 Mã hóa URL…………………………………………………………………… 28 III.4 Kí tự Meta……………………………………………………………………… 28 III.5 Vượt qua đường dẫn…………………………………………………………… 29 III.6 Chèn mã lệnh thực thi trình duyệt nạn nhân……………………………… 29 III.7 Thêm câu lệnh hệ thống………………….…………………………………… 29 Sưu tầm bởi: www.daihoc.com.vn Khoa CNTT Nghiên cứu số vấn đề bảo mật ứng dụng Web 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 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 Chương 4: Thao tác tham số truyền………………………………………………… 34 I THAO TÁC TRÊN URL…………………………………………………………… 35 I.1 Khái niệm………………………………………………………………………… 35 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ình duyệt nạn nhân (Cross Side Scripting)…… 43 I KĨ THUẬT TẤN CÔNG CROSS-SITE SCRIPTING (XSS)……………………… 44 II PHƯƠ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 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Ở DỮ LIỆU……………………………………… 57 Sưu tầm bởi: www.daihoc.com.vn Khoa CNTT Nghiên cứu số vấn đề bảo mật ứng dụng Web Internet III CÁC CÁCH TẤN CƠNG………………………………………………………… 58 III.1 Kĩ thuật 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 tầng……………………………………………………………… 71 III.7.3 Tránh 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 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 vào bảng…………………………………………… 77 IV CÁCH PHÒNG CHỐNG………………………………………………………… 77 IV.1 Kiểm tra liệu……………………………………………………………… 78 IV.2 Khoá chặt SQL Server (SQL Server Lockdown)…………………………… 81 Chươ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 tham số URL………………………………………… 88 II.2 Tấn công Session ID biến ẩn form……………………………………… 89 II.3 Tấn công Session ID 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ự đố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 Sưu tầm bởi: www.daihoc.com.vn Khoa CNTT Nghiên cứu số vấn đề bảo mật ứng dụng Web Internet III.4 Cách phòng chống……………………………………………………………… 94 III.5 Sự khác biệt đánh cắp phiên làm việc (session hijacking) ấn định phiên làm việc (session fixation)…………………………………………………………… 94 Chương 8: Tràn đệm (Buffer Overflow)…………………………………………… 97 I KHÁI NIỆM………………………………………………………………………… 98 II SƠ ĐỒ TỔ CHỨC CỦA BỘ NHỚ………………………………………………… 99 II.1 Stack…………………………………………………………………………… 100 II.2 Push Pop……………………………………………………………………… 101 II.3 Cách làm việc hàm………………………………………………………… 102 II.4 Shell code……………………………………………………………………… 104 III MỘT SỐ CÁCH GÂY TRÀN BỘ ĐỆM QUA ỨNG DỤNG WEB……………… 106 IV CÁC CÁCH PHÒNG CHỐNG…………………………………………………… 106 Chươ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 Tcp bắt tay ba chiều……………………………………………… 110 III.2 Lợi dụng TCP thực 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 công thứ 1………………………………………………………… 113 III.3.2 Kiểu công thứ 2………………………………………………………… 113 III.4 Kiểu công vào tài nguyên hệ thống………………………………………… 117 IV BIỆN PHÁP PHÒNG CHỐNG…………………………………………………… 117 Chương 10: Một số kĩ thuật 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 II KIỂU TẤN CÔNG VƯỢT ĐƯỜNG DẪN………………………………………… 121 II.1 Khái niệm……………………………………………………………………… 121 Sưu tầm bởi: www.daihoc.com.vn Khoa CNTT Nghiên cứu số vấn đề bảo mật ứng dụng Web Internet II.2 Một số biện pháp phòng chống………………………………………………… 122 III TẤN CƠNG DỰA VÀO KÍ TỰ RỖNG………………………………………… 123 III.1 Khái niệm……………………………………………………………………… 123 III.2 Một số biện pháp phịng chống………………………………………………… 123 IV NGƠN NGỮ PHÍA TRÌNH CHỦ………………………………………………… 123 IV.1 Khái niệm……………………………………………………………………… 123 IV.2 Cách công…………………………………………………………………… 125 IV.3 Biện pháp phòng chống………………………………………………………… 125 Chương 11: Tổng kết q trình cơng Hacker………………………………… 127 I THU THẬP THÔNG TIN Ở MỨC HẠ TẦNG CỦA MỤC TIÊU………………… 128 II KHẢO SÁT ỨNG DỤNG WEB…………………………………………………… 131 III TẤN CƠNG……………………………………………………………………… 132 Chương 12: Tổng kết 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 III VỚI NGƯỜI SỬ DỤNG ỨNG DỤNG WEB…………………………………… 139 PHẦN THỨ BA: CHƯƠNG TRÌNH WEB CHECKER……………………………… 140 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 II KIẾN TRÚC CHƯƠNG TRÌNH WEB CHECKER……………………………… 143 II.1 Kiến trúc chương trình Web Checker………………………………………… 143 II.2 Giao tiếp chương trình với trình chủ Web………………………………… 144 III CÀI ĐẶT………………………………………………………………………… 145 III.1 Ngôn ngữ cài đặt……………………………………………………………… 145 III.2 Phương pháp cài đặt…………………………………………………………… 145 Sưu tầm bởi: www.daihoc.com.vn Khoa CNTT Nghiên cứu số vấn đề bảo mật ứng dụng Web 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 hàm cài đặt chương trình………………… 146 III.3 Mơ tả chương trình cách sử dụng…………………………………………… 151 III.3.1 Màn hình chương trình……………………………………………………… 151 III.3.2 Cách sử dụng……………………………………………………………… 152 IV ĐÁNH GIÁ CHƯƠNG TRÌNH…………………………………………………… 153 IV.1 Những vấn đề đạt được……………………………………………………… 153 IV.2 Những vấn đề hạn chế………………………………………………………… 153 KẾT LUẬN…………………………………………………………………………… 155 I NHỮNG VẤN ĐỀ ĐẠT ĐƯỢC…………………………………………………… 156 II HƯỚNG PHÁT TRIỂN…………………………………………………………… 157 PHỤ LỤC……………………………………………………………………………… 158 Sưu tầm bởi: www.daihoc.com.vn Khoa CNTT Nghiên cứu số vấn đề bảo mật ứng dụng Web Internet GIỚI THIỆU Ngày nay, Internet phổ biến rộng rãi, tổ chức, cá nhân có nhu cầu giới thiệu thơng tin xa lộ thơng tin thực phiên giao dịch trực tuyến Vấn đề nảy sinh phạm vi ứng dụng ứng dụng Web ngày mở rộng khả xuất lỗi bị công cao, trở thành đối tượng cho nhiều người công với mục đích khác Đơi khi, đơn giản để thử tài đùa bỡn với người khác Cùng với phát triển không ngừng Internet dịch vụ Internet, số lượng vụ công Internet tăng theo cấp số nhân Trong phương tiện thông tin đại chúng ngày nhắc nhiều đến khả truy nhập thông tin Internet, tài liệu chun mơn bắt đầu đề cập nhiều đến vấn đề bảo đảm an tồn liệu cho máy tính kết nối vào mạng Internet Theo số liệu CERT (Computer Emegency Response Team - "Đội cấp cứu máy tính"), số lượng vụ công Internet thông báo cho tổ chức 200 vào năm 1989, khoảng 400 vào năm 1991, 1400 vào năm 1993, 2241 vào năm 1994, năm 2001 5315 vụ Những vụ công nhằm vào tất máy tính có mặt Internet, máy tính tất công ty lớn AT&T, IBM, trường đại học, quan nhà nước, tổ chức quân sự, nhà băng Một số vụ cơng có quy mơ khổng lồ (có tới 100.000 máy tính bị cơng) Hơn nữa, số phần tảng băng Một phần lớn vụ công không thông báo, nhiều lý do, -Trang 7- Sưu tầm bởi: www.daihoc.com.vn ... Survey tổng số thiệt hại ứng dụng Web bị công từ năm 1997 đến năm 2000 626 triệu đôla Mỹ -Trang 8- Sưu tầm bởi: www.daihoc.com.vn Khoa CNTT Nghiên cứu số vấn đề bảo mật ứng dụng Web Internet... www.daihoc.com.vn Khoa CNTT Nghiên cứu số vấn đề bảo mật ứng dụng Web 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)………………………... thiệu Ứng dụng Web Chương GIỚI THIỆU ỨNG DỤNG WEB Nội dung: I Khái niệm ứng dụng Web II Mô tả cách hoạt động ứng dụng Web -Trang 12- Sưu tầm bởi: www.daihoc.com.vn Khoa CNTT Chương 1: Giới thiệu Ứng