BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC MỞ HÀ NỘI
---------------
LUẬN VĂN THẠC SĨ
Chuyên ngành: Công nghệ Thông tin
Mã ngành: 8480201
ĐỀ TÀI: NGHIÊN CỨU PHÁT HIỆN URL ĐỘC
DỰA TRÊN PHƢƠNG PHÁP HỌC MÁY
HỌC VIÊN THỰC HIỆN: DƢƠNG SỸ MẠNH
HƢỚNG DẪN KHOA HỌC: TS. ĐỖ XUÂN CHỢ
Hà Nội, tháng 9/2022
LỜI CẢM ƠN
Lời cảm ơn trân trọng đầu tiên, Em xin cám ơn các Thầy, Cô giáo Trƣờng
Đại học Mở Hà Nội đã tận tình giảng dạy và truyền đạt kiến thức trong suốt khóa
học cao học vừa qua. Đặc biệt Em xin bày tỏ lòng biết ơn chân thành và sâu sắc
nhất của mình tới thầy giáo TS. Đỗ Xuân Chợ đã tận tình dìu dắt và hƣớng dẫn Em
trong suốt quá trình làm luận văn, sự chỉ bảo và định hƣớng của Thầy giúp Em tự
tin nghiên cứu những vấn đề mới và giải quyết bài toán một cách khoa học. Em xin
chân thành cảm ơn các Thầy, Cô giáo viên Khoa Công nghệ Thông Tin Trƣờng Đại
học Mở Hà Nội đã tạo điều kiện thuận lợi cho tôi trong quá trình học tập, nghiên
cứu . Cuối cùng, Tôi xin cảm ơn tập thể lớp Công nghệ thông tin khóa 18, các bạn
đã cổ vũ , khích lệ và chia sẻ kinh nghiệm bản thân giúp luận văn của tôi ngày một
hoàn thiện. Mặc dù đã cố gắng rất nhiều nhƣng chắc chắn trong luận văn không
khỏi những thiếu sót. Em rất mong nhận đƣợc sự thông cảm và chỉ bảo tận tình của
các Thầy, Cô và các bạn.
Em xin chân thành cảm ơn!
Hà Nội, ngày
tháng 9 năm 2022
Dương Sỹ Mạnh
1
LỜI CAM ĐOAN
Tôi xin cam đoạn:
1. Tôi xin cam đoan đây là công trình nghiên cứu khoa học của tôi dƣới sự
hƣớng dẫn khoa học trực tiếp của TS. Đỗ Xuân Chợ. Các nội dung nghiên cứu, kết
quả nghiên cứu đƣợc trình bày trong luận văn hoàn toàn là trung thực, không vi
phạm bất cứ điều gì trong luật sở hữu trí tuệ và pháp luật của Việt Nam.
2. Mọi tham khảo dùng trong khóa luận đều đƣợc trích dẫn rõ ràng tên tác giả,
tên công trình, thời gian, địa điểm công bố.
3. Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, tôi xin
chịu hoàn toàn trách nhiệm.
Hà Nội, ngày
tháng 9 năm 2022
Học viên thực hiện
Dƣơng Sỹ Mạnh
2
MỤC LỤC
MỞ ĐẦU .......................................................................................................... 5
CHƢƠNG 1: TỔNG QUAN VỀ URL ĐỘC VÀ VẤN ĐỀ PHÁT HIỆN
URL ĐỘC......................................................................................................... 7
1.1. Giới thiệu về URL ..............................................................................................7
1.1.1. Giới thiệu về URL .......................................................................................7
a) Khái niệm về URL.............................................................................................7
b) Các thành phần của URL .................................................................................7
1.1.2 Tổng quan về URL độc ................................................................................9
a) Khái niệm URL độc ........................................................................................10
b) Một số loại URL độc .......................................................................................10
c) Một số kỹ thuật tấn công sử dụng URL độc ................................................12
1.2 Các phƣơng pháp phát hiện URL độc ...........................................................13
1.2.1. Phát hiện URL độc dựa trên tập dấu hiệu ..............................................13
a) Phương pháp tiếp cận Blacklisting. ................................................................13
b) Phương pháp tiếp cận heuristic ......................................................................14
1.2.2 Phát hiện URL độc sử dụng phƣơng pháp học máy ...............................15
1.3 Một số công cụ hỗ trợ phát hiện URL độc ......................................................16
1.3.1 URL Void ....................................................................................................16
1.3.2 UnMask Parasites .......................................................................................17
1.3.3 PhishTank ...................................................................................................17
1.3.4 Dr.Web Anti-Virus Link Checker ............................................................17
1.3.5 Comodo Site Inspector ...............................................................................18
1.3.6 Một số công cụ khác ...................................................................................18
1.4. Đề xuất mô hình phát hiện URL độc ..............................................................21
1.4.1. Thực trạng phát tán URL độc tại Việt Nam ...........................................21
1.4.2. Mô hình phát hiện URL độc.....................................................................22
1.5 Kết chƣơng ........................................................................................................23
CHƢƠNG 2: PHÁT HIỆN URL ĐỘC SỬ DỤNG HỌC MÁY ............... 24
2.1. Tổng quan về phát hiện URL độc sử dụng học máy .....................................24
a) Giai đoạn huấn luyện ......................................................................................24
b) Giai đoạn phát hiện.........................................................................................25
2.1.1. Lựa chọn thuật toán phân loại URL độc ...............................................25
2.1.2 Random Forest ........................................................................................26
2.1.3 Support vector machine SVM ................................................................27
3
2.2. Lựa chọn và trích xuất thuộc tính URL .........................................................31
2.3 Kết luận ..............................................................................................................35
CHƢƠNG 3: THỰC NGHIỆM VÀ ĐÁNH GIÁ ....................................... 37
3.1. Lựa chọn công cụ thực nghiệm .......................................................................37
3.1.1. Giới thiệu về công cụ Weka ......................................................................37
3.1.2. Tìm hiểu ứng dụng Explorer của công cụ Weka ....................................42
3.2. Một số chỉ số liên quan đến kết quả thực nghiệm .........................................47
3.2.1 Kịch bản và dữ liệu thực nghiệm .............................................................48
3.2.2. Kết quả thực nghiệm .................................................................................50
3.3 Kết luận chƣơng 3 ............................................................................................51
CHƢƠNG 4. XÂY DỰNG ỨNG DỤNG PHÁT HIỆN URL ĐỘC .......... 53
4.1. Kiến trúc ứng dụng phát hiện URL độc .........................................................53
4.2. Phát triển Extension trong ứng dụng phát hiện URL độc............................53
4.2.1. Nghiên cứu về xây dựng Extension trên một số trình duyệt web .........53
4.2.2. Xây dựng Extension trên trình duyệt Web ............................................54
4.3. Phát triển API phát hiện URL độc .................................................................59
4.3.1. Xây dựng cơ sở dữ liệu dấu hiệu ..............................................................60
4.3.2. Cài đặt mô đun phát hiện URL độc .........................................................62
4.4. Cài đặt ứng dụng phát hiện URL độc ............................................................63
4.4.1. Cài đặt Extension.......................................................................................63
4.4.2. Cài đặt API trên máy chủ .........................................................................65
4.5. Thực hiện áp dụng ứng dụng phát hiện URL độc trên trình duyệt web ....65
4.6. Kết luận quá trình thử nghiệm .......................................................................68
4.7. Kết luận chƣơng 4 ............................................................................................69
KẾT LUẬN .................................................................................................... 70
TÀI LIỆU THAM KHẢO ............................................................................ 71
4
MỞ ĐẦU
Ngày nay, cùng với nhu cầu trao đổi thông tin, bắt buộc các cơ quan, tổ
chức phải hoà mình vào mạng toàn cầu Internet, an toàn và bảo mật thông tin
là một trong những vấn đề quan trọng hàng đầu. Cộng đồng công nghệ thông
tin, đặc biệt đối với các doanh nghiệp, tổ chức có hạ tầng thông tin tiên tiến
hiện nay đang phải đối mặt với sự biến đổi, phức tạp từng ngày của các nguy
cơ mất an toàn thông tin. Theo hiệp hội An Toàn Thông Tin Việt Nam hiện
nay tội phạm máy tính vẫn đang liên tục gia tăng, xuất hiện nhiều kỹ thuật và
biện pháp tấn công mới nguy hiểm và để lại hậu quả nghiêm trọng.
Các cuộc tấn công trƣớc đây thƣờng đƣợc triển khai bằng cách khai khác
lỗ hổng, điểm yếu của hệ thống hoặc tấn công trực tiếp vào hạ tầng công nghệ
thông tin. Tuy nhiên, trong vài năm trở lại đây các phƣơng pháp tấn công này
ít đƣợc sử dụng vì mang lại hiệu quả không cao vì các tổ chức thƣờng xuyên
cập nhật và quan tâm đầu tƣ cho hạ tầng công nghệ thông tin cho mình.
Phƣơng pháp mà các hacker thƣờng sử dụng hiện nay chính là phƣơng pháp
tấn công vào công nghệ đầu– cuối và khai thác lỗ hổng con ngƣời. Các kỹ
thuật thƣờng xử dụng nhƣ: lừa đảo xã hội (social engineering), phising,
pharming…Một trong các bƣớc để tiến hành các cuộc tấn công này chính
đánh lừa ngƣời dùng, hoặc phát tán mã độc bằng các URL độc. Theo hiệp hội
An Toàn Thông Tin Việt Nam năm 2017 thì phần các cuộc tấn công đƣợc ghi
nhận tại Việt Nam đều xuất phát từ các URL độc.
Các Hacker trƣớc đây phần lớn hoạt động vì động cơ cá nhân, nhƣng
ngày nay rất nhiều cuộc tấn công, đánh cắp dữ liệu ngoài động cơ tài chính
còn có thể có động cơ chính trị, mà đứng sau nó là một chính phủ hoặc một
quốc gia. Theo diễn biến nhƣ hiện nay thì tội phạm tấn công sẽ còn liên tục
phát triển và sẽ có nhiều diễn biến khó lƣờng. Chính vì vậy, việc phát hiện
sớm các cuộc tấn công đang là vấn đề cần đƣợc quan tâm hơn bao giờ hết.
Từ những phân tích trên đây có thể thấy rằng, để ngăn chặn và giảm
thiểu các nguy cơ mất an toàn thông tin cho hệ thống thông tin cần phải có
những giải pháp hiệu quả trong việc phát hiện sớm quá trình hacker tấn công
và đánh lừa ngƣời dùng. Một cách hữu hiệu nhất để phát hiện tấn công trong
5
giai đoạn đánh lừa ngƣời dùng là dựa trên việc phát hiện các URL độc. Vì lý
do trên học viên, dƣới sự hƣớng dẫn của TS. Đỗ Xuân Chợ chọn đề tài
"NGHIÊN CỨU PHÁT HIỆN URL ĐỘC DỰA TRÊN PHƢƠNG PHÁP
HỌC MÁY ". Đề tài sẽ kết hợp cả phƣơng pháp học máy và công cụ mã
nguồn mở để có thể phát hiện đƣợc các URL độc.
6
CHƢƠNG 1: TỔNG QUAN VỀ URL ĐỘC VÀ VẤN ĐỀ PHÁT
HIỆN URL ĐỘC
1.1. Giới thiệu về URL
1.1.1. Giới thiệu về URL
a) Khái niệm về URL
URL, viết tắt của Uniform Resource Locator (Định vị Tài nguyên thống
nhất), đƣợc dùng để tham chiếu tới tài nguyên trên Internet. URL mang lại khả
năng siêu liên kết cho các trang mạng. Các tài nguyên khác nhau đƣợc tham chiếu
tới bằng địa chỉ, chính là URL, còn đƣợc gọi là địa chỉ mạng hay là liên kết mạng
(hay liên kết) [1].
b) Các thành phần của URL
- URL đơn giản đƣợc chia thành 2 thành phần chính: Scheme (giao thức kết
nối) và Authotiry (nhà cung cấp) [1, 2].
- Scheme: Phần Scheme của URL (các chữ cái theo sau dấu hai chấm) biểu thị
giao thức mà ứng dụng (nhƣ trình duyệt web) và máy chủ giao tiếp. Các địa chỉ web
là URL phổ biến nhất, tuy nhiên còn có các URL khác. Do đó, sẽ thấy các Scheme
nhƣ:
- Giao thức truyền tải văn bản siêu văn bản (HTTP): Đây là giao thức cơ bản
của web, xác định hành động của các máy chủ web và trình duyệt cần thực hiện để
đáp ứng các lệnh nhất định.
- Giao thức HTTP an toàn (HTTPS): Đây là một dạng HTTP hoạt động trên
một lớp bảo mật, đƣợc mã hóa để truyền tải thông tin an toàn hơn.
- Giao thức truyền tập tin (File Transfer Protocol - FTP): Giao thức này
thƣờng đƣợc sử dụng để truyền file qua Internet.
- Authority: Phần Authority của một URL (phần bắt đầu sau hai dấu gạch
chéo) đƣợc chia thành các phần nhỏ.
7
Hình 1.1. Ví dụ về URL
Trong ví dụ đơn giản này, toàn bộ phần “www.example.com” đƣợc gọi là
hostname và có nhiệm vụ lấy một địa chỉ IP. Nếu biết địa chỉ IP, có thể gõ nó vào
thanh địa chỉ trình duyệt thay vì hostname. Đây là một số thành phần của nó:
- Tên miền cấp cao nhất: Trong ví dụ ở đây, "com" là tên miền cấp
cao nhất. Đây là mức cao nhất trong hệ thống tên miền phân cấp đƣợc sử dụng để
dịch địa chỉ IP thành địa chỉ ngôn ngữ đơn giản, dễ nhớ. Những tên miền cấp cao
nhất này đƣợc Tập đoàn Internet cấp số và tên miền (ICANN) tạo và quản lý. Có ba
tên miền cấp cao nhất phổ biến là .com., .net, .gov. Hầu hết các quốc gia đều có trên
miền cấp cao nhất gồm hai chữ cái, ví dụ nhƣ .us (Mỹ), .vn (Việt Nam), .ca
(Canada), … Có một số tên miền cấp cao nhất bổ sung (nhƣ .museum) đƣợc các tổ
chức cá nhân tài trợ và quản lý. Ngoài ra, cũng có một số tên miền cấp cao nhất
dùng chung nhƣ .club, .life và .news.
- Tên miền phụ (Subdomain): Vì DNS là một hệ thống phân cấp, cả hai phần
“www” và “example” của URL ví dụ trên đƣợc xem là tên miền phụ. Phần “www”
là tên miền phụ của tên miền cấp cao nhất “com” và phần “www” là tên miền phụ
của tên miền “example”. Đó là lý do tại sao các công ty có tên đăng ký nhƣ
“google.com” đƣợc chia thành các tên miền phụ nhƣ “www.google.com”,
“news.google.com”, “mail.google.com”, v.v…
Đây là ví dụ cơ bản nhất về phần Authority của URL, các URL khác có thể phức
tạp hơn. Có hai thành phần khác trong phần Authority:
- Thông tin ngƣời dùng: Phần Authority cũng có thể chứa tên ngƣời dùng và
mật khẩu của trang web đang truy cập. Ngày nay, có thể ít bắt gặp cấu trúc URL
này. Phần thông tin ngƣời dùng ở trƣớc tên máy chủ và nó theo sau bởi dấu @. Ví
dụ, có thể thấy một URL nhƣ sau: “//username:
[email protected]”,
bao gồm thông tin ngƣời dùng.
8
- Số port: Thiết bị mạng sử dụng địa chỉ IP để nhận thông tin đến máy tính phù
hợp trên mạng. Khi lƣu lƣợng truy cập đến, số port thông báo với máy tính biết ứng
dụng mà lƣu lƣợng truy cập đó đang nhắm đến. Thƣờng port sẽ ẩn trên thanh url khi
lƣớt web, nhƣng có thể thấy nó trong các ứng dụng mạng nhƣ trò chơi yêu cầu nhập
URL. Nếu URL chứa port, nó xuất hiện ở sau tên máy chủ và trƣớc dấu hai chấm.
Ví dụ: “//www.example.com:8080”.
Thành phần bổ sung của URL: Có ba phần bổ sung của URL mà có thể thấy sau
phần Authority: đƣờng dẫn, truy vấn và phân mảnh.
- Đƣờng dẫn (path) : Phần Authority của URL đƣa trình duyệt (hoặc các ứng
dụng khác) đến đúng máy chủ trên mạng. Đƣờng dẫn (hoạt động nhƣ đƣờng dẫn
trong Windows, macOS hoặc Linux) dẫn đến đúng thƣ mục hoặc file trên máy chủ
đó. Đƣờng dẫn đƣợc bắt đầu bằng dấu gạch chéo và có các dấu gạch chéo giữa các
thƣ mục và thƣ mục con nhƣ sau:www.example.com/folder/subfolder/filename.html
- Truy vấn (query): Phần truy vấn của một URL đƣợc sử dụng để xác định
những thứ không phải là thành phần của một cấu trúc đƣờng dẫn cố định. Phần truy
vấn này đƣợc bắt đầu bằng dấu hỏi chấm và theo sau đƣờng dẫn (hoặc sau tên máy
chủ nếu không có đƣờng dẫn). Ví dụ, dƣới đây là URL khi thực hiện tìm kiếm “wifi extender” trên trang Amazon.
https://www.amazon.com/s/ref=nb_sb_noss_2?url=search- lias%3Daps&fieldkeywords=wi-fi+extende
- Phân mảnh(fragment): Thành phần cuối cùng của URL có thể thấy đƣợc gọi
là phân mảnh. Phân mảnh đƣợc bắt đầu bằng một dấu thăng (#) và đƣợc sử dụng để
xác định vị trí cụ thể của trang web. Khi viết code cho một trang web, các nhà thiết
kế có thể tạo liên kết neo (anchor) cho văn bản cụ thể nhƣ tiêu đề. Khi sử dụng một
phân mảnh thích hợp ở cuối URL, trình duyệt sẽ tải trang và sau đó chuyển đến liên
kết neo đó. Liên kết neo và URL cùng với phân mảnh thƣờng đƣợc sử dụng để tạo
mục lục trang web giúp điều hƣớng dễ dàng hơn.
1.1.2 Tổng quan về URL độc
9
a) Khái niệm URL độc
Có nhiều định nghĩa và khái niệm khác nhau về các URL độc (Malicious
URL). Tuy nhiên, dựa trên sự ảnh hƣởng của các URL độc đối với ngƣời dùng, tác
giả định nghĩa về URL độc nhƣ sau: URL độc là các đƣờng dẫn ảnh hƣởng xấu đến
ngƣời dùng. Khi đƣợc tác động, các URL có thể sẽ chuyển hƣớng đến các tài
nguyên khác để lừa đảo, đánh cắp dữ liệu hay thực thi mã trên máy tính của ngƣời
dùng. Ngoài ra, các URL độc hại cũng có thể đƣợc cài ẩn trong các liên kết tải
xuống đƣợc cho là an toàn và có thể lan truyển nhanh chóng thông qua việc chia sẻ
tệp và tin nhắn trong các mạng chia sẻ [2, 3].
b) Một số loại URL độc
- Malicious iframes [3]: Các HTML iframe chứa nội dung các Website,
videos..độc hại, lừa đảo, spam…
Hình 1.2. Ví dụ về URL độc
IFrame có thể chèn trực tiếp vào code của template hoặc mã hóa trong các
đoạn mã javascript. Mã thực thi mã JavaScipt (XSS). Các trang bị nhiễm phần mềm
độc hại JavaScript sẽ lây nhiễm bằng cách tải xuống tệp .js, mà trình duyệt sẽ thực
thi. Khi trên máy tính của, phần mềm độc hại sẽ chạy mã có thể tải xuống các loại
phần mềm độc hại khác hoặc chuyển hƣớng máy tính của đến các địa điểm Internet
khác.
10
Hình 1.3. Mô tả khai thác của các trang chèn mã độc Javascript
- URL trang web lừa đảo [3].
- Một loại mối đe dọa khác mà tin tặc sử dụng là các trang web lừa đảo.
Không giống nhƣ các phƣơng pháp lây nhiễm phần mềm độc hại ở trên, lừa đảo dựa
trên kỹ thuật xã hội để ngƣời dùng sẵn sàng cung cấp thông tin của mình cho tội
phạm trực tuyến.
11
Hình 1.4. Trang web giả mạo trang ebay
- Các trang giả mạo thƣờng xuyên trông giống nhƣ một bản sao của một hợp
pháp khiến ngƣời dùng không để ý và tin tƣởng đó là một trang chính thống. Các
trang bán hàng trực tuyến nhƣ Amazon hoặc eBay thƣờng là mục tiêu chính, vì
ngƣời dùng thƣờng xuyên truy cập vào các trang web đó đã với ý định mua hàng và
hầu hết họ làm điều đó bằng cách sử dụng thẻ ghi nợ hay thẻ tín dụng của họ.
Hình 1.5. Trang giả mạo Paypal yêu cầu ngƣời dùng cập nhật thông tin thẻ.
c) Một số kỹ thuật tấn công sử dụng URL độc
- Drive-by Download (tự động tải về) [3]: Drive-by Download là việc mà
ngƣời dùng đã vô tình tải xuống mã độc vào máy tính hoặc thiết bị di động của
mình khi click vào một url độc nào đó bắt đầu một cuộc tấn công mạng.
12
- Spam Email Generator : Là những chƣơng trình cho phép tạo ra và gửi đi
một số lƣợng lớn các email. Mã độc hại có thể gieo rắc các email generator vào
trong hệ thống. Các chƣơng trình gián điệp, spam, mã độc hại có thể đƣợc đính kèm
vào các email đƣợc sinh ra từ email generator và gửi tới các địa chỉ có trong sổ địa
chỉ của máy bị nhiễm.
- Phishing : là một hình thức tấn công thƣờng có thể xem là kết hợp với mã
độc hại. Phishing là phƣơng thức dụ ngƣời dùng kết nối và sử dụng một hệ thống
máy tính giả mạo nhằm làm cho ngƣời dùng tiết lộ các thông tin bí mật về danh tính
(ví dụ nhƣ mật khẩu, số tài khoản, thông tin cá nhân, ...). Kẻ tấn công phishing
thƣờng tạo ra trang web hoặc email có hình thức giống hệt nhƣ các trang web hoặc
email mà nạn nhân thƣờng hay sử dụng nhƣ trang của Ngân hàng, của công ty phát
hành thẻ tín dụng, ... Email hoặc trang web giả mạo này sẽ đề nghị nạn nhân thay
đổi hoặc cung cấp các thông tin bí mật về tài khoản, về mật khẩu,... Các thông tin
này sẽ đƣợc sử dụng để trộm tiền trực tiếp trong tài khoản hoặc đƣợc sử dụng vào
các mục đích bất hợp pháp khác.
1.2 Các phƣơng pháp phát hiện URL độc
1.2.1. Phát hiện URL độc dựa trên tập dấu hiệu
a) Phương pháp tiếp cận Blacklisting.
Cách tiếp cận danh sách đen (blacklist) là một kỹ thuật phổ biến và cổ điển
để phát hiện các URL độc hại, thƣờng duy trì một danh sách các URL độc hại biết
trƣớc. Bất cứ khi nào một URL mới đƣợc truy cập, một truy vấn cơ sở dữ liệu đƣợc
thực hiện. Nếu URL có trong danh sách đen, nó đƣợc coi là độc hại và sau đó cảnh
báo sẽ đƣợc tạo ra; nếu không url sẽ đƣợc cho là lành tính. Danh sách đen bị thiếu
khả năng duy trì danh sách đầy đủ tất cả các URL độc hại có thể, vì các URL mới
có thể dễ dàng đƣợc tạo hàng ngày, do đó làm cho chúng không thể phát hiện các
mối đe dọa mới. Điều này đặc biệt quan tâm nghiêm trọng khi kẻ tấn công tạo ra
các URL mới theo thuật toán, và do đó có thể bỏ qua tất cả các danh sách đen. Mặc
dù có một số vấn đề phải đối mặt với danh sách đen, do tính đơn giản và hiệu quả
13
của chúng, chúng tiếp tục là một trong những kỹ thuật đƣợc sử dụng phổ biến nhất
bởi nhiều hệ thống chống virus hiện nay.
b) Phương pháp tiếp cận heuristic
- Là một số dạng mở rộng của phƣơng pháp dựa trên danh sách đen, trong đó
ý tƣởng là tạo ra một “danh sách đen có chữ ký”. Các dạng tấn công thông thƣờng
đƣợc xác định và dựa trên hành vi của chúng, chữ ký đƣợc gán cho kiểu tấn công
này. Hệ thống phát hiện xâm nhập có thể quét các trang web cho các chữ ký nhƣ
vậy và tăng cờ nếu một số hành vi đáng ngờ đƣợc tìm thấy. Những phƣơng pháp
này có khả năng khái quát hóa tốt hơn danh sách đen, vì chúng có khả năng phát
hiện các mối đe dọa trong các URL mới. Tuy nhiên, các phƣơng pháp nhƣ vậy có
thể đƣợc thiết kế chỉ cho một số giới hạn các mối đe dọa chung, và không thể khái
quát hóa tất cả các loại tấn công. Hơn nữa, bằng cách sử dụng các kỹ thuật
obfuscation, nó không quá khó khăn để vƣợt qua chúng. Một phiên bản cụ thể hơn
của phƣơng pháp tiếp cận heuristic là thông qua phân tích động cơ thực thi của
trang web. Ở đây cũng có ý tƣởng là tìm kiếm chữ ký của hoạt động độc hại nhƣ tạo
quy trình bất thƣờng, chuyển hƣớng lặp lại, v.v.
- Trong phƣơng pháp này sử dụng biểu thức chính quy đƣợc xem là phƣơng
pháp khá hữu hiệu. Một ví dụ cho việc phát hiện URL có chứa mã XSS sử dụng
regex nhƣ sau:
^(http|https)(://)(.+)((\%3C)|<)((\%2F)|\/)*[a-z0-9\%]+((\%3E)|>).
Trong đó:
^(http|https)(://)
Bắt đầu bằng http hoặc https
(.+)
Các ký tự bất kỳ
(\%3C)|<)
Ký tự < hoặc mã URL của nó
(\%2F)|\/
Ký tự / hoặc mã URL của nó
[a-z0-9\%]+
Ký tự chữ và số, hoặc ký tự % xuất hiện một hoặc nhiều
14
lần
((\%3E)|>)
Ký tự > hoặc mã URL của nó
Kết quả các URL có chứa các thẻ html bất kỳ đều bị khớp và đƣợc nhận dạng.
Những phƣơng pháp này đôi khi nhất thiết cần yêu cầu truy cập trang web và
do đó các URL thực sự có thể thực hiện một cuộc tấn công. Kết quả là, các kỹ thuật
nhƣ vậy thƣờng đƣợc thực hiện trong môi trƣờng đƣợc kiểm soát giống nhƣ một
máy ảo hay sandbox dùng một lần. Các kỹ thuật này rất cần yếu tố về tài nguyên và
yêu cầu tất cả việc thực thi mã. Một hạn chế khác là các trang web có thể không
khởi chạy một cuộc tấn công ngay lập tức sau khi đƣợc truy cập và do đó có thể
không bị phát hiện.
Ƣu điểm:
- Đơn giản dễ xây dựng và sử dụng.
- Có thể đóng góp thành cơ sở dữ liệu chung để chia sẻ.
Nhƣợc điểm:
- Khó phát hiện các URL độc hại mới xuất hiện.
- Thời gian dài có thể làm cơ sở dữ liệu cồng kềnh với các dữ liệu cũ không
còn giá trị.
1.2.2 Phát hiện URL độc sử dụng phƣơng pháp học máy
Phát hiện URL độc dựa trên học máy là một phƣơng pháp mới. Đây là hƣớng
sử dụng các thuật toán phân loại để phân loại các URL dựa trên các đặc trƣng, thuộc
tính, hành vi của URL.
15
Ưu nhược điểm:
Ƣu điểm:
- Có tính linh hoạt cao.
- Có khả năng phát hiện các URL độc Chỉ cần dữ liệu huấn luyện ban đầu mà
không cần lƣu trữ dữ liệu này lâu dài giảm chi phí lƣu trữ.
Nhƣợc điểm:
- Cần lƣợng lớn dữ liệu đã đƣợc phân loại trƣớc, chi phí thu thập cao.
- Để tăng độ chính xác cần thời gian thử nghiệm và đánh giá lâu dài.
1.3 Một số công cụ hỗ trợ phát hiện URL độc
1.3.1 URL Void
URL Void là chƣơng trình quét web uy tín giúp phân tích một địa chỉ web
bằng nhiều engine và danh sách đen các tên miền, nhƣ Google SafeBrowsing,
Norton SafeWeb và MyWOT để phát hiện bất kỳ website tiềm ẩn nguy hiểm nào.
Ngƣời dùng phải chèn thủ công một đƣờng link và URLVoid sẽ liệt kê trạng thái
phát hiện tích cực hay tiêu cực bằng những egine đƣợc sử dụng. Ngƣời dùng có thể
kiểm tra danh sách đe dọa (threat log) để biết chi tiết [4].
● Ƣu điểm:
- Tƣơng thích trên nhiều trình duyệt khác nhau.
- Hỗ trợ nhiều công cụ khác: quét tệp, quét địa chỉ IP, phân tích trang web cho
các vấn đề khác, tải xuống mã của trang web mà không duyệt qua nó, URL không
đƣợc chỉnh sửa, …
● Nhƣợc điểm:
- Với việc chỉ có 6 máy quét chống vi-rút khiến nó kém hiệu quả.
- Việc đánh giá và quét đƣợc bắt đầu một cách riêng biệt nên cũng không
thuận tiện.
16
1.3.2 UnMask Parasites
Unmask Parasites là một công cụ bảo mật đơn giản để quét một site và cho
ngƣời dùng biết nếu site mang những link spam, mã độc hay chuyển hƣớng liên kết.
Thƣờng thì các website bị xâm nhập và mã độc đƣợc chèn mà quản trị viên không
hề biết. Unmask Parasites tải về đƣờng link (trang web) đƣợc cung cấp, phân tích
mã HTML, đặc biệt là các link ngoài, iframe và JavaScript [4].
● Ƣu điểm:
- Công cụ khá đơn giản nhƣng mang lại nhiều hiệu quả.
- Hiệu quả trong việc làm nổi bật các iframe độc hại.
● Nhƣợc điểm:
- Dịch vụ này chỉ hữu ích nếu ngƣời dùng đã nghi ngờ rằng có điều gì đó lạ
đang xảy ra trên trang web của họ.
- Công cụ sử dụng phƣơng pháp phỏng đoán để phát hiện mã đáng ngờ, nên có
nguy cơ là nó sẽ phát hiện giả.
1.3.3 PhishTank
Lừa đảo qua mạng (phishing) thì tƣơng đối dễ phát hiện khi nhìn vào URL.
Các ngân hàng và những site nhạy cảm khác thƣờng phải triển khai các biện pháp
phòng chống lừa đảo kiểu này. Một trong những cách đó là sử dụng hệ số index của
những site lừa đảo đƣợc giữ trong PhishTank. Ngƣời dùng cũng có thể bổ sung site
lừa đảo cho danh sách. Nhớ rằng PhishTank không phải là một công cụ bảo mật.
Đây là một dịch vụ miễn phí đƣợc tạo bởi OpenDNS [4].
1.3.4
Dr.Web Anti-Virus Link Checker
Dr.Web Anti-Virus Link Checker là một add-on cho cả Chrome, Firefox,
Opera và IE. Tiện ích sử dụng engine diệt virus trực tuyến Dr.Web để quét tìm nội
dung độc hại trên một link tải về. Tiện ích cũng tự động quét nội dung tải về và quét
nhanh trên tất cả các link mạng xã hội Facebook, Vk.com, Google+. Dịch vụ này
xuất hiện từ năm 2003, và đƣợc cập nhật định kỳ [4].
17
● Ƣu điểm:
- Phát hiện và kiểm tra các liên kết không đúng định dạng.
- Quét nhanh trên tất cả các link mạng xã hội Facebook, Vk.com, Google+.
- Tự động quét nội dung tải về.
- Tốc độ phát hiện cao và tốc độ quét cao.
- Không xung đột với các chƣơng trình chống vi-rút đƣợc cài đặt khác.
● Nhƣợc điểm:
- Quét các tập tin tải về nhƣng tối đa chỉ 12MB
1.3.5
Comodo Site Inspector
Đây là công cụ phát hiện malware và lỗ hổng bảo mật miễn phí để ngƣời dùng
có thể kiểm tra một URL hay các nhà quản trị web có thể sử dụng để thiết lập kiểm
tra hằng ngày. Việc kiểm tra này mất một chút thời gian do về cơ bản Comodo sẽ tải
về tất cả những trang đƣợc chỉ định và chạy chúng trong một môi trƣờng trình duyệt
cách ly (sandbox) [5].
● Ƣu điểm:
- Tự động quét phần mềm độc hại hàng ngày của tất cả các trang web.
- Kiểm tra hàng ngày xem trang web của ngƣời dùng có trong bất kỳ danh
sách đen Internet nào.
- Thông báo ngay nếu phát hiện sự cố.
- Báo cáo đầy đủ và tƣ vấn giảm thiểu mối đe dọa.
● Nhƣợc điểm:
- Việc kiểm tra hằng ngày mất một chút thời gian do về cơ bản Comodo sẽ tải
về tất cả những trang đƣợc chỉ định và chạy chúng trong một môi trƣờng trình duyệt
cách ly (sandbox).
1.3.6
Một số công cụ khác
18
a)
UnShorten.it
URL ngắn xuất hiện dày đặc trên Web ngày nay. Chỉ có một điều là ngƣời
dùng không biết đƣợc đích xác thứ gì ẩn giấu đằng sau URL ngắn đó. Có thể sử
dụng một chƣơng trình kéo dài URL nhƣng dù có nhƣ vây thì ngƣời dùng cũng
không thể biết đƣợc bản thân URL đã kéo dài này có an toàn hay
không. UnShorten.it kết hợp cả hai chức năng: kéo dài URL ngắn và quét URL qua
các công cụ của WOT (Web of Trust) để trả lại cho ngƣời dùng thẻ đánh giá độ tin
cậy. Chỉ cần dán URL ngắn vào chƣơng trình và dịch vụ sẽ trả về URL trực tiếp của
website đích, mô tả website và đánh giá WOT kèm theo hình thu nhỏ của website
đích. UnShorten.it cũng cung cấp các tiện ích mở rộng cho Chrome và Firefox.
b)
VirusTotal
VirusTotal cung cấp hai công cụ cho ngƣời dùng. Một công cụ đăng tải để
quét file nghi vấn và một chƣơng trình quét link kiểm tra site trƣớc khi nhấn vào.
VirusTotal cũng sử dụng một chuỗi các engine diệt virus, quét website, các công cụ
phân tích file và URL trả về những báo cáo chi tiết. Chẳng hạn nhƣ, một số engine
sẽ hiển thị thêm thông báo rất rõ ràng về việc URL có nằm trong một mạng botnet
nào đó hay không. Các công cụ đƣợc cập nhật sau mỗi 15 phút.
c)
Norton Safe Web
Norton Safe Web cung cấp cho ngƣời dùng một cái nhìn tổng quan để có thể
dễ dàng nhận biết đƣợc link có an toàn hay không? Ngoài ra Norton Safe web cũng
cung cấp một bảng tóm tắt các "mối đe dọa" mà chƣơng trình phát hiện trên đƣờng
link của bạn bằng cách đề cập thông qua các yếu tố nhƣ Computer Threats, Identify
Threats và Annoynce.
d)
SiteAdvisor (by McAfee)
McAfee sẽ trả lời cho ngƣời biết câu hỏi đƣờng link mà ngƣời dùng muốn
kiểm tra có an toàn hay không bằng cách click vào nút Download anything on your
computer. Ngoài ra McAfee cũng cung cấp cho ngƣời dùng danh sách các link outbound có chứa link của họ.
19