Nghiên cứu và xây dựng hệ thống giám sát website trường Đại học Sư phạm Kỹ thuật Hưng Yên

6 22 0
Nghiên cứu và xây dựng hệ thống giám sát website trường Đại học Sư phạm Kỹ thuật Hưng Yên

Đang tải... (xem toàn văn)

Thông tin tài liệu

Mục tiêu nghiên cứu của bài viết này là đề xuất giải pháp chống tấn công thay đổi nội dung từ việc cải tiến thuật toán Rabin Fingerprint áp dụng cho các website trường ĐH SPKT Hưng Yên, từ đó có thể mở rộng cho các website khác trên internet.

ISSN 2354-0575 NGHIÊN CỨU VÀ XÂY DỰNG HỆ THỐNG GIÁM SÁT WEBSITE TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT HƯNG YÊN Vũ Xuân Thắng, Đặng Vân Anh, Trần Đỗ Thu Hà Trường Đại học Sư phạm Kỹ thuật Hưng Yên Ngày tòa soạn nhận báo: 10/10/2017 Ngày phản biện đánh giá sửa chữa: 12/11/2017 Ngày báo chấp nhận đăng: 15/11/2017 Tóm tắt: Trong báo chúng tơi trình bày q trình thiết kế, cài đặt thử nghiệm giải pháp bảo đảm an toàn cho website trường ĐH SPKT Hưng Yên Cụ thể nghiên cứu phương pháp công giải pháp phịng chống cơng website Internet Nhóm nghiên cứu đề xuất giải pháp chống công thay đổi nội dung từ việc cải tiến thuật toán Rabin Fingerprint áp dụng cho website trường ĐH SPKT Hưng Yên, từ mở rộng cho website khác internet Từ khoá: web security, Rabin fingerprint application, web protected Giới thiệu chung Ngày nhu cầu truyền tải thông tin lớn, việc ứng dụng website, phương tiện quảng bá thông tin không dừng lại doanh nghiệp mà hướng đến người dùng cá nhân Từ đó, nhu cầu đảm bảo an tồn thơng tin truyền tải website trở thành chủ đề nóng xã hội Nắm bắt xu đó, nhóm tác giả thực nghiên cứu vấn đề công cách thức phịng tránh cơng vào website internet Để công vào website hacker thực khai thác số lỗ hổng từ Hệ điều hành, hệ quản trị sở liệu, dịch vụ internet, lỗi lập trình… [1] Các lỗ hổng bảo mật hệ thống điểm yếu tạo ngưng trệ dịch vụ, thêm quyền người sử dụng cho phép truy nhập không hợp pháp vào hệ thống Các lỗ hổng nằm dịch vụ Sendmail, Web, Ftp Ngồi lỗ hổng cịn tồn tại hệ điều hành Windows, Unix ứng dụng mà sử dụng thường xuyên Word, Excel, [2] Trong phần tổng kết kiểu công phổ biến nhằm vào website Chúng nhắc lại cách tiếp cận giải pháp chủ yếu áp dụng để phịng, chống kiểu cơng Đây sở hình thày phát triển giải pháp giám sát website ý tưởng nhóm tác giả Quá trình thiết kế, thực nghiệm phản ánh kết khả quan giải pháp đưa báo Kỹ thuật công Website giải pháp phịng chống 2.1 Tấn cơng SQL Injection SQL Injection kĩ thuật cho phép kẻ công lợi dụng lỗ hổng việc kiểm tra liệu nhập ứng dụng web, thông báo lỗi hệ quản trị sở liệu để “tiêm vào” (inject) thi hành câu lệnh SQL bất hợp pháp gây ảnh hưởng tới liệu người dùng Lỗi thường xảy ứng dụng Web có liệu quản lí hệ quản trị sở liệu SQL Server, MySQL, Oracle, [3] Có bốn dạng thơng thường bao gồm: Tấn công xác thực (authorization bypass), sử dụng câu lệnh SELECT, sử dụng câu lệnh INSERT, sử dụng stored-procedures [2] - Tấn công xác thực (authorization bypass): với dạng cơng này, tin tặc dễ dàng vượt qua trang đăng nhập nhờ vào lỗi dùng câu lệnh SQL sở liệu ứng dụng web - Dạng công sử dụng câu lệnh SELECT: Dạng công kẻ công lợi dụng sơ hở thông báo lỗi từ hệ thống để dị tìm điểm yếu từ thực công qua câu truy vấn liệu - Dạng sử dụng câu lệnh INSERT: thông thường ứng dụng web cho phép người dùng đăng kí tài khoản để tham gia Chức thiếu sau đăng kí thành cơng, người dùng xem hiệu chỉnh thơng tin SQL Injection dùng hệ thống khơng kiểm tra tính hợp lệ thơng tin nhập vào - Dạng công sử dụng stored-procedures: việc công stored-procedures gây tác hại lớn ứng dụng thực thi với quyền quản trị hệ thống ‘sa’ Ví dụ, ta thay đoạn mã tiêm vào dạng: ‘; EXEC xp_cmdshellcmd.exe dir C: ‘ Lúc hệ thống thực lệnh liệt kê thư mục ổ đĩa C:\ cài đặt server Việc phá hoại kiểu tuỳ thuộc vào câu lệnh đằng sau cmd.exe Khoa học & Công nghệ - Số 16/Tháng 12 - 2017 Journal of Science and Technology 71 ISSN 2354-0575 dụng XSS để lấy thông tin quan trọng: cookie, username, password Ở sử dụng XSS để đánh cắp cookies nạn nhân (victim) - Cách chèn script: + Sử dụng Java script: javascript: alert(document.cookie) + Dùng file.php: javascript:location=”http://hostcuaban/ cookie.php?cookie=”+(docum ent.cookie) Hình 2.1 Mơ hình cơng SQL Injection Để phịng tránh lỗi SQL injection ta thực hai mức: - Kiểm soát chặt chẽ liệu nhập vào: Để phịng tránh nguy xảy ra, bảo vệ câu lệnh SQL cách kiểm soát chặt chẽ tất liệu nhập nhận từ đối tượng Request - Thiết lập cấu hình an tồn cho hệ quản trị sở liệu 2.2 Tấn công XSS (Cross Site Scripting) Cross-Site Scripting (XSS) kĩ thuật công phổ biến hiên nay, đồng thời vấn đề bảo mật quan trọng nhà phát triển web người sử dụng web Ngay trang www.fbi.gov, www.yahoo.com bị lỗi XSS Bất kì website cho phép người sử dụng đăng thông tin mà khơng có kiểm tra chặt chẽ đoạn mã nguy hiểm tiềm ẩn lỗi XSS [2] Thường XSS xảy chỗ mà người dùng nhập liệu vào sau nhận thông báo trả Nên thường kiểm tra ô đăng nhập (login) đầu vào Khi nhập chuỗi kí tự mà kết Server trả có liên quan tới chuỗi mà bạn nhập có khả trang bị mắc lỗi XSS [5] Hình 2.2 Mơ hình cơng XSS Thông thường kẻ công (attacker) sử 72 Hàm location để chuyển trình duyệt đến trang khác, lúc document.cookie thay giá trị cookie Đối với ứng dụng web mã nguồn mở, bạn tham khảo danh sách lỗ hổng chương trình bạn trang web chứa thông tin bảo mật securityfocus.com, securiteam com Tuy nhiên website tự viết mã nguồn bạn khơng thể áp dụng phương pháp Trong trường hợp bạn cần đến chương trình dị tìm kiếm (scanner) tự động như: N-Stealth hay AppScan, chương trình qt tìm hiệu quả, bạn khơng kiểm tra lỗi XSS mà cịn cho phép bạn kiểm tra lỗi khác Website đó, server [5] Có nhiều cách để giải vấn đề như: - Chỉ chấp nhận liệu hợp lệ - Từ chối nhận liệu hỏng - Liên tục kiểm tra lọc liệu 2.3 Tấn công từ chối dịch vụ DOS Tấn công DOS kiểu công mà người làm cho hệ thống sử dụng, làm cho hệ thống chậm cách đáng kể với người dùng bình thường, cách làm tải tài nguyên hệ thống Các kiểu công thuộc phương thức đa dạng [9]: - Tấn công chiếm dụng tài nguyên (Resource Depletion): Bằng cách lạm dụng trình giao tiếp giao thức mạng gói tin dị thường, kẻ cơng chiếm dụng nguồn tài nguyên hệ thống nhớ (RAM) vi xử lý (CPU)… khiến cho người dùng chia sẻ không truy xuất hệ thống hệ thống không đủ khả xử lý - Tấn công SYN: Được xem kiểu công DOS kinh điển Lợi dụng sơ hở thủ tục TCP “bắt tay ba chiều”, máy khách (client) muốn thực kết nối (connection) với máy chủ (server) thực việc bắt tay ba lần (three-ways-handshake) thơng qua gói tin (packet) Khoa học & Công nghệ - Số 16/Tháng 12 - 2017 Journal of Science and Technology ISSN 2354-0575 - Tấn công chiếm dụng băng thơng (Bandwidth Depletion): Có loại cơng chính: + Thứ làm ngập cách gửi liên tục gói tin có kích thước lớn đến hệ thống nạn nhân, làm nghẽn băng thông nạn nhân + Thứ hai sử dụng mạng khuếch đại, kẻ công gửi thông tin đến địa phát quảng bá (broadcast), tất hệ thống mạng nạn nhân (victim) phạm vi truy xuất địa quảng bá gửi lại hệ thống nạn nhân thông điệp phản hồi cho máy nạn nhân chấp nhận trao đổi liệu Phương pháp khuếch đại dòng lưu lượng làm cho hệ thống nạn nhân giảm băng thơng đáng kể Có ba giai đoạn q trình phịng chống cơng DOS: - Giai đoạn ngăn ngừa: tối thiểu hóa lượng Agent, tìm vơ hiệu hóa Handler - Giai đoạn đối đầu với công: Phát ngăn chặn công, làm suy giảm dừng công, chuyển hướng công - Giai đoạn sau công xảy ra: thu thập chứng rút kinh nghiệm Các giai đoạn chi tiết phòng chống DOS: - Tối thiểu hóa số lượng Agent: Từ phía người dùng (user), phương pháp tốt để ngăn ngừa công DOS người dùng mạng tự đề phịng khơng để bị lợi dụng cơng hệ thống khác Muốn đạt điều ý thức kỹ thuật phòng chống phải phổ biến rộng rãi cho người dùng mạng Các người dùng mạng phải liên tục thực trình bảo mật máy vi tính Một số giải pháp tích hợp sẵn khả ngăn ngừa việc cài đặt đoạn mã (code) nguy hiểm vào phần cứng (hardware) phần mềm (software) hệ thống Về phía người dùng mạng họ nên cài đặt cập nhật liên tục phần mềm phòng chống virus, sửa lỗi hệ điều hành [6] - Tìm vơ hiệu hóa xử lý (handler): Một nhân tố vô quan trọng công mạng (attack-network) xử lý (handler), phát vơ hiệu hóa xử lý khả phịng chống công DOS thành công cao Xây dựng hệ thống đảm bảo an ninh Website cho trường ĐHSPKT Hưng Yên 3.1 Yêu cầu Thực bước cần thiết để trì an ninh cho Hệ điều hành (HĐH): ● Lập kế hoạch cài đặt, triển khai HĐH máy chủ thành phần khác cho Webserver ● Vá cập nhật HĐH máy chủ theo u cầu ● Hardening (cứng hóa) cấu hình HĐH máy chủ để giải tương xứng vấn đề an ninh ● Cài đặt cấu hình kiểm sốt bảo mật bổ Khoa học & Công nghệ - Số 16/Tháng 12 - 2017 sung (additional security controls) cần thiết ● Kiểm tra HĐH máy chủ để đảm bảo bốn bước trước giải đầy đủ tất vấn đề an ninh 3.2 Xây dựng chương trình đảm bảo an ninh hệ thống Một kiểu công biết rộng rãi công thay đổi Website.Nó thường mã độc (virus, worm, trojan, loại mã độc khác), thiết kế để xóa bỏ, sửa đổi, thay trang web webserver Những công thay đổi Website thực để xâm phạm tính tồn vẹn Web hình thức sau: - Thay đổi nội dung trang Web - Thay đổi phần nội dung trang Web - Thay toàn trang Web - Sử dụng lại trang Web cũ - Thay đổi bề trang Web - Chuyển hướng trang web - Phá hủy xóa bỏ trang Web Bài báo đề xuất xây dựng hệ thống giám sát website nhằm phát kịp thời công (ở trên) hệ thống đa kiểm tra dựa thuật toán dấu vân tay nhanh (fast fingerprint algorithm) để đảm bảo tính tồn vẹn trang web đồng thời tạo thơng điệp cảnh báo có ý nghĩa phục hồi lại trang web bị công 3.3 Hàm băm mật mã Hàm băm tảng cho nhiều ứng dụng mã hóa Có nhiều thuật tốn để thực hàm băm, số đó, phương pháp SHA-1 MD5 thường sử dụng phổ biến từ thập niên 1990 đến [4] Hàm băm mật mã phải có khả chống lại loại cơng mật mã, tối thiểu phải đảm bảo có tính chất sau: ● Kháng tiền ảnh (Pre-image resistance): Với mã băm h bất kỳ, khó tìm thơng điệp m mà h = hash(m) ● Kháng tiền ảnh thứ hai (Second pre-image resistance): Với thông điệp m1 bất kỳ, khó tìm thơng điệp thứ hai m2 cho m1 ≠ m2 hash(m1) = hash(m2) ● Kháng xung đột (Collision resistance): Khó tìm cặp thơng điệp m1 m2 cho m1 ≠ m2 hash(m1) = hash(m2) Thực hiện: Bước 1: Gọi H trạng thái có kích thước n bit, f “hàm nén” thực thao tác trộn khối liệu với trạng thái hành Bước 2: Khởi gán H0 vector khởi Journal of Science and Technology 73 ISSN 2354-0575 tạo Bước 3: Hi = f(Hi-1,Mi) với i = 1, 2, 3, …, s Khi đó: Hs thơng điệp rút gọn thơng điệp M ban đầu Hình 3.1 Sơ đồ Merkel-Damgard 3.4 Thuật tốn Rabin Fingerprint Thuật toán Rabin Fingerprint nhiều thuật tốn Fingerprint thực khóa cơng khai sử dụng đa thức trường giới hạn [10] Thuật toán sử dụng hệ thống sau: ● Đầu vào: Tài liệu (trang web công khai) ● Đầu ra: Dấu vân tay tài liệu (các giá trị băm tài liệu đó) Bước 1: Bắt đầu Bước 2: Xử lý văn bản, xoá hết tất khoảng trắng kí tự đặc biệt (như: , %,!, …) Bước 3: Chia khối văn xử lý thành chuỗi có độ dài K // Số lượng chuỗi có độ dài K số lượng giá trị băm (mã băm) (m-K+1), với m kích thước tài liệu Bước 4: Tính tốn giá trị băm chuỗi cách tính H(P) sau: // H(P) tuyến tính n (n độ dài P) Bước 5: Lưu lại tất giá trị băm văn Bước 6: Kết thúc 3.5 Thuật toán Rabin Fingerprint cải tiến Thuật toán cải tiến đề xuất hệ thống sau: Đầu vào: Tài liệu (trang web công khai) Đầu ra: Dấu vân tay tài liệu (các giá trị băm tài liệu đó) Bước 1: Bắt đầu Bước 2: Xử lý văn bản, xoá hết tất khoảng trắng kí tự đặc biệt (như: , %, !, …) từ mã HTML (mã trang web) để thu khối văn túy (pure text block) 74 Bước 3: Chia văn M thành K khối, khối có kích thước n K=m/n với m kích thước văn M, n số nguyên dương cho trước kích thước chuỗi Bước 4: Tính mã băm H(P) cho chuỗi sau: Khởi tạo: Tr = T[r r+n-1]; K=0; H(S) = S(n) + 2*S(n-1) + 4*S(n-2) + … + (2n-1)*S(1); While (K

Ngày đăng: 28/04/2021, 02:16

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan