Tải bản đầy đủ

Luận văn thạc sĩ an toàn thông tin kiến trúc nhiều tầng cho phát hiện và ngăn chặn trang web lừa đảo

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

PHẠM NGỌC THỌ

KIẾN TRÚC NHIỀU TẦNG CHO PHÁT HIỆN VÀ
NGĂN CHẶN TRANG WEB LỪA ĐẢO

LUẬN VĂN THẠC SĨ AN TOÀN THÔNG TIN

Hà Nội - 2019


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

PHẠM NGỌC THỌ

KIẾN TRÚC NHIỀU TẦNG CHO PHÁT HIỆN VÀ
NGĂN CHẶN TRANG WEB LỪA ĐẢO


Chuyên ngành: An toàn thông tin
Mã số: 8480102.01

LUẬN VĂN THẠC SĨ AN TOÀN THÔNG TIN

NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. LÊ ĐÌNH THANH

Hà Nội - 2019


1
LỜI CAM ĐOAN
Tôi xin cam đoan các kết quả nghiên cứu trong luận văn này là sản phẩm
của cá nhân tôi dưới sự hướng dẫn của thầy giáo TS. Lê Đình Thanh. Các số
liệu, kết quả được công bố là hoàn toàn trung thực. Những điều được trình bày
trong toàn bộ luận văn này là những gì do tôi tự nghiên cứu hoặc là được tổng
hợp từ nhiều nguồn tài liệu khác nhau. Các tài liệu tham khảo có xuất xứ rõ ràng
và được trích dẫn đầy đủ, hợp pháp.
Tôi xin hoàn toàn chịu trách nhiệm trước lời cam đoan của mình.
Hà Nội, ngày 18 tháng 11 năm 2019
Người cam đoan

Phạm Ngọc Thọ


2
LỜI CẢM ƠN
Lời đầu tiên tôi xin được gửi lời biết ơn sâu sắc tới thầy giáo TS. Lê Đình
Thanh, Phòng Thí nghiệm An toàn Thông tin, Khoa Công nghệ Thông tin,
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội, người thầy đã luôn tận
tình chỉ bảo, giúp đỡ và hướng dẫn tôi trong suốt quá trình nghiên cứu luận văn.
Tôi xin chân thành cảm ơn các thầy, cô giáo trong Khoa Công nghệ Thông
tin, Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội đã luôn tận tâm
truyền dạy cho tôi những kiến thức bổ ích trong thời gian tôi tham gia học tập và
nghiên cứu tại nhà trường.
Tôi cũng xin gửi lời cám ơn tới Ban Lãnh đạo và các đồng nghiệp Bộ môn
Toán - Tin học, Học viện Cảnh sát Nhân dân, nơi tôi công tác đã tạo điều kiện
giúp đỡ tôi trong quá trình học tập.
Học viên


Phạm Ngọc Thọ


3
MỤC LỤC
LỜI CAM ĐOAN ................................................................................................. 1
LỜI CẢM ƠN ....................................................................................................... 2
MỤC LỤC ............................................................................................................ 3
DANH MỤC CÁC KÍ HIỆU VÀ CHỮ VIẾT TẮT ............................................ 5
DANH MỤC CÁC BẢNG ................................................................................... 7
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ............................................................... 8
MỞ ĐẦU ............................................................................................................ 10
CHƯƠNG 1. GIỚI THIỆU ................................................................................ 12
1.1. Thực trạng đáng báo động của các trang web lừa đảo ............................ 12
1.2. Các giải pháp đã có nhằm ngăn chặn trang web lừa đảo ......................... 15
1.2.1. Giải pháp dựa vào cộng đồng ........................................................... 15
1.2.2. Giải pháp dựa vào học máy .............................................................. 18
1.3. Tiếp cận của chúng tôi ............................................................................. 22
1.4. Kết quả đạt được và khả năng ứng dụng ................................................. 23
CHƯƠNG 2. THIẾT KẾ KIẾN TRÚC NHIỀU TẦNG CHO PHÁT HIỆN VÀ
NGĂN CHẶN TRANG WEB LỪA ĐẢO......................................................... 24
2.1. Tổng quan ................................................................................................ 24
2.2. Tầng một và tầng hai ............................................................................... 26
2.2.1. Nhiệm vụ sàng lọc ............................................................................ 26
2.2.2. Phương pháp phát hiện dựa vào học máy ......................................... 27
2.2.3. Kiểm soát tỉ lệ dương tính giả .......................................................... 35
2.3. Tầng ba và tầng bốn................................................................................. 35
2.3.1. Nhiệm vụ chuẩn đoán ....................................................................... 35
2.3.2. Tự động cập nhật Blacklist ............................................................... 37
2.3.3. Tham vấn dịch vụ PhishTank ........................................................... 38
2.3.4. Tham vấn dịch vụ Google Safe Browsing ........................................ 40
CHƯƠNG 3. CÀI ĐẶT THỬ NGHIỆM ........................................................... 42
3.1. Cài đặt ...................................................................................................... 42
3.1.1. Kỹ thuật xây dựng chương trình ....................................................... 42
3.1.2. Tầng một và tầng hai ........................................................................ 43
3.1.3. Tầng ba ............................................................................................. 51
3.1.4. Tầng bốn ........................................................................................... 52
3.2. Đánh giá ................................................................................................... 53


