Chống tấn công tiêm nhiễm SQL sử dụng các khuôn mẫu hợp lệ theo bối cảnh (Luận văn thạc sĩ)

54 114 0
Chống tấn công tiêm nhiễm SQL sử dụng các khuôn mẫu hợp lệ theo bối cảnh (Luận văn thạc sĩ)

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chống tấn công tiêm nhiễm SQL sử dụng các khuôn mẫu hợp lệ theo bối cảnh (Luận văn thạc sĩ) 14Chống tấn công tiêm nhiễm SQL sử dụng các khuôn mẫu hợp lệ theo bối cảnh (Luận văn thạc sĩ) 14Chống tấn công tiêm nhiễm SQL sử dụng các khuôn mẫu hợp lệ theo bối cảnh (Luận văn thạc sĩ) 14Chống tấn công tiêm nhiễm SQL sử dụng các khuôn mẫu hợp lệ theo bối cảnh (Luận văn thạc sĩ) 14Chống tấn công tiêm nhiễm SQL sử dụng các khuôn mẫu hợp lệ theo bối cảnh (Luận văn thạc sĩ) 14Chống tấn công tiêm nhiễm SQL sử dụng các khuôn mẫu hợp lệ theo bối cảnh (Luận văn thạc sĩ) 14Chống tấn công tiêm nhiễm SQL sử dụng các khuôn mẫu hợp lệ theo bối cảnh (Luận văn thạc sĩ) 14Chống tấn công tiêm nhiễm SQL sử dụng các khuôn mẫu hợp lệ theo bối cảnh (Luận văn thạc sĩ) 14Chống tấn công tiêm nhiễm SQL sử dụng các khuôn mẫu hợp lệ theo bối cảnh (Luận văn thạc sĩ) 14Chống tấn công tiêm nhiễm SQL sử dụng các khuôn mẫu hợp lệ theo bối cảnh (Luận văn thạc sĩ) 14

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THANH LIÊM CHỐNG TẤN CÔNG TIÊM NHIỄM SQL SỬ DỤNG CÁC KHUÔN MẪU HỢP LỆ THEO BỐI CẢNH LUẬN VĂN THẠCCÔNG NGHỆ THÔNG TIN Hà Nội – 2017 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THANH LIÊM CHỐNG TẤN CÔNG TIÊM NHIỄM SQL SỬ DỤNG CÁC KHUÔN MẪU HỢP LỆ THEO BỐI CẢNH Ngành: Công nghệ thông tin Chuyên ngành: Truyền liệu Mạng máy tính Mã số: Chuyên ngành đào tạo thí điểm LUẬN VĂN THẠCCƠNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: TS NGUYỄN ĐẠI THỌ Hà Nội – 2017 Lời cam đoan: Những kết nghiên cứu trình bày luận văn hồn tồn trung thực, tơi, khơng vi phạm điều luật sở hữu trí tuệ pháp luật Việt Nam Nếu sai, xin chịu trách nhiệm hoàn toàn trước pháp luật TÁC GIẢ LUẬN VĂN Nguyễn Thanh Liêm Danh mục ký hiệu từ viết tắt STT Ký hiệu Ý nghĩa AMNESIA Kỹ thuật chống công tiêm nhiễm AMNESIA (Analysis and Monitoring for Neutralizing SQL-Injection Attacks) API Giao diện lập trình ứng dụng (Application Programming Interface) CSDL Cơ sở liệu SQL Ngơn ngữ truy vấn có cấu trúc (Structured Query Language) Danh mục hình vẽ Hình 1 Một Tấn cơng tiêm nhiễm SQL điển hình Hình Kiến trúc đề xuất SDriver [4, pp 5] 19 Hình 2 Chế độ huấn luyện SDriver 21 Hình Chế độ thực thi SDriver 22 Hình Ví dụ vai trò stack trace 23 Hình Kiến trúc thực tế SDriver 25 Hình Giao diện ứng dụng web demo 26 Hình Một kết SDriver hoạt động chế độ huấn luyện 27 Hình Thông báo trùng lặp SDriver 28 Hình Bảng signatures ssql 28 Hình Phương thức rút bỏ liệu câu truy vấn 32 Hình Các mẫu loại bỏ khỏi câu truy vấn 33 Hình 3 Ví dụ kỹ thuật cơng tautologies 34 Hình Ví dụ kỹ thuật cơng thích cuối dòng 35 Hình Ví dụ kỹ thuật cơng truy vấn union 36 Hình Ví dụ kỹ thuật cơng truy vấn piggy-backed 37 Hình Cơ chế rút bỏ liệu câu truy vấn đề xuất 39 Hình Một số mẫu công tiêm nhiễm SQL bảng anomaly 40 Hình Một kết SDriver hoạt động chế độ huấn luyện với chế rút bỏ liệu 41 Hình Kết SDriver không phát truy vấn bất thường 42 Hình Tấn công Tautologies bị phát ngăn chặn 42 Hình 4 Tấn cơng thích cuối dòng bị phát ngăn chặn 43 Hình Tấn cơng truy vấn Union bị phát ngăn chặn 44 Hình Tấn cơng truy vấn Piggy-Backed bị phát ngăn chặn 44 Hình Kiểm thử công tiêm nhiễm SQL với tham số code theo phương thức GET 47 Hình Ví dụ thơng tin phương thức POST trang login 48 Hình Kiểm thử công tiêm nhiễm SQL với tham số password theo phương thức POST 49 Danh mục bảng, biểu Bảng Thời gian thực thi truy vấn phiên SDriver 45 Bảng Kết ngăn chặn công tiêm nhiễm SQL 50 MỤC LỤC CHƯƠNG TỔNG QUAN VỀ TẤN CƠNG TIÊM NHIỄM SQLCÁC PHƯƠNG PHÁP PHỊNG CHỐNG 1.1 Khái niệm công tiêm nhiễm SQL 1.2 Phân loại công tiêm nhiễm SQL 10 1.2.1 Cơ chế tiêm nhiễm 10 1.2.2 Mục đích cơng 11 1.2.3 Kỹ thuật công 12 1.3 Các phương pháp ngăn chặn công tiêm nhiễm SQL 14 1.3.1 Phương pháp mã phòng thủ 14 1.3.2 Phương pháp phát ngăn chặn 16 1.4 Tóm Tắt 17 CHƯƠNG PHƯƠNG PHÁP SDRIVER TRONG CHỐNG TẤN CÔNG TIÊM NHIỄM SQL 19 2.1 Phương pháp chống công tiêm nhiễm SQL sử dụng khuôn mẫu hợp lệ theo bối cảnh, SDriver 19 2.2 Cách thức hoạt động SDriver 20 2.2.1 Chế độ huấn luyện 20 2.2.2 Chế độ thực thi 22 2.3 Stack trace 23 2.4 Mô hoạt động SDriver 24 2.4.1 Môi trường mô 24 2.4.2 Chạy mô hoạt động SDriver 26 2.5 Tóm tắt 30 CHƯƠNG ĐỀ XUẤT CẢI TIẾN CHỐNG TẤN CÔNG TIÊM NHIỄM SQL SỬ DỤNG CÁC KHUÔN MẪU HỢP LỆ THEO BỐI CẢNH 32 3.1 Phân tích hoạt động SDriver 32 3.2 Đề xuất cải tiến 37 3.2.1 Cơ chế rút bỏ liệu câu truy vấn 37 3.2.2 Triển khai chế rút bỏ liệu đề xuất 39 3.3 Tóm tắt 40 CHƯƠNG KẾT QUẢ THỰC NGHIỆM ĐÁNH GIÁ 41 4.1 Mô thực nghiệm SDriver với chế rút bỏ liệu 41 4.2 Đánh giá hoạt động SDriver đề xuất 45 4.2.1 Đánh giá chi phí hoạt động 45 4.2.2 Đánh giá độ xác 46 KẾT LUẬN 51 Tài liệu tham khảo 52 MỞ ĐẦU Ngày nay, ứng dụng web trở nên thiết yếu sống hàng ngày người Giao dịch ngân hàng online, mua bán online, mạng xã hội, blog… ứng dụng web phổ biến chúng mục tiêu ưa thích tin tặc Trong cơng mạng cơng mà mục tiêu ứng dụng web phổ biến gây nhiều thiệt hại cho tổ chức cá nhân Đặc biệt dạng công tiêm nhiễm SQL Tiêm nhiễm SQL 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 nhiễm (inject) thi hành câu lệnh SQL trái phép (không người phát triển ứng dụng lường trước) Hậu tai hại cho phép kẻ cơng thực thao tác xóa, hiệu chỉnh, … có tồn quyền sở liệu ứng dụng, chí server mà ứng dụng chạy Các nhà nghiên cứu đề xuất nhiều phương pháp phòng chống cơng tiêm nhiễm SQL, nhìn chung chia thành hai loại phương pháp thực hành mã phòng thủ (defensive coding pratices) phương pháp phát ngăn ngừa (dection and prevention techniques) Thực hành mã phòng thủ dựa vào người phát triển ứng dụng cố gắng loại bỏ nguy từ mã nguồn Phương pháp phụ thuộc nhiều vào chủ quan người phát triển ứng dụng, khó đảm bảo ứng dụng web khơng có lỗ hổng thay đổi ứng dụng web Trong phương pháp phát ngăn ngừa lại tập trung vào việc tự động phát công tiêm nhiễm SQL ngăn chặn chúng Các nhà nghiên cứu đề xuất loạt kỹ thuật chống công tiêm nhiễm SQL theo phương pháp Nhìn chung kỹ thuật dựa vào việc xây dựng tập hợp tình cơng có xây dựng tập hợp câu truy vấn hợp lệ Với đa dạng phát triển nhanh chóng dạng cơng tiêm nhiễm SQL khó xác định tập hợp công tiêm nhiễm SQL Trong để xác định truy vấn hợp lệ lại dễ dàng nhiều Dr Dimitris Mitropoulos Prof Diomidis Spinellis đề xuất kỹ thuật chống công tiêm nhiễm SQL khuôn mẫu hợp lệ theo bối cảnh (location-specific signatures prevent SQL injection attack) Một trình điều khiển gọi SDriver thêm vào ứng dụng web trình điều khiển kết nối tới sở liệu SDriver chịu trách nhiệm phát ngăn chặn công tiêm nhiễm SQL thông qua sở liệu câu truy vấn hợp lệ gắn với bối cảnh Do SDriver kỹ thuật đơn giản hiệu việc chống công tiêm nhiễm SQL Hơn triển khai kỹ thuật việc thay mã phần kết nối tới sở liệu không ảnh hưởng nhiều tới hiệu hệ thống Tuy phương pháp tồn vấn đề khiến kẻ cơng tiêm nhiễm thành cơng Xuất phát từ thực tế đó, luận văn tập trung nghiên cứu: “Chống công tiêm nhiễm SQL sử dụng khuôn mẫu hợp lệ theo bối cảnh” Nội dung luận văn gồm năm chương: Chương 1: Tổng quan công tiêm nhiễm SQL phương pháp phòng chống Trong chương đề cập đến lý thuyết công tiêm nhiễm SQL, phương pháp phòng chống cách tổng quát Chương 2: Phương pháp chống công tiêm nhiễm SQL sử dụng khuôn mẫu hợp lệ theo bối cảnh - SDriver Chương trình bày trạng phương pháp chống công tiêm nhiễm SQL sử dụng khuôn mẫu hợp lệ theo bối cảnh Phân tích vấn đề tồn Chương 3: Đề xuất cải tiến chống công tiêm nhiễm SQL sử dụng khuôn mẫu hợp lệ theo bối cảnh Đưa phương pháp cải tiến chống công tiêm nhiễm SQL sử dụng khuôn mẫu hợp lệ theo bối cảnh Chương 4: Kết thực nghiệm đánh giá Chương trình bày kết thực nghiệm phương pháp cải tiến đưa đánh giá phương pháp cải tiến ... Đề xuất cải tiến chống công tiêm nhiễm SQL sử dụng khuôn mẫu hợp lệ theo bối cảnh Đưa phương pháp cải tiến chống công tiêm nhiễm SQL sử dụng khuôn mẫu hợp lệ theo bối cảnh Chương 4: Kết thực... dụng khuôn mẫu hợp lệ theo bối cảnh - SDriver Chương trình bày trạng phương pháp chống công tiêm nhiễm SQL sử dụng khn mẫu hợp lệ theo bối cảnh Phân tích vấn đề tồn Chương 3: Đề xuất cải tiến chống. .. PHƯƠNG PHÁP SDRIVER TRONG CHỐNG TẤN CÔNG TIÊM NHIỄM SQL 19 2.1 Phương pháp chống công tiêm nhiễm SQL sử dụng khuôn mẫu hợp lệ theo bối cảnh, SDriver 19 2.2 Cách thức hoạt động SDriver

Ngày đăng: 18/01/2018, 16:36

Từ khóa liên quan

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

Tài liệu liên quan