Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 112 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
112
Dung lượng
1,74 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ HOÀNG VĂN BIÊN NGHIÊN CỨU GIẢI PHÁP ĐẢM BẢO AN NINH AN TỒN THƠNG TIN CHO CÁC CỔNG/TRANG THƠNG TIN ĐIỆN TỬ LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN HÀ NỘI-2015 MỤC LỤC LỜI CAM ĐOAN DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT DANH MỤC CÁC HÌNH ẢNH MỞ ĐẦU Chương TỔNG QUAN VỀ AN TỒN THƠNG TIN VÀ CỔNG THƠNG TIN ĐIỆN TỬ 1.1 Khái niệm chung an tồn an ninh thơng tin 1.2 Tình hình an tồn thơng tin giới Việt Nam 1.3 Tổng quan cổng thông tin điện tử 1.4 Các lỗi bảo mật phổ biến ứng dụng web cách phòng chống 1.5 Tổng quan đăng nhập lần cổng thông tin điện tử 17 Chương NGHIÊN CỨU CÁC BIỆN PHÁP CƠ BẢN ĐỂ ĐẢM BẢO AN NINH AN TỒN THƠNG TIN CHO CÁC CỔNG/TRANG THÔNG TIN ĐIỆN TỬ .24 2.1 Xác định cấu trúc ứng dụng web 24 2.2 Triển khai hệ thống phòng thủ 29 2.2.1 Tổ chức mơ hình mạng 30 2.2.2 Thiết lập tường lửa 31 2.2.3 Sử dụng công cụ phát ngăn chặn xâm nhập (IDS/IPS) .34 2.2.3.1 Công cụ phát xâm nhập (IDS) 34 2.2.3.2 Công cụ ngăn chặn xâm nhập (IPS) 38 2.2.4 Ứng dụng phòng chống vi-rút bảo vệ máy tính cá nhân .40 2.3 Thiết lập cấu hình hệ thống máy chủ an tồn 41 2.3.1 Thiết lập cấu hình hệ điều hành máy chủ 41 2.3.2 Thiết lập cấu hình máy chủ ứng dụng web 42 2.3.3 Thiết lập cấu hình máy chủ sở liệu 43 2.4 Thiết lập chế lưu phục hồi 44 2.4.1 Thiết lập chế lưu 44 2.4.2 Thiết lập chế phục hồi 45 2.5 Vận hành an toàn 45 2.5.1 Kiểm tra hoạt động ứng dụng web an toàn 45 2.5.2 Một số biện pháp ứng phó với cơng 46 2.5.3 Đào tạo đội ngũ nhân lực vận hành hệ thống 46 Chương TẤN CÔNG TỪ CHỐI DỊCH VỤ VÀ MỘT SỐ BIỆN PHÁP PHÒNG CHỐNG 48 3.1 Tấn công từ chối dịch vụ (DoS) 48 3.2 Tấn công từ chối dịch vụ phân tán (DDoS) 50 3.2.1 Các giai đoạn công DDoS 50 3.2.2 Kiến trúc tổng quan mạng công DDoS 51 3.2.3 Phân loại công DDoS 53 3.2.3.1 Tấn công làm cạn kiệt băng thông hệ thống 54 3.2.3.2 Tấn công làm cạn kiệt tài nguyên 56 3.3 Tấn công từ chối dịch vụ phản xạ nhiều vùng (DRDoS) 57 3.4 Một số biện pháp phịng chống cơng từ chối dịch vụ .58 Chương TRIỂN KHAI THỬ NGHIỆM 63 4.1 Mơ hình thử nghiệm 63 4.2 Cấu hình hệ thống 64 4.2.1 Cấu hình Apache 67 4.2.2 Cấu hình MySQL 69 4.3 Cài đặt tường lửa ứng dụng web ModSecurity 69 4.4 Thiết lập hệ thống Snort để phát ngăn chặn xâm nhập .72 4.5 Đánh giá khuyến nghị 77 KẾT LUẬN 78 TÀI LIỆU THAM KHẢO PHỤ LỤC 1: THÔNG TIN THAM KHẢO VỀ CÁC TƯỜNG LỬA PHỤ LỤC 2: TƯỜNG LỬA ỨNG DỤNG WEB ModSecurity PHỤ LỤC 3: MỐT SỐ PHẦN MỀM CHỐNG VIRUS VÀ BẢO VỆ MÁY TÍNH ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CƠNG NGHỆ HỒNG VĂN BIÊN NGHIÊN CỨU GIẢI PHÁP ĐẢM BẢO AN NINH AN TỒN THƠNG TIN CHO CÁC CỔNG/TRANG THƠNG TIN ĐIỆN TỬ Ngành: Công nghệ thông tin Chuyên ngành: Truyền liệu mạng máy tính Mã số: LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: TS NGUYỄN VIẾT THẾ HÀ NỘI-2015 LỜI CAM ĐOAN Tôi xin cam đoan luận văn không chép ai, kết nghiên cứu trình bày luận văn hồn tồn trung thực, khơng vi phạm điều luật sở hữu trí tuệ pháp luật Việt Nam Nếu sai, tơi hồn tồn chịu trách nhiệm trước pháp luật DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT ATTT: An tồn thơng tin CNTT & TT: Công nghệ thông tin truyền thông TT & TT: Thông tin truyền thông TTĐT: Thông tin điện tử IDS: Hệ thống phát xâm nhập HIDS: Hệ thống phát xâm nhập máy NIDS: Hệ thống phát xâm nhập mạng IPS: Hệ thống ngăn chặn xâm nhập HIPS: Hệ thống ngăn chặn xâm nhập máy NIPS: Hệ thống ngăn chặn xâm nhập mạng DoS: Tấn công từ chối dịch vụ DDoS: Tấn công từ chối dịch vụ phân tán DRDoS: Tấn công từ chối dịch vụ phản xạ nhiều vùng VNISA: Hiệp hội an tồn thơng tin Việt Nam VNCERT: Trung tâm ứng cứu khẩn cấp máy tính Việt Nam OWASP: Dự án mở bảo mật ứng dụng web SSO: Đăng nhập lần DANH MỤC CÁC HÌNH ẢNH Hình 2.1: Một vài mơ hình triển khai ứng dụng web Hình 2.2: Mơ hình lớp Hình 2.3: Mơ hình lớp Hình 2.4: Mơ hình lớp Hình 2.5: Mơ hình N lớp Hình 2.6: Một số vị trí đặt tường lửa Hình 2.7: Ví dụ vị trí đặt tường lửa ứng dụng web Hình 2.8: Một số vị trí thường đặt cảm biến NIDS Hình 3.1: Mơ tả cơng kiểu Smurf Hình 3.2: Kiến trúc mạng cơng kiểu Agent Handler Hình 3.3: Kiến trúc mạng cơng kiểu IRC Hình 3.4: Phân loại cơng từ chối dịch vụ phân tán Hình 3.5: Tấn cơng khuếch đại giao tiếp Hình 3.6: Tấn cơng TCP SYN Hình 3.7: Giả mạo ip để cơng TCP SYN Hình 3.8: Tấn cơng DRDoS Hình 4.1: Mơ hình triển khai thử nghiệm MỞ ĐẦU Tính cấp thiết đề tài Trong năm gần đây, Công nghệ thơng tin truyền thơng (CNTT &TT) có vai trị lớn phát triển quốc gia, doanh nghiệp Ứng dụng CNTT &TT có tác động không nhỏ đến đời sống kinh tế, xã hội đại phận người dân giới CNTT&TT góp phần quan trọng vấn đề an ninh phát triển bền vững quốc gia Do vậy, ứng dụng CNTT&TT trở thành phần thiếu chiến lược phát triển doanh nghiệp quốc gia giới Với tốc độ phát triển ứng dụng CNTT&TT ngày nhanh nay, hàng ngày có lượng thơng tin lớn lưu trữ, chuyển tải thông qua cổng/trang thông tin điện tử (TTĐT) kéo theo nhiều rủi ro an tồn thơng tin Thiệt hại an ninh an toàn cổng/trang TTĐT tăng nhanh ảnh hưởng nghiêm trọng đến phát triển kinh tế - xã hội, cơng tác đảm bảo an ninh an tồn khơng triển khai mức Bởi kỹ thuật tội phạm mạng ngày cao tinh vi hơn, số lượng điểm yếu an ninh ngày tăng, số vụ xâm phạm an tồn mạng ngày nhiều Tấn cơng mạng vào cổng/trang TTĐT ngày trở lên nghiêm trọng Vì vậy, việc nghiên cứu giải pháp đảm bảo an ninh an toàn cho cổng/trang TTĐT cần thiết Để đảm bảo cổng/trang TTĐT hoạt động ổn định, bảo đảm an ninh an tồn thơng tin việc làm cần thiết Giải vấn đề an ninh an toàn cổng/trang TTĐT việc làm xã hội vấn đề cấp bách Mục tiêu đề tài Nghiên cứu, tìm hiểu giải pháp đảm bảo an ninh an tồn thơng tin cho cổng/trang TTĐT Kết sử dụng làm tài liệu tốt việc xây dựng hệ thống đảm bảo an ninh an toàn cho cổng/trang TTĐT cho quan, doanh nghiệp Phương pháp nghiên cứu Về lý thuyết: Nghiên cứu đặc điểm cổng/trang TTĐT, lỗ hổng hình thức cơng nhằm vào cổng/trang TTĐT Sau tìm hiểu, nghiên cứu áp dụng giải pháp để phịng chống cơng lỗ hổng, ngăn chặn hình thức cơng cổng/trang TTĐT Các giải pháp nghiên cứu, tổng hợp từ nhiều nguồn khác tùy vào loại lỗ hổng hình thức cơng mà có giải pháp riêng Từ đó, tổng hợp đưa giải pháp tổng thể giúp đảm bảo an ninh an toàn cho hệ thống cổng/trang TTĐT Về mặt thực nghiệm: Từ giải pháp nghiên cứu, lựa chọn mô hình triển khai thử nghiệm số biện pháp bản, quan trọng nhằm đánh giá cách khách quan giải pháp Đồng thời, đưa khuyến nghị giúp đảm bảo an ninh an toàn cho cổng/trang TTĐT Nội dung nghiên cứu Trong luận văn vào nghiên cứu vấn đề sau: Tổng quan an tồn thơng tin, có khái niệm an tồn thơng tin, tình hình an tồn thơng tin vài năm gần giới Việt Nam - Tổng quan cổng TTĐT đặc điểm cổng TTĐT Các dạng lỗi phổ biến ứng dụng web nói chung cổng/trang TTĐT nói riêng, kiểu cơng cách phịng chống để đảm bảo an tồn cho cổng TTĐT - Cấu trúc triển khai ứng dụng web đưa ưu, nhược điểm mơ hình Giúp xác định lựa chọn mơ hình triển khai cổng/trang TTĐT cách phù hợp - Cách tổ chức mơ hình mạng hợp lý, đưa mơ hình áp dụng vào triển khai đảm bảo an ninh an toàn cho cổng/trang TTĐT - Sử dụng tường lửa để bảo vệ sử dụng tường lửa ứng dụng web mod_security giúp ngăn chặn loại công phổ biến - Sử dụng hệ thống phát ngăn chặn xâm nhập Nghiên cứu, triển khai hệ thống phát ngăn chặn xâm nhập snort giúp đảm bảo an toàn cho hệ thống - Thiết lập cấu hình hệ thống máy chủ an toàn việc lưu phục hồi liệu - Chính sách vận hành an tồn - Phân tích loại hình cơng từ chối dịch vụ dạng loại hình cơng Tìm hiểu biện pháp phịng chống dạng cơng - Triển khai số biện pháp nghiên cứu hệ thống thực, đồng thời đưa đánh giá khuyến nghị việc thực giải pháp đảm bảo an ninh an toàn cho cổng/trang TTĐT - Chương TỔNG QUAN VỀ AN TOÀN THÔNG TIN VÀ CỔNG THÔNG TIN ĐIỆN TỬ 1.1 Khái niệm chung an tồn an ninh thơng tin Lĩnh vực an tồn thơng tin (ATTT) ngày quốc gia toàn giới quan tâm Hiện nay, có nhiều quan niệm khác nội hàm khái niệm trạng thái đảm bảo an tồn thơng tin cho hệ thống mạng, “an tồn, an ninh thơng tin”, “an tồn, an ninh mạng”, “bảo mật mạng máy tính”, bảo mật server, bảo mật ứng dụng web, v.v Sau số khái niệm thơng tin đảm bảo an tồn thơng tin: Thông tin: phản ánh tự nhiên xã hội ngơn từ, ký hiệu, hình ảnh v.v… hay nói rộng tất phương tiện tác động lên giác quan người Thông tin tồn nhiều dạng: thơng tin khắc đá, gỗ, in hay viết giấy, lưu thiết bị điện tử (thẻ nhớ, ổ cứng, ổ đĩa, băng từ, v.v…), thông tin luân chuyển chia sẻ mạng dạng khác (do gửi thư điện tử, đăng trang web, v.v…) Vì việc bảo vệ thông tin khỏi mối đe dọa cần thiết Đảm bảo thông tin sử dụng cách kịp thời đáng tin cậy, đảm bảo quyền riêng tư quyền thông tin Hệ thống thông tin: tập hợp thiết bị viễn thông, công nghệ thông tin bao gồm phần cứng, phần mềm sở liệu phục vụ cho hoạt động lưu trữ, xử lý, truyền đưa, chia sẻ, trao đổi, cung cấp sử dụng thông tin [6, tr.4] An tồn thơng tin: bảo vệ thông tin hệ thống thông tin tránh bị truy cập sử dụng, tiết lộ, gián đoạn, sửa đổi phá hoại trái phép nhằm bảo đảm tính nguyên vẹn, tính bảo mật tính khả dụng thơng tin [6, tr.4] An tồn thơng tin bao gồm hoạt động quản lý, nghiệp vụ kỹ thuật hệ thống thông tin nhằm bảo vệ, khôi phục hệ thống, dịch vụ nội dung thông tin nguy tự nhiên người gây Việc bảo vệ thông tin, tài sản người hệ thống thông tin nhằm bảo đảm cho hệ thống thực chức năng, phục vụ đối tượng cách sẵn sàng, xác tin cậy An tồn thơng tin bao hàm nội dung bảo vệ bảo mật thông tin, an tồn liệu, an tồn máy tính an tồn mạng [8, tr.2] An ninh thơng tin: việc bảo đảm thông tin mạng không gây phương hại đến an ninh quốc gia, trật tự an toàn xã hội, bí mật nhà nước, quyền lợi ích hợp pháp tổ chức, cá nhân [6, tr.4] Một thơng tin cần bảo vệ đảm bảo an tồn an ninh thông tin kèm ba yếu tố sau: Tính tồn vẹn, tính khả dụng tính bảo mật - Tính tồn vẹn “Integrity”: đảm bảo thơng tin không bị sửa đổi, hủy bỏ không phép Nếu thơng tin bị thay đổi bên nhận phải phát - Tính khả dụng “Availability”: cho phép thông tin sử dụng cách kịp thời đáng tin cậy lên máy chủ an tồn, tránh tình trạng tải mã độc dạng công như: Stored XSS, Ajax Injection … Bước Response headers: Những yêu cầu xử lý máy chủ trả cho ModSecurity kiểm tra trạng thái phần respone header Trước phần respone body đọc ModSecurity dựa vào tập luật để xác định có cần kiểm tra nội dung liệu phần body hay khơng Ví dụ: mã trạng thái trả 404 (Not found) lúc khơng cần kiểm tra nội dung gói tin trả Bước Response body: Sau ModSecurity hoàn thành việc kiểm tra respone header nội dung phần body kiểm tra so trùng với mẫu tập lệnh Việc hiệu để phát phòng chống xâm nhập trường hợp bước không phát cơng Ví dụ: khai thác SQL injection, hacker cố gắng sử dụng số cơng nghệ evasion việc phát request khó khăn Khi khai thác thành cơng, ModSecurity phân tích kết gói tin trả để phát câu truy vấn thành công Bước Logging: Việc ghi nhật ký log ghi nhận cảnh báo quy trình làm việc ModSecurity 2.3 Kiểu biếncủa ModSecurity ModSecurity sử dụng hai loại biến, loại thứ biến chuẩn (standard variable) chứa giá trị đơn ứng với biến, loại thứ hai biến tập (collection variable) chứa nhiều giá trị ứng với biến Ví dụ biến tập REQUEST_HEADER, chứa tất giá trị trường header thông điệp HTTP Để truy cập vào trường biến tập, sử dụng cấu trúc tên_biến: tên_trường, ví dụ luật sau: SecRule REQUEST_HEADER:Referer “acb.vn” Hầu hết biến tập sử dụng độc lập mà không cần định trường cụ thể Khi sử dụng tên biến tập độc lập tương đương với việc truy cập tới trường tập Một số biến tập có trường cố định (vd: GEO có country_name, city, ) số lại có trường khơng cố định, tùy thuộc vào nội dung máy khách gửi đến Trong biến tập, truy cập tới trường khơng tồn trường khơng gán giá trị mà không phát sinh lỗi Điều cần ghi nhớ trường hợp sửa lỗi, bỏ qua khả trường giá trị biến tập không tồn không gán giá trị Bảng 2.1: Biến chuẩn ModSecurity Biến chuẩn REMOTE_ADDR REMOTE_HOST REMOTE_USER REMOTE_IDENT REQUEST_METHOD SCRIPT_FILENAME PATH_INFO QUERY_STRING AUTH_TYPE DOCUMENT_ROOT SERVER_ADMIN SERVER_NAME SERVER_ADDR SERVER_PORT SERVER_PROTOCOL SERVER_SOFTWARE TIME_YEAR TIME_MON TIME_DAY TIME_HOUR TIME_MIN TIME_SEC TIME_WDAY TIME API_VERSION THE_REQUEST REQUEST_URI REQUEST_FILENAME Biến lưu trữ liệu yêu cầu Có ba loại biến tập ModSecurity sử dụng để lưu trữ lâu dài Thông thường, biến hết hiệu lực yêu cầu thời xử lý hoàn tất Tuy nhiên số trường hợp, lại cần lưu giữ chúng lại sử dụng chúng thao tác với yêu cầu sau Ba loại biến tập sử dụng cho mục đích lưu trữ ip, session, user Biến tập “ip” dùng để lưu thông tin người dùng thông qua địa ip Chúng ta sử dụng cho số mục đích phát người dùng yều cầu nhiều lần vào tài nguyên, số lần yêu cầu người dùng, giả sử để chống công từ chối dịch vụ (DoS) Trước sử dụng biến trên, cần khởi tạo chúng, ví dụ: SecAction initcol:ip=%{REMOTE_ADDR},nolog,pass Trong đó, REMOTE_ADD biến lưu địa ip máy khách gửi yêu cầu Để lưu trữ biến, cần cấu hình thư mục liệu cho ModSecurity thơng qua thị SecDataDir, ví dụ: SecDataDir /var/log/apache2/modsec_data Điều cần lưu ý thư mục định thị nêu phải cho phép người dùng Apache ghi liệu lên Sau cấu hình thư mục lưu trữ liệu, khởi tạo biến, ta thao tác với giá trị biến, gán giá trị thông qua hành động tên setvar Biến tập giao tác (transaction collection) Biến tập giao tác (TX) dạng biến tập giao tác, biến gán giá trị vòng đời “yêu cầu/đáp ứng” Chúng ta sử dụng TX để tạo biến riêng nhằm lưu liệu vòng chu kỳ giao tác Xét số luật sau: SecRule REQUEST_URI “select” “pass,setvar:tx.score=+1” SecRule REQUEST_URI “passwd” “pass,setvar:tx.score=+2” SecRule TX:SCORE “@gt 3” deny Bộ luật mô tả sau, thực kiểm tra URI yêu cầu, phát có chứa “select” tăng biến SCORE lên 1, phát thấy có “passwd” tăng biến SCORE lên 2, kiểm tra thấy biến SCORE lớn chặn yêu cầu lại Cấu trúc hành động setvar cho phép tạo cập nhật biến Để hủy biến, sử dụng hành động setvar thêm dấu chấm than phía trước biến, cụ thể: setvar:!tx.score Biến tập TX chứa trường định nghĩa sẵn TX:0, TX:1, TX:9 Với trường hợp TX:0 giá trị khớp sử dụng toán tử @rx @pm, biến TX:1 đến TX:9 chứa giá trị kiểu biểu thức quy thu ước lượng biểu thức quy kèm theo hành động capture 2.4 Toán tử ModSecurity Sử dụng @ để toán tử SecRule ARGS "@rx dirty" Sử dụng !@ để toán tử phủ định SecRule &ARGS "!@rx ^0$" Toán tử @rx (regular expression) toán tử mặc định, sử dụng khơng có tốn tử khác định Regex biểu thức chínhquy định thể hiện: Biểu thức Joy [Jj]oy [0-9] [a-zA-Z] ^ $ ^abc$ p.t Một số biểu thức khác: * : Hợp lệ cho ký tự chuỗi ký tự ? : Hợp lệ cho ký tự + : Hợp lệ với ký tự Sử dụng biểu thức quy luật # luật SecRule REMOTE_HOST "@rx \.abc\.vn$" deny # luật SecRule REMOTE_HOST "\.abc\.vn$" deny Với ví dụ trên, chặn tất kết nối đến trang web abc.vn Bảng 2.3: Toán tử ModSecurity Toán tử @beginsWith @containts @containsWord @endsWith @streq @within @pm @pmFromFile Bảng 2.4: Toán tử đại số ModSecurity Toán tử @eq @ge @gt @le @lt 2.5 Hành động ModSecurity (Actions) Khi yêu cầu vi phạm luật ModSecurity thực thi hành động Khi hành động khơng rõ luật sử dụng hành động luật mặc định Có loại hành động: Hành động cấp (Primary Actions): Hành động cấp định cho phép yêu cầu tiếp tục hay khơng Mỗi luật có hành động cấp Có nămhành động cấp là: Hành động Deny Pass Allow Drop Redirect Hành động cấp (Secondary Actions): Các hành động cấp bổ sung cho hành động cấp 1, luật có nhiều hành động cấp Bảng 2.6: Hành động cấp ModSecurity Hành động Status: n Exec Log Nolog Pause : n Hành động luồng (Flow Actions) Hành động chain skipnext:n Hành động mặc định (Default Action) Khi luật khơng rõ hành động dùng hành động mặc định thiết lập SecDefaultAction Ví dụ : SecDefaultAction "phase:2,deny,log,status:403" 2.6 Ghi nhật ký ModSecurity Nhật ký sửa lỗi (Debug Log): Sử dụng SecDebugLog thị lựa chọn tập tin để ghi lại thông tin sửa lỗi SecDebugLog logs/modsec-debug.log Bạn thay đổi mức độ chi tiết thông tin nhật ký thông qua thị: SecDebugLogLevel giá_trị_log Giá trị log thay đổi từ 0-9 : - Khơng ghi - Các lỗi – cảnh báo – thông báo - Chi tiết làm để xử lý ngoại lệ - Như trên, bao gồm thông tin đoạn thông tin xử lý - Ghi tất thứ bao gồm thông tin gỡ lỗi chi tiết Audit logging Nhật ký Apache thơng tin khơng cho phép lần ngược bước kẻ công Mod_security hỗ trợ audit loging với đầy đủ thông tin từ lần ngược lại q trình kẻ công, chỉnh sửa luật cho hợp lý tránh bị “dương tính giả” Có thị: SecAuditEngine On : bật audit log lên SecAuditLog logs/audit.log : tập tin lưu trữ nhật ký Ngồi cịn có SecAuditLog2 logs/audit2.log :chỉ tập tin lưu trữ nhật ký phụ Tuỳ biến thông tin nhật ký SecAuditEngine chấp nhận giá trị sau : On – ghi tất yêu cầu Off – không ghi RelevantOnly – ghi sinh lọc luật Ngồi mod_security cịn hỗ trợ ghi nhật ký dựa vào mã trạng thái, ví dụ bạn cần ghi lại yêu cầu gây lỗi 5xx : SecAuditLogRelevantStatus ^5 2.7 Một số luật ModSecurity dùng để ngăn chặn công - Luật giới hạn truy cập vào số ngày SecRule TIME_HOUR !^(8|9|10|11|12|13|14|15|16|17|18)$ deny Ở ví dụ giới hạn từ sáng tới 18 chiều - Luật loại bỏ truy vấn tìm thơng tin thẻ tín dụng SecRule RESPONSE_BODY "@verifyCC \d{13,16}" "phase:4,deny,t:removeWhitespace,log,msg:'Possible credit card number leak detected' Ở truy vấn có biến @verifyCC bao gồm biểu thức quy để kiểm sốt liệu truy cập có bao gồm số thẻ tín dụng hay chủ tài khoản từ truy vấn bên hay khơng [ 13 16 số ] Kiểm sốt theo vị trí truy cập: Để thực kỹ thuật u cần có thêm sở liệu thơng tin vị trí (GeoLocation) số nhà cung cấp cấu hình với Mod Security - $ wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/ GeoIP.dat.gz $ gunzip GeoIP.dat.gz $ mkdir /usr/local/geoip $ mv GeoIP.dat /usr/local/geoip Sau tích hợp với modsec.conf : SecGeoLookupDb "/usr/local/geoip/GeoIP.dat" Bây khóa truy cập từ số quốc gia, chẳng hạn Trung Quốc Nga sau: # Block users from China SecRule REMOTE_ADDR "@geoLookup" "deny,nolog,chain" SecRule GEO:COUNTRY_CODE "@streq CN RU" - Cân tải chia cho máy chủ khác: Chẳng hạn máy chủ châu Âu đảm đương hết yêu cầu, chia cho máy chủ Mỹ đạt đến ngưỡng nguy hiểm # Redirect European visitors to EU server SecRule REQUEST_URI "^/download/(.*)$" "phase:1,capture,chain, redirect:http://europe.example.com/download/%{TX.1}" SecRule REMOTE_ADDR "@geoLookup" "chain" SecRule GEO:COUNTRY_CONTINENT "@streq EU" - Chống cơng Brute Force: Ta bảo vệ công brute force thông qua số luật sau : #Khóa đăng nhập sau lần đăng nhập không thành công # Khởi tạo thu thập địa ip SecAction "initcol:ip=%{REMOTE_ADDR},pass,nolog" # Phát đăng nhập khơng thành cơng SecRule RESPONSE_BODY "fail" "phase:4,pass,setvar:ip.failed_logins=+1,expirevar:ip.failed_logins=300" # Khóa đăng nhập số lần đăng nhập không thành công SecRule IP:FAILED_LOGINS "@gt 3" deny - Ngăn chặn việc tải lên tập tin lây nhiễm vào hệ thống: Có thể tạo đoạn mã để sử dụng clamscan quét toàn tập tin /usr/local/bin/filescan.sh #!/bin/sh /usr/bin/clamscan $1 > /dev/null 2>&1 if [ "$?" -eq "1" ]; then echo "An infected file was found!" fi Tạo luật gọi phần mềm quyét tải tập tin lên SecRule FILES_TMPNAMES "@inspectFile /usr/local/bin/filescan.sh" "phase:2,deny,status:418" - Ngăn chặn công SQL Injection: Các từ khóa thường sử dụng công SQL Injection biểu thức thông thường tương ứng: UNION SELECT union\s+select UNION ALL SELECT union\s+all\s+select INTO OUTFILE into\s+outfile DROP TABLE drop\s+table ALTER TABLE alter\s+table LOAD_FILE load_file SELECT * select\s+* \s : Cho phép phát khoảng trắng mã thay “%20” Để chống lại công SQL Injection, ta dựa vào đặc điểm từ đưa số luật sau: - Một số luật để chống công XSS: SecRule ARGS "alert\s+*\(" "t:lowercase,deny,msg:'XSS'" SecRule ARGS "&\{.+\}" "t:lowercase,deny,msg:'XSS'" SecRule ARGS "" "t:lowercase,deny,msg:'XSS'" SecRule ARGS "javascript:" "t:lowercase,deny,msg:'XSS'" SecRule ARGS "vbscript:" "t:lowercase,deny,msg:'XSS'" - Chống công từ chối dịch vụ (DDoS) ModSecurity: Có thể sử dụng số luật để phịng chống dạng công sau: SecRuleEngine On SecAuditEngine RelevantOnly SecAuditLogType Serial SecAuditLog logs/mod_security.log # Thư mục nơi mod_security lưu biến liệu SecDataDir logs/mod_security-data # Bỏ qua yêu cầu từ địa localhost hay số địa ip khác SecRule REMOTE_ADDR "^127\.0\.0\.1$" "phase:1,nolog,allow" # Đếm yêu cầu url không tĩnh giây từ địa ip # Tăng biến yêu cầu lên sau SecRule REQUEST_BASENAME "!(\.avi$|\.bmp$|\.css$|\.doc$|\.flv$|\.gif$|\ \.htm$|\.html$|\.ico$|\.jpg$|\.js$|\.mp3$|\.mpeg$|\.pdf$|\.png$|\.pps$|\.ppt$|\.swf$|\.txt$ |\.wmv$|\.xls$|\.xml$|\.zip$)"\ "phase:1,nolog,pass,initcol:ip=%{REMOTE_ADDR},s etvar:ip.requests=+1,expirevar:ip.requests=1" # Nếu địa ip có nhiều yêu cầu giây # sét block (hết hạn giấy) tăng biến blocks lên (hết hạn giờ) SecRule ip:requests "@eq 5" "phase:1,pass,nolog,setvar:ip.block=1,expirevar:ip.block=5,setvar:ip.blocks=+1,expi revar:ip.blocks=3600" # Nếu người dùng bị chặn lần (biến blocks>5) ghi vào nhật ký trả trang http 403 SecRule ip:blocks "@ge 5" "phase:1,deny,log,logdata:'req/sec: %{ip.requests}, blocks: %{ip.blocks}',status:403" # Nếu người dùng bị chặn (biến block=1), ghi vào nhật ký trả trang http 403 SecRule ip:block "@eq 1" "phase:1,deny,log,logdata:'req/sec: %{ip.requests}, blocks: %{ip.blocks}',status:403" Có thể sử dụng mod_evasive ModSecurity để chống công từ chối dịch vụ, Mơ-đun có tác dụng giới hạn số yêu cầu đơn vị thời gian, giới hạn số kết nối tới máy chủ từ địa ip Nên có tác dụng chống cơng từ chối dịch vụ hiệu đặc biệt Flood Nhuợc điểm tốn tài nguyên hệ thống! Một số cấu hình lại mod_evasive để hạn chế công từ chối dịch vụ: DOSHashTableSize 3097 DOSPageCount DOSSiteCount 100 DOSPageInterval DOSSiteInterval DOSBlockingPeriod 10 DOSBlockingPeriod 600 Macro Shell script hữu dụng phòng chốn công Chúng ta muốn Mod Security gọi script tùy biến trường hợp công phát chẳng hạn phát cơng từ chối dịch vụ phân tán (DDOS) cần gửi cảnh báo E-mail tức cho người quản trị Những cơng việc hồn tồn thi hành dễ dàng qua Shell Script Ví dụ gửi cảnh báo E-mail công SQL Injection xảy ra: Kịch để gửi email Chúng ta tạo file email.sh thư muc /usr/local/bin #!/bin/sh echo "An SQL injection attempt was blocked" | mail – s "ModSecurity Alert" user@example.com echo Done Cấp quyền cho file : $ chmod a+rx /usr/local/bin/email.sh Sau áp dụng luật : SecRule ARGS "drop table" "deny,exec:/usr/local/bin/email.sh" Một email gửi tới user@example.com có cơng SQL Injection xảy mà ModSecurity phát thấy Có thể thấy mod_security hữu dụng việc phịng chống cơng ứng dụng web Khơng phịng chống loại cơng kể mà mod_security cịn phịng chống nhiều kiểu cơng khác Việc tìm hiểu, phát triển áp dụng mod_security phịng chống cơng ứng dụng web việc cần làm Nhất với quan, tổ chức sử dụng hệ thống mã nguồn mở cho ứng dụng web PHỤ LỤC 3: MỐT SỐ PHẦN MỀM CHỐNG VIRUS VÀ BẢO VỆ MÁY TÍNH Bản sản xuất nước - BKAV (http://www.bkav.com.vn) - CMC AntiVirus (http://www3.cmcinfosec.com) Bản thương mại nước - AirScanner (www.airscanner.com) - BitDefender (www.bitdefender.com) - Computer Associates (www.ca.com) F-Secure (www.f-secure.com) Kaspersky (www.kaspersky.com) McAfee (www.mcafee.com) Symantec (www.symantec.com) - Trend Micro (trendmicro.com) - Avast (www.avast.com) - Avira (www.avira.com) Bản miễn phí - Avast Free AntiVirus (http://www.avast.com) - Avira AntiVir Personal Free (http://www.avira.com) - Microsoft Security Essentials (http://www.microsoft.com) - Panda Cloud AntiVirus (http://www.pandasecurity.com) - Comodo Internet Security (http://comodo.com) - ... nghiên cứu giải pháp đảm bảo an ninh an toàn cho cổng/trang TTĐT Để đảm bảo cổng/trang TTĐT hoạt động ổn định, bảo đảm an ninh an tồn thơng tin việc làm cần thiết Giải vấn đề an ninh an toàn cổng/trang... nghị giúp đảm bảo an ninh an toàn cho cổng/trang TTĐT 4 Nội dung nghiên cứu Trong luận văn vào nghiên cứu vấn đề sau: Tổng quan an toàn thơng tin, có khái niệm an tồn thơng tin, tình hình an tồn... quyền), đảm bảo người không phép xem, không xem Đảm bảo an tồn an ninh thơng tin đảm bảo an ninh kỹ thuật cho hoạt động sở hạ tầng thơng tin, bao gồm đảm bảo an ninh cho phần cứng phần mềm Đảm bảo