4
3.2.1. Phương pháp đánh giá ...................................................................... 53
3.2.2. Kết quả so sánh ................................................................................. 55
3.3. Triển khai thử nghiệm ............................................................................. 56
KẾT LUẬN ........................................................................................................ 59
TÀI LIỆU THAM KHẢO .................................................................................. 60


5
DANH MỤC CÁC KÍ HIỆU VÀ CHỮ VIẾT TẮT
Ký hiệu

Ý nghĩa

Chữ viết tắt

OTP

One Time Password

Mật khẩu sử dụng một lần

RF

Random Forest

Thuật toán Random Forest

APWG

Anti Phishing Working Group

Tổ chức làm việc chống tội
phạm mạng lừa đảo

URL

Universal Resource Locator

Định vị tài tuyên hợp nhất

API

Application Programming
Interface

Giao diện lập trình ứng dụng

TLD

Top Level Domain

Tên miền cấp cao

IP

Internet Protocol

Giao thức Internet

DNS

Domain Name System

Hệ thống phân giải tên miền

CSS

Cascading Style Sheet

Ngôn ngữ định kiểu tài liệu
web

LR

Decision Tree

Thuật toán cây quyết định

NB

Naive Bayes

Thuật toán Naive Bayes

SVM

Support Vector Machine

Thuật toán máy hỗ trợ vector

UCI

University of California, Irvine

HTML

Hyper Text Markup Language

PHP

Personal Home Page

HTTP

HyperText Transfer Protocol

HTTPS

HyperText Transfer Protocol
Secure

WWW

World Wide Web

CSDL

Cơ sở dữ liệu

TP

True Positive

Dương tính thật

FP

False Positive

Dương tính giả

Trường đại học Irvine của
California
Ngôn ngữ đánh dấu siêu văn
bản
Ngôn ngữ lập trình web động
PHP
Giao thức truyền tải siêu văn
bản
Giao thức truyền tải siêu văn
bản kết hợp với giao thức bảo
mật TLS và SSL
Không gian thông tin toàn cầu


6
TN

True Negative

Âm tính thật

FN

False Negative

Âm tính giả

TPR

True Positive Rate

Tỉ lệ dương tính thật

FPR

False Positive Rate

Tỉ lệ dương tính giả


7
DANH MỤC CÁC BẢNG
Bảng 1.1. Thống kê số lượng trang web lừa đảo từ quý IV năm 2018 đến quý II
năm 2019 ............................................................................................................ 12
Bảng 1.2. Bảng mô tả ưu/ nhược điểm các giải pháp đã có cho phát hiện trang
web lừa đảo ......................................................................................................... 22
Bảng 2.1.Các đặc trưng được trích chọn sử dụng để xây dựng mô hình ........... 27
Bảng 3.1.Thông tin kỹ thuật sử dụng trong chương trình thực nghiệm ............. 42
Bảng 3.2. Bảng đánh giá dựa trên phương pháp Confusion Matrix .................. 54
Bảng 3.3. Kết quả thực nghiệm trên các mô hình đối với tầng một................... 55
Bảng 3.4. Kết quả thực nghiệm trên các mô hình đối với tầng hai .................... 55


8
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1.1.
Hình 1.2.

Biểu đồ thống kê số lượng trang web lừa đảo từ 10/2018 đến
(13)
06/2019
Biểu đồ tỉ lệ phần trăm các lĩnh vực là mục tiêu của tấn công
(13)
lừa đảo

Hình 1.3.

Tiến trình tấn công lừa đảo

Hình 1.4.

Mô phỏng siêu phẳng trong không gian hai chiều và ba chiều (20)

Hình 1.5.

Sơ đồ giải thuật rừng ngẫu nhiên

(14)

(21)

Mô hình kiến trúc đa tầng cho phát hiện và ngăn chặn trang
Hình 2.1.

web lừa đảo

(24)

Hình 2.2.

Giải thuật Rừng ngẫu nhiên

(34)

Luật bình chọn số đông cho gán nhãn ở nút lá của cây quyết
Hình 2.3.

định, nút lá có nhãn làvuông, nên điểm p và q đều được phân (35)
lớp vuông

Hình 2.4.

Giao diện website của PhishTank

(38)

Hình 2.5.

Chức năng báo cáo trang web lừa đảo của PhishTank

(39)

Hình 2.6.

Chức năng bỏ phiếu trang web lừa đảo của PhishTank

(40)

Hình 2.7.

Chức năng kiểm tra trạng thái trang web của Google Safe
Browsing

(41)

Hình 2.8.

Trang web chứa tập API của Google Safe Browsing

(41)

Hình 3.1.

Tám đặc trưng được lựa chọn để huấn luyện và xây dựng mô
(43)
hình phát hiện trên tầng một

Hình 3.2.

Chín đặc trưng được lựa chọn để huấn luyện và xây dựng mô
(44)
hình phát hiện trên tầng hai

Hình 3.3.

Chương trình huấn luyện và xây dựng mô hình phát hiện trên
(45)
tầng một

Hình 3.4.

Chương trình huấn luyện và xây dựng mô hình phát hiện trên
tầng hai

(46)


9
Hình 3.5.

Kiến trúc extension của Chrome

(47)

Cấu trúc tập tin của extension được lập trình, cài đặt trên
Hình 3.6.

trình duyệt

(47)

Hình 3.7.

Extension thực hiện trích xuất đặc trưng trên trang web

(47)

Hình 3.8.

Extension gửi vector đặc trưng của URL một lên máy chủ
web

(48)

Hình 3.9.

Extension gửi vector đặc trưng của Content lên máy chủ web (49)

Hình 3.10.

Máy chủ web đưa dữ liệu đã nhận được qua mô hình phát
hiện

(49)

Hình 3.11.

So sánh kết quả trả về với giá trị ngưỡng của tầng một

(50)

Hình 3.12.

Tiến trình ngăn chặn trang web khi phát hiện có lừa đảo

(50)

Hình 3.13.

Lưu URL của trang web lừa đảo vào Blacklist

(50)

Hình 3.14.

Gửi URL lên máy chủ web phát hiện trên tầng ba

(51)

Hình 3.15.

Thực hiện kiểm tra URL trong CSDL của Blacklist

(51)

Hình 3.16.

API key được đăng ký từ Google Cloud Platform

(52)

Hình 3.17.

API key được đăng ký từ PhishTank

(52)

Hình 3.18.

Kiểm tra URL trên API của Google Safe Browsing

(53)

Hình 3.19.

Kiểm tra URL trên API của PhishTank

(53)

Hình 3.20.

Cài đặt Extension vào trình duyệt

(56)

Hình 3.21.

Cài đặt máy chủ web trên Server

(56)

Hình 3.22.

Dữ liệu cho tiến hành thử nghiệm

(57)

Hình 3.23.

Trang web cho người dùng truy vấn URL trực tuyến

(58)


10
MỞ ĐẦU
Ngày nay, mạng Internet đã và đang mang đến một sự thay đổi to lớn trên
mọi phương diện của cuộc sống, giúp con người có thể kết nối nhau và kết nối
với thế giới trong mọi lĩnh vực: Kinh tế, chính trị, văn hoá, giáo dục, .... nhằm
trao đổi, chia sẻ thông tin một cách nhanh chóng. Đặc biệt, trong kỷ nguyên
công nghệ số - thời kỳ của nền công nghiệp 4.0 hướng tới mọi hệ thống, thiết bị,
phương tiện và con người có thể giao tiếp với nhau một cách dễ dàng.
Tuy nhiên, kéo theo đó là những nguy cơ mất toàn thông tin có thể xảy ra
bất cứ lúc nào. Một trong những mối đe dọa hiện hữu, đã tác động trực tiếp tới
con người chính là vấn đề lừa đảo. Lừa đảo là một hình thức tấn công của các
đối tượng tội phạm mạng nhằm chiếm đoạt thông tin nhạy cảm của người dùng
như: Tên đăng nhập, mật khẩu, mã số thẻ tín dụng, thông tin tài khoản ngân
hàng, mã xác thực một lần (One Time Password - OTP) dưới hình thức tạo lập
những trang web giả mạo với trang web của các tổ chức hợp pháp.
Do đó, việc nghiên cứu phát hiện và ngăn chặn các trang web lừa đảo luôn
là một chủ đề được các tổ chức và cộng đồng người dùng Internet đặc biệt quan
tâm. Đồng thời, cũng đã có nhiều giải pháp được đề xuất bởi một số nhà nghiên
cứu nhằm ngăn chặn tối đa các cuộc tấn công lừa đảo; song những kẻ tấn công
lừa đảo luôn tìm cách thay đổi phương thức hoạt động nhằm ngăn cản sự phát
hiện. Vì vậy, đề xuất một giải pháp có sự tiến hoá được xem là một phương
pháp hiệu quả trong việc phát hiện và ngăn chặn trang web lừa đảo.
Luận văn “Kiến trúc nhiều tầng cho phát hiện và ngăn chặn trang web lừa
đảo” được thực hiện nhằm đề xuất và thử nghiệm một giải pháp hiệu quả trong
việc phát hiện và ngăn chặn trang web lừa đảo. Ngoài các phần mở đầu và kết
luận, luận văn bao gồm 3 chương:
Chương 1. Giới thiệu
Chương này trình bày thực trạng đáng báo động của các trang web lừa đảo
trên thế giới nói chung và tại Việt Nam nói riêng. Trình bày các giải pháp phát
hiện đã có dựa vào cộng đồng và phương pháp học máy trong phát hiện trang
web lừa đảo. Chương 1 cũng trình bày tóm tắt cách tiếp cận của luận văn; tóm
tắt kết quả đạt được và khả năng ứng dụng của nghiên cứu.


11
Chương 2. Thiết kế kiến trúc nhiều tầng cho phát hiện và ngăn chặn
trang web lừa đảo
Trình bày tổng quan kiến trúc nhiều tầng cho phát hiện và ngăn chặn trang
web lừa đảo. Sau phần tổng quan là trình bày phương pháp học máy sử dụng
trên thuật toán rừng ngẫu nhiên (Random Forest - RF) tùy biến tham số, tự điều
chỉnh tỉ lệ dương tính giả trong phát hiện trang web lừa đảo, thực hiện nhiệm vụ
sàng lọc cho tầng một và tầng hai của kiến trúc. Cuối chương này trình bày các
phương pháp phát hiện dựa trên hệ chuyên gia, danh sách đen (blacklist) trên
tầng ba và gọi API của PhishTank, Google Safe Browsing trên tầng bốn.
Chương 3. Cài đặt thử nghiệm
Là chương kết thúc của luận văn, trình bày kỹ thuật cài đặt thử nghiệm và
các bước được triển khai trên mỗi tầng. Lựa chọn phương pháp và tiến hành
đánh giá, so sánh kết quả thử nghiệm. Đồng thời, nghiên cứu và triển khai thử
nghiệm tích hợp kết quả nghiên cứu vào một tiện ích mở rộng (extension) cài
đặt vào trình duyệt của người dùng.
Trong quá trình thực hiện luận văn không tránh khỏi những thiếu sót trong
nội dung cũng như trong trình bày. Với mong muốn được phát triển hơn nữa
trong lĩnh vực đang nghiên cứu, tác giả của luận văn rất mong nhận được sự
đóng góp ý kiến của các thầy cô giáo và của các anh/chị học viên.


12
CHƯƠNG 1. GIỚI THIỆU
1.1. Thực trạng đáng báo động của các trang web lừa đảo
Trang web lừa đảo được tạo ra bởi các đối tượng tội phạm nhằm mục đích
chiếm đoạt những thông tin nhạy cảm của người dùng như tên đăng nhập, mật
khẩu, mã số thẻ tín dụng, mã xác thực OTP và các thông tin liên quan tới tài
khoản ngân hàng, ...Với sự kết hợp giữa hai yếu tố chính, đó là: Sử dụng kỹ
thuật tạo trang web giả mạo với trang web của các tổ chức hợp pháp và yếu tố
tác động tâm lý của người dùng (hay còn được biết đến là Social Engineering Kỹ nghệ xã hội) đã góp phần thành công giúp các đối tượng tội phạm thực hiện
hành vi lừa đảo.
Trên thế giới, theo số liệu báo cáo của tổ chức APWG [1] (Anti Phishing
Working Group), trong quý II năm 2019 đã phát hiện có tổng số 182.465 trang
web lừa đảo. Con số này tăng lên đáng kể so với quý I năm 2019 phát hiện là
180.768 và quý IV năm 2018 là 138.328 trang web lừa đảo.
Bảng 1.1. Thống kê số lượng trang web lừa đảo từ quý IV năm 2018 đến quý II
năm 201
Quý IV - Năm 2018
Tháng
10

Tháng
11

Tháng
12

Quý I - Năm 2019
Tháng
1

Tháng
2

Tháng
3

Quý II - Năm 2019
Tháng
4

Tháng
5

Tháng
6

56.815 35.719 45.794 48.663 50.983 81.122 59.756 61.820 60.889
(Tổng hợp số liệu trích từ nguồn của APWG)
Tuy nhiên, khi một trang web lừa đảo được tạo ra, các đối tượng tội phạm
lập tức tiến hành thay đổi thành hàng nghìn các biến thể địa chỉ URL của những
trang web đó trước khi phát tán tới người dùng. Do đó, khi người dùng truy cập
vào những địa chỉ này thì sẽ đều được điều hướng tới cùng một trang đích lừa
đảo. Số liệu mà APWG đã tiến hành thống kê số lượng được dựa vào tính duy
nhất của các trang web lừa đảo (không tính đến những URL biến thể của cùng
một trang web).
Qua số liệu được báo cáo từ APWG có thể dễ dàng nhận thấy, số lượng các
trang web lừa đảo xuất hiện trong những năm trở lại đây ngày càng có xu hướng


13
gia tăng mà không có dấu hiệu giảm xuống. Điều này gây ra những tổn thất
nặng nề cho nền kinh tế thế giới nói chung và những nguy cơ mất an toàn thông
tin nói riêng đối với các tổ chức, doanh nghiệp và đặc biệt là với cá nhân.
Số lượng trang web lừa đảo từ Quý IV - 2018 đến Quý II - 2019
90,000
80,000
70,000
60,000
50,000
40,000
30,000
20,000
10,000
0

Tháng
Tháng
Tháng
10/2018 11/2018 12/2018

Tháng
1/2019

Tháng
2/2019

Tháng
3/2019

Tháng
4/2019

Tháng
5/2019

Tháng
6/2019

Hình 1.1. Biểu đồ thống kê số lượng trang web lừa đảo từ 10/2018 đến 06/2019
Mục tiêu của các cuộc tấn công lừa đảo được các đối tượng hướng tới chủ
yếu tập trung vào một số lĩnh vực như: Phần mềm dưới dạng dịch vụ, dịch vụ
webmail, dịch vụ thanh toán, dịch vụ của các tổ chức tài chính, thương mại điện
tử, dịch vụ lưu trữ trực tuyến, ...

Hình 1.2. Biểu đồ tỉ lệ phần trăm các lĩnh vực là mục tiêu của tấn công lừa đảo


14
Tại Việt Nam, theo số liệu thống kê của Bộ Thông tin và Truyền thông tại
thời điểm 6 tháng đầu năm 2019, trong tổng số 3.159 cuộc tấn công mạng vào
hệ thống thông tin, có 968 cuộc tấn công thay đổi giao diện (Deface), 635 cuộc
tấn công cài cắm mã độc (Malware) và đặc biệt đối với loại hình tấn công lừa
đảo (Phishing) có tới 1.556. Trong đó, các cuộc tấn công lừa đảo chủ yếu được
tiến hành thông qua việc xây dựng các trang web giả mạo với các tổ chức hợp
pháp hoạt động trong các lĩnh vực tài chính, ngân hàng, mạng xã hội, ... nhằm
lừa gạt người dùng cung cấp thông tin nhạy cảm cá nhân hòng chiếm đoạt
chúng.
Để thực hiện thành công hành vi lừa đảo, đối tượng tấn công sẽ tiến hành
những cách thức như sau:

