1. Trang chủ
  2. » Công Nghệ Thông Tin

Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)

27 377 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 27
Dung lượng 1,76 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)Xây Dựng Công Cụ Nhận Dạng Tấn Công Ứng Dụng WordPress Dựa Trên Sự Bất Thường (tt)

Trang 2

Luận văn được hoàn thành tại:

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

Người hướng dẫn khoa học: PGS.TS Trần Văn Hoài

Phản biện 1: TS Nguyễn Tuấn Đăng

Phản biện 2: TS Đàm Quang Hồng Hải

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông

Vào lúc: 10 giờ 20 ngày 05 tháng 8 năm 2017

Có thể tìm hiểu luận văn tại:

- Thư viện của Học viện Công nghệ Bưu chính Viễn thông

Trang 3

MỞ ĐẦU

CMS (Content Management System) hay còn gọi là

hệ thống quản lý nội dung được sử dụng nhằm mục đích giúp người quản trị trang web dễ dàng quản lý, chỉnh sửa nội dung Hệ thống CMS của Wordpress được sử dụng rất phổ biến và chiếm thị phần cao nhất so với các hệ thống khác 59,1%, Joomla chiếm 6,9%, Drupal chiếm 4,7%, Magento chiếm 2,5% và Blogrer chiếm 2,2% [15] theo số liệu khảo sát từ đầu tháng 5 năm 2017 của w3techs Trên thực tế có hơn 27% các trang web trên thế giới đang sử dụng nền tảng của Wordpress

Tuy nhiên hệ thống Wordpress luôn tìm ẩn các lỗ hổng bảo mật trong các ứng dụng được cài đặt Những năm gần đây, các ứng dụng web đang là mục tiêu tấn công phổ biến [5] của các tin tặc Để bảo vệ các ứng dụng trong Wordpress cần xây dựng một lớp bảo vệ có khả năng tùy biến cao, dễ dàng cài đặt và cập nhật cơ chế phát hiện kịp thời nhằm sớm nhận biết các dấu hiệu bất thường của các tấn công mới

Mục đích của luận văn tập trung nghiên cứu và xây dựng công cụ nhận dạng các tấn công phổ biến từ bên ngoài vào hệ thống Wordpress dựa trên các mô hình học các hành

vi bình thường, từ đó đưa ra các thông báo, chính sách ngăn chặng hoặc cách ly theo dõi tự động trên hệ thống Với mục đích đó, luận văn được bố cục các nội dung sau:

Trang 4

Chương 1: Tổng quan về bảo mật và các giải pháp nhận dạng tấn công ứng dụng web

- Phương pháp tạo tập dữ liệu huấn luyện

- Mô hình và thuật toán kết hợp nhận dạng

- Mô hình nhận dạng

Chương 4: Cài đặt, thực nghiệm và đánh giá

Trang 5

CHƯƠNG 1 – TỔNG QUAN VỀ BẢO MẬT VÀ CÁC

GIẢI PHÁP NHẬN DẠNG TẤN CÔNG

ỨNG DỤNG WEB

Chương này, trình bày tổng quan về vấn đề bảo mật Website, hệ thống quản lý nội dung CMS, kiến trúc Wordpress, mô hình hoạt động của ứng dụng web, phương pháp bảo mật quan trọng, tổng quan học máy và các ứng dụng của học máy

1.1 Những vấn đề bảo mật Website và CMS

1.1.1 Khái niệm về Website và CMS

Website là một “trang web” trên mạng Internet, là nơi giới thiệu những thông tin, hình ảnh về một tổ chức, đơn vị, doanh nghiệp… và sản phẩm, dịch vụ của họ (hay giới thiệu bất cứ thông tin gì) để khách hàng (người dùng) có thể truy cập

ở bất kỳ nơi đâu, bất cứ lúc nào khi được kết nối Internet

Trong khi đó, CMS (Content Management System) là

hệ thống quản trị nội dung nhằm mục đích giúp người quản trị

dễ dàng quản lý, chỉnh sửa nội dung Có rất nhiều CMS trên thế giới, nhưng thông dụng nhất hiện nay vẫn là Wordpress Wordpress là một phần mềm nguồn mở (Open Source Software) được viết bằng ngôn ngữ lập trình PHP (Hypertext Preprocessor) và sử dụng hệ quản trị cơ sở dữ liệu MySQL

Trang 6

Wordpress được xem như là một hệ quản trị nội dung vượt trội để hỗ trợ người dùng tạo ra nhiều thể loại Website khác nhau Hầu như mọi hình thức Website với quy mô vừa và nhỏ đều có thể triển khai trên nền tảng Wordpress Nhưng không có nghĩa là Wordpress chỉ thích hợp với các dự án nhỏ,

mà hiện nay có tới khoảng 27% Website trong danh sách 100 Website lớn nhất thế giới sử dụng mã nguồn Wordpress Ví dụ như trang tạp chí TechCrunch, Mashable, CNN, BBC America Ở Việt Nam, Wordpress đang chiếm ưu thế bởi tính

dễ sử dụng, dễ xây dựng và nâng cấp thêm các chức năng mới thông qua một thành phần gọi là plugin

Plugin là một trình cắm thêm vào Website để bổ sung các chức năng cần thiết Plugin đơn giản là những plugin không cần tương tác với cơ sở dữ liệu, như plugin tạo ra các icons social, chèn link để truy cập tới facebook được chỉ định Ngược lại những plugin phức tạp có tương tác với cơ sở dữ liệu, hỗ trợ tạo ra các trang shopping, social network, các trang cấu hình bảo mật an toàn hệ thống…Hình 1.1 cho thấy vị trí plugin được nạp trong quá trình xử lý dữ liệu của Wordpress

Trang 7

Hình 1.1: Quy trình xử lý dữ liệu Wordpress

1.1.2 Kiến trúc của Wordpress

Wordpress có kiến trúc như hình 1.2 sau:

Hình 1.2: Kiến trúc tổng quan của Wordpress

(Nguồn: https://andy.wordpress.com)

Trang 8

Không như kiến trúc của các nền tảng web khác, Wordpress xử lý các chức năng độc lập trên từng ứng dụng như: post.php, wp-login.php, comment.php, date.php Hình 1.3 cho thấy trình tự tạo môi trường thông qua các hàm và lời gọi các ứng dụng tương ứng

Hình 1.3: Chi tiết nạp môi trường trong Wordpress

Hình 1.4: Các giá trị cần có để kết nối CSDL của Wordpress

Cấu trúc thư mục và tập tin mặc định của Wordpress được tổ chức như hình 1.5 sau đây:

// Load the WordPress library

require_once( dirname( FILE ) '/wp-load.php' );

// Set up the WordPress query

wp();

// Load the theme template

require_once( ABSPATH WPINC '/template-loader.php' ); }

/** The name of the database for WordPress */

define('DB_NAME', 'wp'); // Thông tin cơ sở dữ liệu

/** MySQL database username */

define('DB_USER', 'mysql'); // User để kết nối với cơ sở dữ liệu /** MySQL database password */

define('DB_PASSWORD', ' mysql '); // Mật khẩu của user

/** MySQL hostname */

define('DB_HOST', 'localhost'); // Để mặc định là localhost

Trang 9

Hình 1.5: Cấu trúc tổ chức thƣ mục mặc định của Wordpress

Hình 1.6: Cấu trúc tổ chức thƣ mục hiện đại của Wordpress

Trang 10

Cấu trúc trên cho thấy các thay đổi như: lõi Wordpress có thư mục riêng; thư mục nội dung được cấu hình cùng cấp thư mục lõi, không lồng bên trong lõi như cấu trúc chung; thư mục themes được cấu hình riêng như thư mục bổ sung riêng biệt; tập tin cấu hình được đặt ở mức trên thư mục chính

Việc tách thư mục lõi và thư mục nội dung có lợi ở chổ: cấu trúc rõ ràng hơn; quản lý công việc đơn giản và thuận tiện hơn (ví dụ như sao lưu); áp dụng các nguyên tắc phát triển hiện đại

Nhìn chung hệ thống Wordpress gồm 3 thư mục chính:

wp-admin, wp-content, wp-includes và một số tập tin chạy

ngoài thư mục gốc, mỗi loại tập tin (ứng dụng) sẽ phục vụ cho một mục đích cụ thể của Wordpress như đã đề cặp

1.1.3 Mô hình hoạt động của ứng dụng web

Trình duyệt phía người dùng Hệ thống phía máy chủ

Máy chủ cơ sở dữ liệu

Máy chủ ứng dụng web Máy chủ web

Hình 1.7: Mô hình hoạt động của ứng dụng web

(Nguồn: windowsecurity.com)

Trang 11

1.1.4 Vấn đề bảo mật Website và CMS

1.2 Phương pháp bảo mật quan trọng

Dựa vào danh sách kiểm tra bảo mật của Wordpress [18], có nhiều vấn đề cần quan tâm như: Phần mềm bị lỗi thời (Out-of-date), cập nhật, loại bỏ các plugin và các theme không sử dụng, mật khẩu, thay đổi các khóa (keys) bảo mật

và mã muối (salts), vai trò của người quản trị, thực hiện cơ chế xác thực 2 bước (Two-Factor Authentication), di chuyển hoặc thay đổi tài khoản mặc định

1.2.1 Danh sách rủi ro bảo mật cho ứng dụng Wordpress

OWASP [11]

1.2.2 Các phương pháp nhận dạng tấn công ứng dụng web

Có 2 phương pháp chính đó là sử dụng kỹ thuật nhận dạng tĩnh hoặc kỹ thuật nhận dạng động [20]

Hình 1.8: Phương pháp phát hiện tấn công ứng dụng web

Kỹ thuật nhận dạng tấn công ứng dụng web

Kỹ thuật nhận dạng động (Real-time detection)

Kỹ thuật nhận dạng tĩnh (Log-based detection)

Nhận dạng tấn công

trên mạng

(Network-based)

Nhận dạng tấn công trên máy chủ (Webserver- based)

Trang 12

dữ liệu, giai đoạn dựng mô hình nhận dạng Cụ thể như:

 Học danh sách thực tế các đường dẫn được truy cập hợp pháp

 Học các quan hệ hợp lệ giữa đường dẫn và các tham số cho mỗi đường dẫn duy nhất

 Học một thuộc tính đến trước một thuộc tính khác khi chúng xuất hiện cùng nhau trong danh sách tham số

 Học kiểu giá trị bằng cách xem xét mẫu của các kiểu giá trị cho từng thuộc tính, ví dụ: kiểu string, integer, boolean, hay double v.v…Chi tiết được trình bày trong

mục 3.4

Trang 13

CHƯƠNG 2 – CÁC MÔ HÌNH NHẬN DẠNG TẤN CÔNG ỨNG DỤNG WORDPRESS DỰA TRÊN SỰ

BẤT THƯỜNG

Chương này, trình bày định nghĩa tổng quát về bất thường, phân tích các đặc điểm của các mô hình nhận dạng tấn công ứng dụng Wordpress

2.1 Định nghĩa tổng quát về sự bất thường

Sự bất thường là các mẫu trong dữ liệu mà không phù hợp với khái niệm xác định các hành vi bình thường

Hình 2.1: Hình minh họa sự bất thường trong dữ liệu

Hình 2.1 cho thấy sự bất thường trong một tập hợp dữ liệu 2 chiều đơn giản Các dữ liệu có hai khu vực bình thường

là N1 và N2, điểm O1 và O2, và các điểm trong khu vực O3,

Trang 14

đơn giản là xác định một khu vực đại diện cho hành vi bình thường và tuyên bố bất kỳ quan sát trong các dữ liệu mà không thuộc về khu vực này như một sự bất thường Tuy nhiên phương pháp này gặp một số yếu tố khó khăn như sau:

 Xác định một khu vực bình thường trong đó bao gồm tất

cả các hành vi có thể bình thường là rất khó khăn Ngoài

ra, ranh giới giữa hành vi bình thường và bất thường thường không chính xác Vì vậy, một quan sát bất thường nằm gần ranh giới thực sự có thể là bình thường,

và ngược lại

 Khi bất thường là kết quả của các hành động độc hại, có chủ đích thì người thực hiện thường sẽ thích ứng để làm cho các quan sát dị thường xuất hiện như bình thường,

do đó khiến cho công việc xác định hành vi bình thường khó khăn hơn

 Trong nhiều lĩnh vực hành vi bình thường đang được hoàn thiện và một quan niệm hiện tại của hành vi bình thường có thể không có đủ đại diện trong tương lai

 Các khái niệm chính xác của một sự bất thường là khác nhau cho các lĩnh vực ứng dụng khác nhau Ví dụ, trong lĩnh vực y tế một sự sai lệch nhỏ từ bình thường (ví dụ, biến động về nhiệt độ cơ thể) có thể là một sự bất thường, trong khi độ lệch tương tự trong lĩnh vực thị

Trang 15

trường chứng khoán (ví dụ, biến động về giá trị của một

cổ phiếu) có thể được coi là bình thường Vì vậy việc áp dụng một kỹ thuật được phát triển trong một tên miền khác là không đơn giản

 Sẵn có của dữ liệu được dán nhãn cho đào tạo/xác nhận của các mô hình được sử dụng bởi bất thường kỹ thuật phát hiện thường là một vấn đề lớn

 Thường thì các dữ liệu chứa noise (noise có thể được định nghĩa như là một hiện tượng trong dữ liệu mà không phải là mối quan tâm của các nhà phân tích, nhưng hoạt động như một trở ngại để phân tích dữ liệu)

mà có xu hướng được tương tự như các bất thường và

do đó rất khó để phân biệt và loại bỏ

Do những thách thức trên, mô hình phát hiện bất thường ở dạng chung nhất là khó thực hiện Trong thực tế, hầu hết các kỹ thuật phát hiện bất thường hiện giải quyết một vấn

đề cụ thể và việc xây dựng được dựa trên các yếu tố khác nhau như bản chất của dữ liệu, sẵn có của dữ liệu có nhãn, loại bất thường được phát hiện Các nhà nghiên cứu đã áp dụng các khái niệm từ nhiều lĩnh vực đa dạng như thống kê, học máy, khai thác dữ liệu, lý thuyết thông tin, lý thuyết quang phổ, và

đã áp dụng vào công thức cho vấn đề cụ thể

Trang 16

Hình 2.2: Các kỹ thuật cơ bản trong nhận dạng bất thường

Phân loại sự bất thường được mô tả trong hình 2.3 sau:

Hình 2.3: Phân loại sự bất thường

Research Areas

Machine Learning Data Mining Statistics Information Theory Spectral Theory

Anomaly Detection Technique

Problem Characteristics

Application Domains

Intrustion Detection Fraud Detection Fraud/Damage Detection Medical Informatics

Trang 17

Phân loại các bất thường được thể hiện trong hình 2.4 sau:

Hình 2.4: Hình mô tả phân loại bất thường

2.2 Các mô hình nhận dạng

2.2.1 Cấu trúc yêu cầu (Request structure)

2.2.2 Các giá trị yêu cầu (Request values)

2.2.3 Phản hồi (Response)

2.2.4 Cấu trúc phiên (Session structure)

2.2.5 Hồ sơ người dùng (User profile)

2.2.6 Tổng quan hệ thống (System overview)

Trang 18

CHƯƠNG 3 – PHƯƠNG PHÁP HỌC MÁY TRONG NHẬN DẠNG TẤN CÔNG ỨNG DỤNG WORDPRESS

DỰA TRÊN SỰ BẤT THƯỜNG

Chương này, trình bày những nhận xét và đánh giá các mô hình ở chương 2, đề xuất mô hình phù hợp với ứng dụng Wordpress Đồng thời nêu phương pháp tạo tập dữ liệu huấn luyện được sử dụng trong đề tài và phân tích mô hình

và thuật toán kết hợp để thực hiện nhận dạng

3.1 Nhận xét và đánh giá mô hình

- Mô hình nhận dạng theo cấu trúc yêu cầu

Bảng 3.1: Đánh giá mô hình cấu trúc yêu cầu

Cấu trúc yêu cầu (Request structure)

Ưu điểm Dễ dàng triển khai

- Mô hình nhận dạng theo các giá trị yêu cầu

Bảng 3.2: Đánh giá mô hình các giá trị của yêu cầu

Các giá trị của yêu cầu (Request values)

Ưu điểm Chuyên dụng

Phân tích dữ liệu ở mức thấp nhất

Có thể tùy chỉnh cho các thuộc tính khác nhau

Trang 19

Hạn chế Chuyên hóa

Có khả năng khối lượng công việc cao Không xem xét quan hệ giữa các giá trị các thuộc tính

Nhận xét Có khả năng tùy chỉnh cao

- Mô hình phản hồi

Bảng 3.3: Đánh giá mô hình phản hồi

Phản hồi của máy chủ (response)

Ưu điểm Xem xét một khía cạnh quan trọng

Dễ dàng trong cách tiếp cận cơ bản nhất của nó Hạn chế Rất phức tạp khi nhiều thông tin hơn được

đưa vào tính toán

Không phù hợp với dữ liệu sẵn có như web log Tầm quan trọng thấp

Nhận xét Các vấn đề phức tạp

- Mô hình cấu trúc phiên

Bảng 3.4: Đánh giá mô hình cấu trúc phiên

Cấu trúc phiên (Session structure)

Ưu điểm Bao gồm lịch sử và ngữ cảnh

Phát hiện được các tấn công mà các mô hình trước không thể

Hạn chế Nhanh chóng trở nên rất phức tạp, tăng theo

cấp số nhân

Nhận xét Tổng quát, bao gồm ngữ cảnh

Trang 20

- Mô hình hồ sơ người dùng

Bảng 3.5: Đánh giá mô hình hồ sơ người dùng

Hồ sơ người dùng (User profile)

Ưu điểm Chuyên hóa, xem xét người dùng đơn

Có thể phát hiện thay đổi trong hành vi

Bảng 3.6: Đánh giá mô hình tổng quan hệ thống

Tổng quan hệ thống (System overview)

Ưu điểm Phát hiện các cuộc tấn công từ những kẻ tấn

công cộng tác

Hạn chế Không hỗ trợ trong dữ liệu

Nhận xét Nguồn dữ liệu không thích hợp

3.2 Đề xuất mô hình nhận dạng

Sau khi nhận xét và đánh giá từng mô hình một cách độc lập tôi nhận thấy: mô hình tổng quan hệ thống (System overview) gặp khó khăn trong vấn đề sử dụng dữ liệu và độ phù hợp của mô hình Mô hình hồ sơ người dùng (User profile), cấu trúc phiên (Sesssion structure), phản hồi máy chủ (response) thì có nhiều tính năng chung và các điểm mạnh/yếu

Trang 21

khác nhau bên cạnh các đóng góp chồng chéo lẫn nhau Các dữ liệu tổng quát trong các mô hình không được sử dụng trực tiếp cho từng mô hình dẫn đến các vấn đề phức tạp cho việc phân tích và sử dụng dữ liệu Bởi dữ liệu tổng quát trong một mô hình, nó sẽ kết thúc với một mô hình phức tạp hơn thay vì tạo

ra một mô hình đơn giản dễ hiểu

Mô hình cấu trúc yêu cầu (Request structure) và các giá trị yêu cầu (Request values) có thể sử dụng kết hợp rất tốt để

bổ sung cho nhau Mô hình Request structure nó căn bản cả về tính năng và cấu trúc, còn mô hình Request values phân tích giá trị của mỗi thuộc tính kỹ lưỡng hơn Nó có thể phân tích xâu hơn các thuộc tính cơ bản như chiều dài và kiểu ký tự, xem xét các thuộc tính nâng cao hơn như sự phân bố ký tự và suy luận cấu trúc Mục tiêu của mô hình kết hợp này nhằm phát hiện các hành động độc hại (bất thường) bằng cách xem xét các yêu cầu khác với các yêu cầu từ hệ thống đã học Các hành động này có thể được phát hiện bởi sự thay đổi trong cấu trúc chung, bởi các thuộc tính sai hoặc bởi các giá trị khác biệt so với phạm vi giá trị thông thường đã được học Nhiệm vụ của

mô hình cần phải đối phó với các khía cạnh trên để các chức năng có thể hoạt động đúng đắn trên hệ thống

Ngày đăng: 07/11/2017, 13:35

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w