1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Nghiên cứu giải pháp bảo mật cơ sở dữ liệu SQL server 2012 bằng phương pháp mã hóa 04

78 28 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 78
Dung lượng 1,6 MB

Nội dung

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN HỒNG GIANG NGHIÊN CỨU GIẢI PHÁP BẢO MẬT CƠ SỞ DỮ LIỆU SQL SERVER 2012 BẰNG PHƯƠNG PHÁP MÃ HĨA Ngành: Cơng nghệ thơng tin Chun ngành: Hệ thống thông tin Mã số: 60480104 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS TS Vương Đạo Vy Hà Nội - 2015 LỜI CAM ĐOAN Tôi xin cam đoan luận văn thực hiện, không chép Các đoạn trích dẫn sử dụng luận văn dẫn nguồn có độ xác cao phạm vi hiểu biết Học viên Nguyễn Hồng Giang LỜI CẢM ƠN Trước hết, em xin chân thành cảm ơn PGS TS Vương Đạo Vy trực tiếp hướng dẫn em hoàn thành luận văn Những định hướng, tài liệu hướng dẫn tận tình Thầy giúp em khắc phục điểm yếu trình thực luận văn Em xin trân trọng cảm ơn quý thầy cô giáo ngồi Trường Đại học Cơng nghệ - Đại học Quốc gia Hà Nội giảng dạy suốt trình học tập vừa qua Những kiến thức quý báu thu nhận hữu ích giúp đỡ em nhiều trình thực luận văn Mặc dù cố gắng hoàn thành luận văn khả chắn khơng tránh khỏi thiếu sót Kính mong nhận góp ý, bảo thầy giáo! Học viên Nguyễn Hồng Giang MỤC LỤC Trang Lời cam đoan i Lời cảm ơn ii Mục lục iii Danh mục từ viết tắt iv Danh mục bảng hình vẽ v MỞ ĐẦU CHƯƠNG TỔNG QUAN VỀ AN TOÀN CƠ SỞ DỮ LIỆU 1.1 Một số khái niệm 1.2 Vấn đề an toàn CSDL 1.3 Thiết kế CSDL an toàn 1.3.1 Phân tích sơ 1.3.2 Xây dựng yêu cầu sách bảo mật 1.3.3 Xây dựng khái niệm 11 1.3.4 Thiết kế cấu trúc logic 12 1.3.5 Thiết kế cấu trúc vật lý 13 1.3.6 Cài đặt chế an toàn 13 1.3.7 Kiểm tra 15 CHƯƠNG TÌNH HÌNH TẤN CƠNG CSDL HIỆN NAY VÀ GIẢI PHÁP PHỊNG CHỐNG 17 2.1 Các mối đe dọa công CSDL hàng đầu 17 2.1.1 Lạm dụng đặc quyền vượt mức đặc quyền khơng cịn dùng 18 2.1.2 Lạm dụng đặc quyền 18 2.1.3 Tấn công Input Injection 19 2.1.4 Mã độc 19 2.1.5 Lợi dụng viết kiểm toán yếu 19 2.1.6 Lợi dụng sơ hở để khai thác phương tiện lưu trữ 20 2.1.7 Khai thác CSDL có điểm yếu bị lỗi cấu hình 20 2.1.8 Rị rỉ liệu nhạy cảm khơng quản lý 20 2.1.9 Tấn công từ chối dịch vụ 21 2.1.10 Vấn đề đào tạo chuyên gia an ninh hạn chế 21 2.2 Các giải pháp phòng chống công CSDL 21 2.2.1 Phát đánh giá 23 2.2.2 Quản lý quyền người dùng 24 2.2.3 Giám sát ngăn chặn 25 2.2.4 Kiểm toán 26 2.2.5 Bảo vệ liệu 27 2.2.6 An ninh kỹ thuật 27 2.3 Một số vụ công CSDL gần 28 CHƯƠNG CÁC GIẢI PHÁP BẢO VỆ CSDL TRONG SQL SERVER 34 3.1 An toàn liệu mức cài đặt hệ thống 34 3.2 An toàn liệu mức người dùng 38 3.3 An toàn liệu mức phân quyền 41 3.4 An toàn liệu phương pháp mã hóa 43 CHƯƠNG THỰC NGHIỆM BẢO VỆ CƠ SỞ DỮ LIỆU 56 4.1 Thực nghiệm mã hóa liệu mức lưu trữ 56 4.2 Thực nghiệm mã hóa liệu mức CSDL 58 4.3 Demo ứng dụng mã hóa liệu 61 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 65 TÀI LIỆU THAM KHẢO 66 DANH MỤC CÁC TỪ VIẾT TẮT Từ viết tắt CA CSDL DBMS DCL DDL DMK DML HTTP LAN OLEDB QL SMK SID TCP UDP DANH MỤC CÁC BẢNG VÀ HÌNH VẼ Trang Hình 1.1 Kiến trúc DBMS Hình 1.2 Mơ hình tương tác ứng dụng CSDL Hình 1.3 Các mức mô tả liệu Hình 1.4 Sơ đồ thiết kế CSDL an tồn 16 Bảng 2.1 Các mối de dọa công CSDL hàng đầu năm 2015 17 Bảng 2.2 Bảng xác định giải pháp chống lại công CSDL 22 Bảng 2.3 Tỉ lệ Crypto-ransomware Ransomware 31 Hình 3.1 Quy trình mã hóa giải mã liệu 43 Hình 3.2 Mơ tả mã hóa mức lưu trữ 43 Hình 3.3 Mơ tả mã hóa mức CSDL 44 Hình 3.4 Mơ tả mã hóa mức ứng dụng 45 Hình 3.5 Hệ thống phân cấp khóa 46 MỞ ĐẦU Lý chọn đề tài Những năm gần đây, vấn đề công mạng, ăn cắp liệu số ngày tinh vi, vụ việc gây nhiều thiệt hại không cho cá nhân mà cho tổ chức công ty lớn xun quốc gia Vấn đề an tồn thơng tin trở nên nghiêm trọng vụ công mang động trị, nhằm vào quan phủ nước Trước tình hình đó, hệ quản trị sở liệu (CSDL) lưu trữ thông tin trở thành mục tiêu công nhằm gây thiệt hại cho quan, tổ chức, doanh nghiệp cá nhân Có thể thấy, vấn đề an toàn CSDL trở thành vấn đề cấp bách cần thiết Một mục tiêu an tồn CSDL ngăn chặn việc thông tin bị truy cập phát tán trái phép Trong giải pháp để đạt mục tiêu này, giải pháp mã hóa lựa chọn tương đối rộng rãi Vì tơi lựa chọn đề tài: “Nghiên cứu giải pháp bảo mật CSDL SQL Server 2012 phương pháp mã hóa” Mục tiêu nghiên cứu - Nghiên cứu tìm hiểu tổng quan an tồn CSDL Tìm hiểu tình hình cơng CSDL giải pháp phòng chống - Nghiên cứu giải pháp bảo vệ CSDL SQL Server - Thực nghiệm bảo vệ CSDL Bố cục luận văn Luận văn gồm phần Mở đầu, Chương, Kết luận Hướng phát triển: Chương Tổng quan an toàn sở liệu Chương Tình hình cơng CSDL giải pháp phòng chống Chương Các giải pháp bảo vệ CSDL SQL Server Chương Thực nghiệm bảo vệ CSDL 54 WITH PRIVATE KEY (FILE = 'D:\certificates\HumanResourceCert.pvk', DECRYPTION BY PASSWORD = 'a strong password to encrypt the private key'); Để chép chứng tới CSDL khác server, sử dụng hàm CERTENCODED() CERTPRIVATEKEY() để chuyển dạng nhị phân (kiểu VARBINARY(MAX)) khóa cho lệnh CREATE CERTIFICATE, sau: USE Marketing; SELECT CERTENCODED(CERT_ID('HumanResourceCert')) as [Certificate]; SELECT CERTPRIVATEKEY(CERT_ID('HumanResourceCert'), 'a password to encrypt the result', 'the password to decrypt the private key') as [Certificate private key]; Sau đó, chép đưa vào lệnh CREATE CERTIFICATE CSDL khác: USE HumanResources; CREATE CERTIFICATE HumanResourceCert FROM BINARY = WITH PRIVATE KEY ( BINARY = , DECRYPTION BY PASSWORD = 'the password provided to the CERTPRIVATEKEY function'); Có thể nói chứng khóa bất đối xứng để tách biệt q trình mã hóa khỏi q trình giải mã Nếu muốn giữ liệu mã hóa máy chủ mà khơng có khả để giải mã nơi cục bộ, mã hóa CSDL để giải mã CSDL khác, cần giữ khóa cơng khai máy chủ CSDL Khóa cơng khai sử dụng để mã hóa liệu, mà khơng cần mật (khóa cơng khai khơng cần bảo vệ), mã hóa liệu với khóa cơng khai mà khơng cần phải mở tồn khóa Điều thực dễ dàng với chứng Có thể làm điều theo hai cách, trước hết tạo chứng lưu khóa cơng khai, sau: USE Marketing; 55 CREATE CERTIFICATE BackupCert1 WITH SUBJECT = 'Encryption for distant decryption', EXPIRY_DATE = '2013-10-30'; BACKUP CERTIFICATE BackupCert1 TO FILE = 'E:\encryption_keys\BackupCert1.cer'; USE HumanResources; CREATE CERTIFICATE BackupCert1 FROM FILE = 'E:\encryption_keys\BackupCert1.cer'; Tiếp theo, loại bỏ khóa riêng khỏi chứng tồn sau: USE Marketing; CREATE CERTIFICATE BackupCert2 WITH SUBJECT = 'Encryption for distant decryption', EXPIRY_DATE = '2013-10-30'; BACKUP CERTIFICATE BackupCert2 TO FILE = 'E:\encryption_keys\BackupCert2.cer' WITH PRIVATE KEY ( FILE = 'E:\encryption_keys\BackupCert2.pvk', ENCRYPTION BY PASSWORD = 'SDf4(4rzdZRGefFU_8zr5é"4é"é"' ); ALTER CERTIFICATE BackupCert2 REMOVE PRIVATE KEY; ALTER CERTIFICATE BackupCert2 WITH PRIVATE KEY ( FILE = 'E:\encryption_keys pvk', DECRYPTION BY PASSWORD = 'SDf4(4rzdZRGefFU_8zr5é"4é"é"' ); 56 CHƯƠNG THỰC NGHIỆM BẢO VỆ CƠ SỞ DỮ LIỆU 4.1 Thực nghiệm Mã hóa liệu mức lưu trữ Tạo nhập liệu cho CSDL ThongTin chứa bảng KhachHang: - Bảng KhachHang gồm cột IdKhachHang, TenKhach, DiaChi, SoThe để lưu thông tin khách hàng - Thông tin nhập vào sau: Tại bước này, mở liệu từ tập tin ThongTin.mdf phần mềm Notepad, xem thơng tin khách hàng lưu CSDL Ví dụ thấy thơng tin SoThe “4567812332187654” TenKhach tương ứng “Nguyen Tuan Hung” sau: 57 Thực Mã hóa liệu mức lưu trữ sau: - Tạo khóa DMK cho CSDL: CREATE MASTER KEY ENCRYPTION BY PASSWORD='MaHoaLUUTRU@123'; - Tạo chứng bảo vệ khóa DMK: CREATE CERTIFICATE ChungNhanLUUTRU WITH SUBJECT='ThongTin LUUTRU'; Tạo khóa mã hóa CSDL (Database Encyption Key - DEK), khóa sử dụng để thực chức mã hóa cho tập tin vật lý CSDL này: CREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = AES_256 ENCRYPTION BY SERVER CERTIFICATE ChungNhanLUUTRU; Cho phép q trình mã hóa liệu: ALTER DATABASE ThongTin SET ENCRYPTION ON; 58 Đến bước này, tập tin ThongTin.mdf mã hóa Thơng tin che giấu Khi mở tập tin Thongtin.mdf phần mềm Notepad, thể xem thông tin khách hàng lưu CSDL bước nữa: 4.2 Thực nghiệm Mã hóa liệu mức CSDL - Tạo CSDL BanHang chứa bảng KhachHang: Bảng KhachHang gồm cột IdKhachHang, TenKhach, DiaChi, SoThe Trong cột SoThe lưu thơng tin số thẻ tín dụng khách hàng, thơng tin mã hóa đưa vào CSDL Có thể tạo bảng KhachHang lệnh sau: CREATE TABLE dbo.KhachHang ( 59 IdKhachHang int NOT NULL IDENTITY(1,1) PRIMARY KEY, TenKhach varchar(50) NOT NULL, DiaChi varchar(50) NOT NULL, SoThe varbinary(2000) NOT NULL) - Xây dựng thủ tục mã hóa liệu: Tạo khóa: Khóa chủ CSDL, Khóa đối xứng để mã hóa liệu đưa vào CSDL, Chứng để bảo vệ Khóa đối xứng Thực lệnh sau: CREATE CERTIFICATE ChungChiBaoVe WITH SUBJECT = 'De bao ve khoa doi xung'; CREATE SYMMETRIC KEY khoa_SoThe WITH ALGORITHM = AES_256, KEY_SOURCE = '4frT-7FGHFDfTh98#6erZ3dq#«', IDENTITY_VALUE = 'l·Fg{(ZEfd@23fz4fqeRHY&4efVql' ENCRYPTION BY CERTIFICATE ChungChiBaoVe; - Mã hóa liệu đưa vào CSDL: Khi đưa liệu vào CSDL, thực mã hóa thơng tin số thẻ tín dụng khách hàng Thực lệnh sau: INSERT INTO dbo.KhachHang (TenKhach, DiaChi, SoThe) VALUES ('Tran Tien Hung', 'Ha Noi', EncryptByKey(Key_Guid('khoa_SoThe'), '1234567887654321') ); INSERT INTO dbo.KhachHang (TenKhach, DiaChi, SoThe) VALUES ('Nguyen Manh Tien', 'Ha Noi', EncryptByKey(Key_Guid('khoa_SoThe'), '2345678118765432') ); INSERT INTO dbo.KhachHang (TenKhach, DiaChi, SoThe) VALUES ('Dao Thi Ha', 'Ha Noi', EncryptByKey(Key_Guid('khoa_SoThe'), '3456781221876543') ); INSERT INTO dbo.KhachHang (TenKhach, DiaChi, SoThe) VALUES ('Nguyen Tuan Hung', 'Ha Noi', EncryptByKey(Key_Guid('khoa_SoThe'), '4567812332187654') ); INSERT INTO dbo.KhachHang (TenKhach, DiaChi, SoThe) 60 VALUES ('Ha Ngoc Anh', 'Ha Noi', EncryptByKey(Key_Guid('khoa_SoThe'), '5678123443218765') ); Khi xem liệu mà không thực giải mã, thông tin số thẻ tín dụng khách hàng che giấu hiển thị đây: - Thực giải mã để xem liệu Để xem liệu, cần thực giải mã liệu mã hóa Thực lệnh sau: OPEN SYMMETRIC KEY khoa_SoThe DECRYPTION BY CERTIFICATE ChungChiBaoVe; SELECT IdKhachHang, TenKhach, DiaChi, CAST(DecryptByKey(SoThe) as varchar(50)) FROM dbo.KhachHang; CLOSE SYMMETRIC KEY khoa_SoThe; Kết hiển thị nhận được: 61 4.3 Demo ứng dụng mã hóa liệu - Mơ tả tốn: Chương trình minh họa công tác quản lý thông tin cán đơn vị cấp Cục thuộc Lực lượng Công an nhân dân Các thông tin quản lý bao gồm: Họ tên, Cấp hàm, Chức vụ, Phòng, Ngày sinh, Hệ số lương Các thông tin nhập vào tài khoản quản trị admin Trên thực tế, tài khoản quản lý đồng chí Tổ trưởng Tổ Xây dựng lực lượng (thuộc Phòng 1) thực theo đạo trực tiếp đồng chí Cục trưởng Thơng tin nhập vào mã hóa Các cán xem thông tin dạng giải mã theo phân quyền chương trình Chương trình phân quyền cho cán xem thông tin sau: + Các cán đơn vị xem thông tin + Các đồng chí Trưởng phịng xem thơng tin cán phịng + - Đồng chí Cục trưởng xem thơng tin cán toàn đơn vị Các bảng CSDL: + Bảng Tbl_User: Lưu thông tin tài khoản đăng nhập cán tương ứng quyền chương trình theo chức vụ cán + Bảng Phong_Ban: Lưu danh mục Phòng đơn vị 62 + Bảng Chuc_Vu: Lưu danh mục chức vụ đơn vị + Bảng Cap_Ham: Lưu danh mục cấp hàm + Bảng Nhan_Vien: Lưu thông tin cán Dữ liệu đưa vào bảng mã hóa - Giao diện chương trình + Màn hình đăng nhập: 63 + Màn hình nhập thơng tin cán bộ: + Màn hình tạo tài khoản cho cán bộ: 64 + Màn hình hiển thị thơng tin dạng mã hóa: + Màn hình hiển thị thông tin giải mã: 65 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN KẾT LUẬN Trong thời đại ngày nay, thời đại phát triển mạnh mẽ công nghệ Internet, thông tin không lưu trữ, chia sẻ nội tổ chức, doanh nghiệp mà phải chia sẻ cho nhiều đối tượng khác Cùng với việc gia tăng tình trạng cơng, ăn cắp liệu số, vấn đề an toàn CSDL đòi hỏi gắt gao Mỗi tổ chức, doanh nghiệp hay cá nhân cần phải nắm bắt đánh giá mối đe dọa công CSDL hữu, có phương án nhằm ứng phó kịp thời trước phát triển nhanh chóng nguy đe dọa cơng CSDL Vì vậy, luận văn thực nghiên cứu, tìm hiểu mối đe dọa công CSDL giải pháp phòng chống nhằm đáp ứng phần cho nhu cầu bảo mật thông tin thực tế Qua thời gian nghiên cứu, luận văn tổng hợp giới thiệu mối đe dọa công CSDL hàng đầu giải pháp phòng chống Nhìn chung, luận văn đạt mục tiêu đề Cụ thể: - Luận văn nghiên cứu tìm hiểu tổng quan an tồn CSDL Luận văn tìm hiểu tình hình cơng CSDL tổng hợp giải pháp giúp phòng chống - Luận văn nghiên cứu phương pháp bảo vệ CSDL SQL Server Bên cạnh kiến thức bản, luận văn nghiên cứu tiến hành thực nghiệm mã hóa để bảo vệ CSDL SQL Server Tuy nhiên, luận văn tồn số thiếu sót như: - Luận văn dừng lại tìm hiểu mặt lý thuyết từ nghiên cứu có - Luận văn chưa xây dựng phần mềm ứng dụng hoàn chỉnh nhằm vận dụng vào thực tế HƯỚNG PHÁT TRIỂN Với mặt tồn tại, tương lai cố gắng khắc phục để tiếp tục hoàn thiện nội dung nghiên cứu vận dụng thực tế Tiếp tục nghiên cứu chuyên sâu giải pháp phòng chống công CSDL nhằm phục vụ cho yêu cầu phát triển hệ thống thông tin 66 TÀI LIỆU THAM KHẢO Tiếng Việt Thạch An (2015), “ Những kiện bảo mật bật đầu năm 2015”, Tạp chí PC World VN (www.pcworld.com.vn) Phan Châu (2014), “Những kiện bảo mật bật 2013”, Tạp chí PC World VN (www.pcworld.com.vn) Mai Hoa (2014), “Shellshock - lỗi bảo mật nguy hiểm Heartbleed”, Tạp chí PC World VN (www.pcworld.com.vn) Trần Thị Lượng (2011), Giáo trình An tồn sở liệu, Học viện Kỹ thuật Mật mã Khoa Khoa học Kỹ thuật máy tính (2011), Giáo trình Bảo mật hệ thống thơng tin, Trường ĐH Bách Khoa TP Hồ Chí Minh Đỗ Tiến Thành (2013), “Tiêu chuẩn kỹ thuật ứng dụng CNTT quan nhà nước”, Cục Tin học hóa – Bộ Thông tin Truyền thông Nguyễn Anh Tuấn (2011), “Virtual patching - Giải pháp cho bảo mật web sở liệu”, Tạp chí An tồn thơng tin – Ban Cơ yếu Chính phủ Tiếng Anh Hamish Barwick (2015), “Australia a popular target for ransomware attacks”, Computerworld Magazine (Autralia) Danny Yadron and Melinda Beck (2015), “Health Insurer Anthem Didn’t Encrypt Data in Theft”, The Wall Street Journal (Asia Edition) 10 Rudi Bruchez (2012), Microsoft SQL Server 2012 Security Cookbook, Packt Publishing Ltd, UK 11 Imperva (2013), Top 10 Database Threats 2013, Raphael Reich, California, US 12 Imperva (2014), Top Ten Database Security Threats, Redwood Shores, California, US 13 Jeremy Kirk (2015), “Premera, Anthem data breaches linked by similar hacking tactics”, Computerworld Magazine 14 McAfee Labs (2014), Threats Report, McAfee Part of Intel Security, US 67 15 McAfee Labs (2014), Threats Predictions, McAfee Part of Intel Security, US 16 Michael Mimoso (2013), “iOS Developer Site at Core of Facebook, Apple Watering Hole Attack”, ThreatPost - The Kaspersky Lab Security News Service 17 Ray Rankins, Paul Bertucci, Chris Gallelli, Alex T SilverStein (2014), Microsoft SQL Server 2012 Unleashed – Chapter 18 Data Encyption, Pearson Education, Inc, US 18 Steve Ragan (2014), “Heartbleed to blame for Community Health Systems breach”, CSOonline (published by IDG Enterprise) 19 Trendmicro (2015), “Bad Ads and Zero-Days: Reemerging Threats Challenge Trust in Supply Chains and Best Practices”, Trendmicro Australia 20 Verizon (2014), 2014 Data Breach Investigations Report, Verizon Trademark Services LLC, US 21 Luc Bouganim, Yanli GUO (2009), “Database Encryption”, INRIA Rocquencourt, Le Chesnay, France 22 Robert Westervelt (2014), “Heartbleed Attack Linked To Community Health Systems Breach”, CRN News, Analysis and Perspective ... Trong giải pháp để đạt mục tiêu này, giải pháp mã hóa lựa chọn tương đối rộng rãi Vì tơi lựa chọn đề tài: ? ?Nghiên cứu giải pháp bảo mật CSDL SQL Server 2012 phương pháp mã hóa? ?? Mục tiêu nghiên cứu. .. quan an tồn sở liệu Chương Tình hình cơng CSDL giải pháp phịng chống Chương Các giải pháp bảo vệ CSDL SQL Server Chương Thực nghiệm bảo vệ CSDL CHƯƠNG TỔNG QUAN VỀ AN TOÀN CƠ SỞ DỮ LIỆU Việc lưu... toàn liệu mức người dùng 38 3.3 An toàn liệu mức phân quyền 41 3.4 An tồn liệu phương pháp mã hóa 43 CHƯƠNG THỰC NGHIỆM BẢO VỆ CƠ SỞ DỮ LIỆU 56 4.1 Thực nghiệm mã hóa

Ngày đăng: 11/11/2020, 21:44

TỪ KHÓA LIÊN QUAN

w