Hình 1.3. Tiến trình tấn công lừa đảo
- Tạo một trang web giả mạo: Là một phần kế hoạch của cuộc tấn công
lừa đảo, những đối tượng tấn công tạo ra một trang web giả mạo có giao diện và
tương tác tương tự với trang web gốc. Chúng sử dụng những tính năng chính
của trang web gốc như logo, bố cục và nội dung của trang web để người dùng
không phát hiện đấy là trang web giả mạo.
- Liên kết một trang web giả mạo qua email: Sau khi tạo ra trang web
giả mạo, đối tượng tấn công tạo ra những email với nhiều nội dung khác nhau
như gây tính tò mò, sự kích thích về tâm lý của người dùng như: cập nhật thông


15
tin tài khoản trong các dịch vụ tài chính - ngân hàng, khai báo thông tin cá nhân
tham gia chương trình trúng thưởng, ...Sau đó, chúng gửi hàng nghìn email kiểu
này đến người dùng và làm cho người nhận (người dùng) kích vào một URL để
chuyển hướng đến trang web giả mạo.
- Kích chuột vào một URL độc hại: Người dùng không biết URL độc hại
được cung cấp trong email, lập tức kích chuột vào và dễ dàng bị chuyển hướng
đến trang web giả mạo do đối tượng lừa đảo đã tạo ra. Tại đây, một cuộc tấn
công lừa đảo bắt đầu diễn ra.
- Nhập thông tin nhạy cảm: Khi người dùng được chuyển hướng đến
trang web giả mạo, các thông tin nhạy cảm như tên đăng nhập, mật khẩu, mã số
thẻ tín dụng và các thông tin khác được người dùng lần lượt nhập trên trang web
do những đối tượng lừa đảo đã tạo ra.
- Tập hợp dữ liệu sau khi đánh cắp và sử dụng nó: Khi người dùng đã
nhập những thông tin nhạy cảm, tất cả những dữ liệu này sẽ được những đối
tượng lừa đảo thu thập, tổng hợp để thực hiện những mục đích riêng như: Bán
dữ liệu người dùng, giao dịch bất hợp pháp, thực hiện hoạt động rửa tiền.
1.2. Các giải pháp đã có nhằm ngăn chặn trang web lừa đảo
1.2.1. Giải pháp dựa vào cộng đồng
Hiện nay, có nhiều giải pháp dựa trên cộng đồng được đề xuất để phát hiện
và ngăn chặn trang web lừa đảo. Một số giải pháp được tiếp cận bao gồm:
PhishTank, Google Safe Browsing, PhishNet, PhishGuard, SpoofGuard,
BaitAlarm.
- PhishTank: Là một giải pháp giúp cộng đồng người dùng có thể dễ dàng
phát hiện những trang web nghi ngờ có dấu hiệu lừa đảo. PhishTank được xây
dựng và phát triển bởi tổ chức OpenDNS [2], nó cung cấp một hệ thống xác
minh lừa đảo dựa vào cộng đồng nơi người dùng gửi URL của những trang web
bị nghi ngờ lừa đảo và những người dùng khác “bỏ phiếu”cho URL đó có hay
khôg sự lừa đảo. Thực chất, giải pháp của PhishTank chính là việc duy trì một
danh sách đen (blacklist) bởi người sử dụng. Dữ liệu tại đây được cung cấp miễn
phí để tải xuống hoặc truy cập thông qua lệnh gọi API, gồm cả cho mục đích
thương mại.


16
- Google Safe Browsing: Đây là giả pháp sử dụng các URL trong danh
sách đen để khám phá các cuộc tấn công lừa đảo [3]. Mỗi URL cần kiểm tra
được sử dụng làm dữ liệu đầu vào và thực hiện kiểm tra URL đó trong kho danh
sách đen. Nếu URL có trong kho danh sách đen thì xác định đây là trang web
lừa đảo; ngược lại, trang web là lành tính. Với giải pháp này, điểm hạn chế
chính là không có khả phát hiện những trang web có URL không tồn tại trong
danh sách đen, điểm này sẽ làm tăng tỉ lệ dương tính giả trong phát hiện trang
web lừa đảo.
- PhishNet: Giải pháp này có thể khắc phục các vấn đề liên quan đến danh
sách đen. Giải pháp bao gồm hai bước chính: Tạo ra các biến thể URL so với
các biến thể ban đầu để phát triển danh sách đen và cấu trúc dữ liệu gán từng
điểm số cho URL dựa trên sự tương đồng của URL hiện có [4]. Trong bước thứ
nhất, nó sử dụng các phương pháp phỏng đoán khác nhau để tạo các URL mới
thay thế tên miền cấp cao nhất (TLD - Top level domain), tương đương địa chỉ
IP, tương tự cấu trúc thư mục, thay thế chuỗi truy vấn, tương đương với tên
thương hiệu. Trong bước thức hai gồm, kỹ thuật đối sách giúp kiểm tra địa chỉ
IP, tên máy chủ, ...
- PhishGuard: Đây là giải pháp thực hiện trên thuật toán ObURL để đánh
giá các trang web đáng ngờ dựa trên sự xuất hiện trực quan của các trang web
[5]. Thuật toán này được xác định bằng cách: Kiểm tra danh sách đen và danh
sách trắng (whitelist), kiểm tra địa chỉ IP, kiểm tra sử dụng dịch vụ rút gọn
URL, kiểm tra DNS và kiểm tra trên khuôn mẫu.
+ Kiểm tra danh sách đen và danh sách trắng: Trong thử nghiệm này, tất
cả các URL lần lượt được xác minh trong danh sách đen và danh sách trắng.
Người dùng an toàn khi URL được tìm thấy trong sách trắng; đồng thời, người
dùng sẽ được cảnh báo nếu URL mà họ truy cập được tìm thấy trong danh sách
đen.
+ Kiểm tra sử dụng dịch vụ rút gọn URL: Với thử nghiệm này, nếu đối
tượng tấn công sử dụng dịch vụ rút gọn URL thì người dùng sẽ nhận được thông
báo giúp đưa ra cảnh báo trước nguy cơ của cuộc tấn công lừa đảo.


