1 bình luận về an ninh cơ sở dữ liệu [1] [3]1.1. lỗ hổng cơ sở dữ liệu [2]1.1.1. dữ liệu và chủ đềDữ liệu là thành phần chính mà toàn bộ tổ chức phụ thuộc. Phụ thuộc này là rất mạnh mẽ rằng sự thành công và thất bại của mục tiêu của tổ chức dựa vào chất lượng và số lượng dữ liệu. Để tự nhiên tổ chức không thể đủ khả năng để mất dữ liệu quan trọng hiện nay về tổ chức và kinh doanh của mình. Chính đoạn dữ liệu được lưu trữ trong kho lưu trữ được gọi là cơ sở dữ liệu [6] [17]. Dữ liệu được lưu trữ trong cơ sở dữ liệu sẽ được cấu trúc và thường được lưu trữ trong các hình thức của các bảng quan hệ như hầu hết các tổ chức sử dụng cơ sở dữ liệu quan hệ. Như mô hình dữ liệu quan hệ được sử dụng, dữ liệu được lưu trữ trong bảng quan hệ khác nhau có liên quan đến nhau. Hệ thống quản lý cơ sở dữ liệu (DBMS) là một bộ các ứng dụng đó giúp đỡ trong việc quản lý dữ liệu trình bày trong cơ sở dữ liệu [1]. Nó giúp để tổ chức các dữ liệu cho hiệu suất tốt hơn và nhanh hơn truy bằng cách duy trì chỉ số. Nó giúp giữ gìn bản ghi của giao dịch này giúp trong việc khôi phục dữ liệu. DBMS thực hiện chức năng của kiểm soát concurrency. DBMS cũng thực hiện các hoạt động phục hồi dữ liệu cơ sở dữ liệu. Như dữ liệu được lưu trữ trong cơ sở dữ liệu có thể là quan trọng, nó là quan trọng đối với an toàn của nó. Cơ sở dữ liệu có thể bị tấn công trong nhiều cách. Có là một khả năng tấn công dữ liệu được lưu trữ trong cơ sở dữ liệu như cơ sở dữ liệu được giao với một số ứng dụng và bằng cách ngăn trở các ứng dụng; ta có thể tấn công các cơ sở dữ liệu. Tình hình trở nên quan trọng khi người sử dụng cơ sở dữ liệu đang rò rỉ thông tin cho thế giới bên ngoài. Bảo mật máy tính luôn địa chỉ ba khía cạnh quan trọng của máy tính liên quan đến hệ thống cụ thể là bảo mật, tính toàn vẹn và tính sẵn sàng. Bảo mật đảm bảo máy tính đó liên quan đến tài sản được truy cập chỉ bằng người dùng được ủy quyền. Liêm chính có nghĩa là máy tính tài sản có thể được sửa đổi bởi người dùng xác thực bằng cách được ủy quyền. Tình trạng sẵn có, đảm bảo rằng tài sản có thể truy cập cho người dùng được ủy quyền tại thời điểm thích hợp [1]. Cơ sở dữ liệu là một tài sản máy tính để bảo mật, tính toàn vẹn và tính sẵn sàng nên được xem xét trước khi áp dụng bất kỳ chính sách bảo mật trên hệ thống cơ sở dữ liệu. Có là một số yêu cầu bảo mật cho một cơ sở dữ liệu như vật lý, hợp lý và tính toàn vẹn phần tử cùng với auditablity, kiểm soát truy cập, xác thực người dùng và dữ liệu sẵn có [1]. Vật lý cơ sở dữ liệu toàn vẹn đề với vấn đề vật lý liên quan đến cơ sở dữ liệu như mất điện. Vì vậy một cơ sở dữ liệu nên được phục hồi từ các loại thất bại. Cơ sở dữ liệu hợp lý toàn vẹn đề với việc duy trì và bảo quản cấu trúc và các quan hệ trong cơ sở dữ liệu. Yếu tố toàn vẹn duy trì tính chính xác của phần tử dữ liệu. Auditablity đảm bảo theo dõi các thay đổi được thực hiện trong cơ sở dữ liệu cùng với những người đã làm họ sử dụng có thể. Kiểm soát truy cập có nghĩa là một người sử dụng được cho phép để truy cập dữ liệu chỉ được ủy quyền. Không có các chế độ khác nhau của các truy cập vào các mặt hàng dữ liệu khác nhau. Xác thực người dùng đề với xác minh chứng chỉ của người dùng trước khi cho phép truy cập vào bất kỳ của các đối tượng dữ liệu hiện diện trong cơ sở dữ liệu. Khi xác thực, dữ liệu sẽ có sẵn cho người dùng của hệ thống theo quyền truy cập của họ. Tính năng này được gọi là dữ liệu sẵn có [1]. 1.1.2. các cuộc tấn công cơ sở dữ liệuCơ sở dữ liệu vào ngày hôm nay phải đối mặt với loại khác nhau của cuộc tấn công. Trước khi mô tả các kỹ thuật để đảm bảo cơ sở dữ liệu, nó là thích hợp hơn để mô tả các cuộc tấn công có thể được thực hiện vào các cơ sở dữ liệu. Các cuộc tấn công lớn vào cơ sở dữ liệu có thể được phân loại như minh hoạ trong hình 1.1, mà là suy luận, hoạt động và thụ động cuộc tấn công trong cơ sở dữ liệu và SQLIA. Hình 1.1: Các loại cuộc tấn công vào cơ sở dữ liệu1.1.2.1. suy luậnSuy luận là cuộc tấn công lớn vào cơ sở dữ liệu hệ thống. Suy luận là một cách để lấy được dữ liệu nhạy cảm từ dữ liệu nhạy cảm không [1]. Đó là một cuộc tấn công trực tiếp có thể trên cơ sở dữ liệu. Truy vấn bắn là rất cụ thể trong các loại tấn công. Truy vấn đối sánh chính xác một dữ liệu mục. Gián tiếp tấn công vào cơ sở dữ liệu theo suy luận bao gồm sử dụng các dữ liệu thống kê để có được những thông tin nhạy cảm. Có rất nhiều cách để có cuộc tấn công này. Một kẻ tấn công có thể cố gắng để suy ra các thông tin nhạy cảm từ tổng của một số giá trị thường được sử dụng trong các báo cáo. Đếm có thể được sử dụng để cùng với chức năng tổng hợp để có được thông tin nhạy cảm. Hai là chức năng thường được sử dụng như DBMS cung cấp cho họ theo mặc định như chức năng tổng hợp. Kẻ tấn công có thể sử dụng số trung vị như thống kê biện pháp để xác định giá trị thực tế nhạy cảm. Nhưng quá trình này là một chút khó khăn. Do đó, kẻ tấn công tìm thấy lựa chọn có một điểm giao lộ mà là chính xác ở giữa. Đó là một cuộc tấn công có thể theo suy luận và đó được gọi là tấn công theo dõi. Trong cuộc tấn công theo dõi, một dữ liệu mong muốn có thể được ghi lại bằng cách sử dụng truy vấn bổ sung kết quả nhỏ. Kẻ tấn công thêm bổ sung hồ sơ để được lấy cho hai truy vấn khác nhau như vậy mà hai bộ hồ sơ hủy bỏ nhau ra và chỉ dữ liệu mong muốn còn lại. Đó là một hình thức tổng quát hơn của một cuộc tấn công theo dõi được gọi là tuyến tính hệ thống dễ bị tổn thương. Cuộc tấn công này đòi hỏi ít đại số và logic để tìm thấy phân phối dữ liệu trong cơ sở dữ liệu và sử dụng nó để tìm các yếu tố mong muốn. Vì vậy, thay vì sử dụng hai đối lập truy vấn bộ, một loạt các truy vấn bộ được sử dụng mà sẽ hủy lẫn nhau và thông tin mong muốn cuối cùng loài [1]. 1.1.2.2. thụ động tấn công vào cơ sở dữ liệuCuộc tấn công vào cơ sở dữ liệu cũng có thể được phân loại vào cuộc tấn công thụ động và hoạt động [2]. Thụ động tấn công, kẻ tấn công chỉ quan sát dữ liệu có trong cơ sở dữ liệu. Thụ động tấn công có thể được thực hiện trong ba cách sau: Rò rỉ tĩnh: trong loại tấn công, thông tin có thể được thu được từ một cơ sở dữ liệu bằng cách quan sát các ảnh chụp của nó. Rò rỉ liên kết: ở đây, thông tin về các giá trị văn bản thuần tuý có thể được thu được bằng cách liên kết bảng giá trị để vị trí của các giá trị trong chỉ mục. Năng động rò rỉ: Ở đây, thay đổi thực hiện trong cơ sở dữ liệu trong một khoảng thời gian có thể được quan sát và các thông tin về các giá trị văn bản thuần tuý có thể được lấy. 1.1.2.3. hoạt động tấn công vào cơ sở dữ liệuTrong hoạt động tấn công, giá trị cơ sở dữ liệu thực tế được sửa đổi. Đây là một loại nghiêm trọng của cuộc tấn công. Chúng ta có một số cách để thực hiện các loại tấn công được đề cập dưới đây: Giả mạo: Trong loại tấn công, mật mã văn bản giá trị được thay thế bằng một giá trị được tạo ra. Chế: Ở đây, một giá trị văn bản mã được thay thế bởi giá trị văn bản mã khác nhau.Phát lại: Phát lại là một loại tấn công nơi mã văn bản giá trị được thay thế bằng phiên bản cũ trước đó Cập Nhật hoặc xóa [2]. 1.1.2.4. SQLIA (cuộc tấn công SQL Injection)Hôm nay, cơ sở dữ liệu phục vụ như là một phụ trợ cho nhiều ứng dụng bao gồm các ứng dụng web. Một trong các cuộc tấn công lớn với các ứng dụng như vậy là cuộc tấn công SQL Injection. Loại tấn công thường được viết tắt là SQLIA hoặc SIA. Nhiều ứng dụng web sử dụng trên các truy vấn SQL bay mà không áp dụng đúng người dùng xác nhận đầu vào. Đây là lý do cơ bản cho SQLIA. Kẻ tấn công có thể làm máy chủ chạy truy vấn SQL độc hại và có thể thao tác cơ sở dữ liệu. Do đó SQLIA được coi là nguy hiểm kiểu tấn công vào cơ sở dữ liệu [3]. Trong báo cáo thí, chúng tôi concentre trên 1.2. SQLIA [1]Trong những năm gần đây, World Wide Web (WWW) đã chứng kiến một sự tăng trưởng đáng kinh ngạc của nhiều ứng dụng Web trực tuyến đã được phát triển để đáp ứng mục đích khác nhau. Bây giờ, một ngày, hầu như tất cả mọi người liên lạc với 'công nghệ máy tính' bằng cách nào đó được kết nối trực tuyến. Để phục vụ này số lượng người dùng lớn, các khối lượng lớn dữ liệu được lưu trữ trong cơ sở dữ liệu ứng dụng Web trong các bộ phận khác nhau của toàn cầu. Đôi khi, những người sử dụng cần phải tương tác với các cơ sở dữ liệu phụ trợ thông qua giao diện người dùng cho các nhiệm vụ khác nhau như: Cập nhật dữ liệu, thực hiện truy vấn, trích xuất dữ liệu, và vv. Cho tất cả các hoạt động này, giao diện thiết kế đóng một vai trò rất quan trọng, chất lượng trong đó có một tác động lớn về an ninh của các dữ liệu được lưu trữ trong cơ sở dữ liệu. Một thiết kế ứng dụng Web kém an toàn có thể cho phép tiêm crafted và độc hại Cập Nhật trên cơ sở dữ liệu phụ trợ. Xu hướng này có thể gây ra nhiều thiệt hại và trộm của người dùng tin cậy dữ liệu nhạy cảm của người sử dụng trái phép. Trong trường hợp xấu nhất, kẻ tấn công có thể đạt được đầy đủ quyền kiểm soát các ứng dụng Web và hoàn toàn tiêu diệt hoặc phá hỏng hệ thống. Điều này thành công đạt được, nói chung, thông qua SQL tiêm cuộc tấn công vào cơ sở dữ liệu trực tuyến ứng dụng Web. SQL Injection là một loại tiêm hoặc tấn công trong một ứng dụng Web, trong đó kẻ tấn công cung cấp ngôn ngữ truy vấn có cấu trúc (SQL) mã để một người sử dụng đầu vào hộp của một mẫu Web để truy cập trái phép và không giới hạn. Đầu vào của kẻ tấn công được chuyển vào trong một truy vấn SQL như vậy mà nó tạo thành một SQL mã [1], [10]. Trong thực tế, SQL Injection được phân loại là lỗ hổng ứng dụng Web top-10 2010 kinh nghiệm của ứng dụng Web theo OWASP (Open Web Application Security Project) [9]. SQL Injection lỗ hổng (SQLIVs) là một trong những cánh cửa mở cho tin tặc để khám phá. Do đó, họ tạo thành một mối đe dọa nghiêm trọng cho Web ứng dụng nội dung. Chính gốc và cơ sở của SQLIVs là khá đơn giản và cũng hiểu: không đủ xác nhận đầu vào người sử dụng [1]. Để giảm thiểu các lỗ hổng, nhiều công tác phòng chống kỹ thuật đã được đề nghị như hướng dẫn sử dụng cách tiếp cận, phương pháp tự động; an toàn thực hành mã hóa, phân tích tĩnh, bằng cách sử dụng báo cáo sẵn sàng, và vv. Tuy nhiên, phương pháp tiếp cận được đề xuất đã đạt được mục tiêu của họ để một số phạm vi, SQL Injection lỗ hổng trong ứng dụng tiếp tục là một mối quan tâm lớn trong số các nhà phát triển ứng dụng Web. 1.2.1. điều gì sẽ là SQL? [1]SQL (phát âm như "S-Q-L" hoặc "phần tiếp theo") là viết tắt của ngôn ngữ truy vấn có cấu trúc. Nó là ngôn ngữ cấp cao được sử dụng trong các quan hệ cơ sở dữ liệu quản lý hệ thống (DBMS). SQL đã được phát triển trong đầu những năm 1970 bởi Edgar F. Codd tại công ty IBM. Nó đã được thương mại và mostwidely sử dụng ngôn ngữ cho tất cả các cơ sở dữ liệu quan hệ. Ngôn ngữ này là một ngôn ngữ máy tính kỹ đó có yếu tố bao gồm các điều khoản, biểu hiện, predicates, truy vấn, và báo cáo. Nó cho phép người sử dụng chủ yếu là, (i) dữ liệu chèn, (ii) dữ liệu Cập Nhật, (iii) truy vấn, (iv) xóa, và nhiều nhiều hơn nữa có (do đó cho phép người sử dụng sức mạnh của thao tác cơ sở dữ liệu) [6], [7]. 1.2.2. SQL Injection lỗ hổng versu
đang được dịch, vui lòng đợi..