17
+ Kiểm tra DNS: Trong thử nghiệm này, được thực hiện trích xuất và kiểm
tra giá trị của neo (anchor) và các liên kết. Nếu cả hai giá trị không giống nhau,
người dùng sẽ nhận được thông báo rằng cả hai DNS là đều khác nhau.
+ Kiểm tra trên khuôn mẫu: Trong thử nghiệm này, siêu liên kết và neo
được xác minh cho từng URL, nếu cả hai giống hệt nhau, người dùng sẽ không
được thông báo; trong khi cảnh báo được hiển thị cho người dùng nếu cả hai
không giống nhau.
- SpoofGuard: Trong giải pháp này [6], các đặc tính lừa đảo được kiểm tra
đối với các trang web đáng ngờ để phân loại xem một trang web là trang web
hợp pháp hay lừa đảo. Một số phương pháp phỏng đoán bao gồm: Kiểm tra hình
ảnh; kiểm tra liên kết; kiểm tra URL và kiểm tra trường mật khẩu. Tất cả các
dấu hiệu này được đưa ra một trọng số, dựa trên đó trang web được phân loại
phù hợp. Nếu tổng số điểm của các dấu hiệu lừa đảo được liệt kê ở trên vượt quá
ngưỡng, thì nó được phân loại là trang web lừa đảo; ngược lại được phân loại là
một trang web hợp pháp. Cách tiếp cận này có thể phát hiện cuộc tấn công zeroday. Tuy nhiên, phương pháp này cũng có nhược điểm là cho ra tỷ lệ dương tính
giả cao trong phát hiện. Giải pháp được mô tả như sau:
+ Kiểm tra tên miền: Đặc tính này được sử dụng để xác minh tên miền của
URL đã thử trong lịch sử trình duyệt. Sự giống nhau được đánh giá bởi khoảng
cách chỉnh sửa của hai miền. Khoảng cách chỉnh sửa được định nghĩa là số
lượng ký tự được thêm hoặc xóa để chuyển đổi từ tên miền này sang tên miền
khác.
+Kiểm tra URL: Kiểm tra URL sẽ được kích hoạt nếu có bất kỳ vấn đề nào
liên quan đến tên miền, tên đăng nhập và số cổng của một URL cụ thể.
+ Kiểm tra hình ảnh: Đặc tính này được sử dụng để so sánh các hình ảnh
trong một trang web mới với hình ảnh trên các trang web trước đó. Quá trình
này được thực hiện bằng cách thu thập mọi hình ảnh, tính toán hàm băm và so
sánh giá trị băm với các giá trị trước đó. Sau khi tất cả các kiểm tra được thực
hiện, các trọng số từ mỗi vòng được tính toán để so sánh với giá trị ngưỡng để
xác định xem có nên hiển thị cảnh báo cho người dùng hay không.
- BaitAlarm: Giải pháp này sử dụng để phát hiện trang web lừa đảo dựa
trên hình ảnh, trong đó đối tượng tấn công sử dụng cùng một kiểu CSS


18
(Cascading Style Sheet) để giả mạo các trang web gốc [7]. Trong phương pháp
này, việc so sánh kiểu CSS đã được thực hiện với các trang web trong danh sách
trắng với các trang web đáng ngờ để phát hiện các cuộc tấn công lừa đảo.
1.2.2. Giải pháp dựa vào học máy
Với giải pháp dựa vào học máy, có nhiều thuật toán phân lớp được áp dụng
để huấn luyện mô hình dự đoán cho bài toán phát hiện trang web lừa đảo. Trong
phần này, luận văn tìm hiểu một số thuật toán học máy phổ biến như: Hồi quy
Logistic (Logistic Regression - LR), cây quyết định (Decision Tree - DT), Naive
Bayes (NB), máy vector hỗ trợ (Support Vector Machine - SVM), rừng ngẫu
nhiên (Random Forest - RF).
1.2.2.1. Hồi quy Logistic (Logistic Regression -LR)
Phương pháp Hồi quy Logistic là một phương pháp sử dụng mô hình hồi
quy nhằm dự đoán giá trị đầu ra rời rạc y ứng với một véc-tơ đầu vào x. Phương
pháp này thường được sử dụng để dự báo sự có hay không có mặt của biến phụ
thuộc y dựa vào giá trị của biến độc lập x.
Theo mô hình Hồi quy Logistic, quan hệ giữa xác suất trang web lừa đảo
(y=1) và các yếu tố ảnh hưởng được thể hiện:
𝑃(𝑦 = 1|𝑥; 𝑤, 𝑏) = 𝜎(𝑤 𝑇 𝑥 + 𝑏) =

1
1 + 𝑒 −(𝑤

𝑇 𝑥+𝑏)

(1)

Tối ưu hàm Hồi quy Logistic có thể được tính toán theo công thức:
𝑇

1
(𝑤, 𝑏) ← 𝑎𝑟𝑔𝑤,𝑏 𝑚𝑖𝑛 ∑ − (𝑦𝑡 log 𝜎𝑡 + (1 − 𝑦𝑡 ) log(1 − 𝜎𝑡 )
𝑇

(2)

𝑡=1

Trong đó, T là kích cỡ tập dữ liệu trang web lừa đảo, yt là lớp tương ứng
của dữ liệu thứ t trong tập dữ liệu 𝜎(𝑤 𝑇 𝑥 + 𝑏).
1.2.2.2. Cây quyết định (Decision Tree - DT)
Cây quyết định là một dạng đặc biệt của cấu trúc cây được xây dựng để trợ
giúp việc ra quyết định dựa trên các câu hỏi. Kỹ thuật học máy sử dụng việc xây
dựng cây quyết định trên tập dữ liệu được gọi là học bằng cây quyết định hay
đơn giản chỉ là cây quyết định. Mỗi nút bên trong của cây tương ứng với một


19
đặc trưng, các nút lá đại diện cho các phân loại và các cành đại diện cho các kết
hợp của các đặc trưng dẫn tới phân loại đó. Các cành được phân tách dựa trên
giá trị của các đặc trưng.
Quá trình học cây quyết định gồm 3 giai đoạn:
1- Tạo cây: Sử dụng thuật toán phân lớp để phân chia dữ liệu sao cho mọi
nút lá đều có cùng một giá trị trên thuộc tính quyết định. Việc lựa chọn đặc
trưng cho mỗi nút được dựa trên độ lợi thông tin của các đặc trưng trên bộ huấn
luyện. Có rất nhiều thuật toán phân lớp dựa trên cây quyết định như: C4.5 [8],
CART [9], ...
2 - Cắt tỉa cây: Là việc làm nhằm khắc phục những khuyết điểm của cây
như loại bỏ nhánh không phù hợp (nhánh lỗi).
3 - Kiểm định kết quả: Đánh giá độ chính xác trước khi sử dụng.
1.2.2.3. Naive Bayes (NB)
Naive Bayes là một thuật toán dựa trên định lý Bayes về lý thuyết xác suất
để đưa ra các phán đoán cũng như phân loại dữ liệu. Naive Bayes giả định rằng
tất cả các đặc trưng của x là độc lập với nhau. P(x|y) biểu thị xác suất có điều
kiện của véc-tơ đặc trưng cho một lớp, giả định độc lập ngụ ý rằng 𝑃(𝑥|𝑦) =
∏𝑑𝑖=1 𝑃(𝑥𝑖 |𝑦) với d là số lượng đặc trưng. Bằng cách áp dụng lý thuyết Bayes, ta
có thể tính xác suất để một véc-tơ đặc trưng x là một trang lừa đảo bằng cách:
𝑃(𝑦 = 1|𝑥 ) =

𝑃(𝑥|𝑦 = 1)
𝑃(𝑥|𝑦 = 1) + 𝑃(𝑥|𝑦 = −1)

(3)

Thuật toán Naive Bayes phân loại dễ dàng nhất bằng cách tính xác suất có
điều kiện P(xi|y) từ ước lượng hợp lý cực đại (Maximum Likehood Estimation)
[10].
1.2.2.4. Máy vector hỗ trợ (Support Vector Machine - SVM)
Máy vector hỗ trợ (SVM) là một thuật toán học máy có giám sát phổ biến
dùng để phân chia dữ liệu thành các nhóm riêng biệt. Thuật toán sẽ tìm một
đường thẳng (trong không hai chiều) hoặc mặt phẳng (trong không gian đa
chiều) cũng được gọi là siêu phẳng sẽ phân tách hiệu quả nhất hai lớp. Siêu


20
phẳng này sau đó được dùng để phân lớp cho các dữ liệu chưa biết cần tiên
đoán.

Hình 1.4. Mô phỏng siêu phẳng trong không gian hai chiều và ba chiều
Siêu phẳng tối ưu là siêu phẳng có khoảng cách với hai điểm dữ liệu gần
nhất tương ứng với hai lớp là lớn nhất. Phương trình chứa các điểm dữ liệu này
gọi là các lề (margin). Do đó, siêu phẳng tối ưu là siêu phẳng có khoảng cách
giữa nó và lề là xa nhất.
Siêu phẳng trong không gian d chiều được biểu diễn bằng công thức:
WTx + b = 0
Khi đó khoảng cách được tính bằng công thức:
ℎ=

|𝑊 𝑇 𝑥0 + 𝑏|
√∑𝑑𝑖=1 𝑤𝑖2

(4)

SVM luôn cố gắng cực đại hoá khoảng cách này, từ đó thu được một siêu
phẳng tạo khoảng cách xa nhất. Bài toán tối ưu là bài toán tìm w và b sao cho:
𝑇

1
(𝑤, 𝑏) ← 𝑎𝑟𝑔𝑤,𝑏 𝑚𝑖𝑛 ∑ max(0,1 − 𝑦𝑡 (𝑤. 𝑥𝑡 + 𝑏)) + 𝜆||𝑤|| 22
𝑇

(5)

𝑡=1

Nhờ đó mà SVM có thể giảm thiểu việc phân lớp sai đối với dữ liệu mới
đưa vào.
1.2.2.5. Rừng ngẫu nhiên (Random Forest - RF)
Rừng ngẫu nhiên [11] tạo ra một tập hợp các cây quyết định không cắt
nhánh, mỗi cây được xây dựng dựa trên tập mẫu ngẫu nhiên có hoàn lại


21
(bootstrap). Các thuộc tính tại mỗi nút con được chọn ngẫu nhiên từ không gian
thuộc tính ban đầu.
Thủ tục xây dựng rừng ngẫu nhiên gồm ba pha: Tạo dữ liệu (tạo vector
ngẫu nhiên); Xây dựng các cây cơ sở; Kết hợp các cây cơ sở theo phương thức
bỏ phiếu.

Hình 1.5. Sơ đồ giải thuật rừng ngẫu nhiên
Thuật toán xây dựng rừng ngẫu nhiên:

Đầu ra của hệ cho đối tượng x sẽ là:
1

- Đối với bài toán hồi quy: 𝐶 (𝑥 ) = 𝐿 ∑𝐿𝑘=1 𝐶𝑘 (𝑥)
1

- Đối với bài toán phân lớp: 𝐶(𝑥) = [𝐿 ∑𝐿𝑘=1 𝐶𝑘 (𝑥)]


22
1.3. Tiếp cận của chúng tôi
Hiện nay, trên thế giới có nhiều giải pháp khác nhau trong cách thức tiếp
cận cho phát hiện, ngăn chặn trang web lừa đảo và đã được công bố trên phương
diện nghiên cứu khoa học và đã được triển khai thực nghiệm. Điển hình trong số
đó là hai nhóm giải pháp: Phát hiện trang web lừa đảo dựa vào cộng đồng và
phát hiện bằng phương pháp học máy.
Tuy nhiên, ở mỗi nhóm giải pháp, bên cạnh những ưu điểm đã đạt được thì
vẫn còn tồn tại những hạn chế nhất định. Cụ thể, ưu/nhược điểm của hai phương
pháp được tóm tắt trong bảng sau:
Bảng 1.2. Bảng mô tả ưu/ nhược điểm các giải pháp đã có cho phát hiện trang
web lừa đảo
Giải
pháp
Ưu/
Nhược
điểm

Dựa vào cộng đồng

Dựa vào phương pháp học máy

- Phát hiện chính xác - Là một phương pháp tiếp cận hiện đại
trang web lừa đảo.
dựa trên nền tảng của trí tuệ nhân tạo.
- Dễ dàng sử dụng và có - Có thể dễ dàng tuỳ biến các thuật toán
Ưu điểm thể tích hợp vào những
công cụ được phát triển
riêng biệt bởi các tổ
chức và cá nhân.

Nhược
điểm

học máy trong quá trình nghiên cứu và
mở rộng.
- Có thể phát hiện những trang web lừa
đảo mới được tạo ra.

- Khả năng cập nhật cơ - Khó tiếp cận đối những người mới
sở dữ liệu chậm.
nghiên cứu phương pháp học máy.
- Không thể phát hiện - Kết quả phát hiện có tỉ lệ sai sót
những trang web lừa (dương tính giả và âm tính giả) nhất
đảo mới được tạo ra.

định

Xuất phát từ những ưu và nhược điểm của hai nhóm giải pháp đã nêu ở
trên, chúng tôi tiến hành kết hợp những ưu điểm của cả hai giải pháp; đồng thời,
đề xuất tạo nên kiến trúc nhiều tầng cho phát hiện và ngăn chặn trang web lừa
đảo. Kiến trúc mà chúng tôi đề xuất được chia thành bốn tầng. Cụ thể:


23
- Tầng một và tầng hai: Cài đặt mô hình học máy đã được thiên vị hoá,
thực hiện nhiệm vụ sàng lọc nhanh trang web lừa đảo.
- Tầng ba và tầng bốn: Thực hiện tham vấn dịch vụ blacklist và hỏi
chuyên gia nhằm tiến hành chuẩn đoán trang web lừa đảo.
1.4. Kết quả đạt được và khả năng ứng dụng
- Sử dụng thuật toán học máy trên tầng một và tầng hai của kiến trúc đề
xuất, thiên vị hóa thuật toán học máy nhằm đảm bảo tỉ lệ dương tính giả rất thấp
(gần như bằng 0) giúp cho việc sàng lọc chính xác.
- Xây dựng kho blacklist chứa URL của các trang web lừa đảo, cung cấp
giải pháp website cho người dùng tại Việt Nam có thể dễ dàng tra cứu và sử
dụng trong phát hiện, ngăn chặn trang web lừa đảo.
- Kết nối thành công, sử dụng API (Application Programming Interface)
của các hệ chuyên gia PhishTank và Google Safe Browsing, được thực hiện trên
tầng bốn của kiến trúc.
- Đánh giá và so sánh kết quả thử nghiệm của nghiên cứu.
- Sử dụng kết quả của nghiên cứu, tiến hành cài đặt, tích hợp thành công
công cụ phát hiện và ngăn chặn trang web lừa đảo vào trình duyệt web của
người dùng.


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×