Giới thiệu dự án

Tấn công giả mạo (Phishing) hiện nay không còn là các hành vi gian lận đơn lẻ mà đã biến chuyển thành một mô hình tội phạm có tổ chức mang tên "Phishing-as-a-Service" (PaaS). Theo báo cáo tổng quan an ninh mạng của Wandera, trung bình cứ mỗi 20 giây lại có một trang web lừa đảo mới được khởi tạo trên không gian mạng. Báo cáo từ Nhóm Công tác Chống Lừa đảo (APWG) ghi nhận hơn 300.000 vụ tấn công phishing trong một quý, tăng gấp 3 lần so với giai đoạn trước đó. Đồng thời, thống kê từ Zscaler cho thấy các cuộc tấn công lừa đảo tăng 41,2% theo năm, nhắm trực diện vào người dùng thông qua các phương tiện truyền thông kỹ thuật số như tin nhắn SMS (Smishing), thư điện tử (Email Phishing), mạng xã hội và các ứng dụng OTT. Các thương hiệu bị mạo danh hàng đầu bao gồm Microsoft (7.962 vụ), PayPal (4.811 vụ), Chase Personal Banking (1.085 vụ) và Facebook (993 vụ).

                 +---------------------------------------------+
                 |          URL / Tin nhắn đầu vào             |
                 +----------------------+----------------------+
                                        |
                   +--------------------+--------------------+
                   |                                         |
                   v                                         v
   +-------------------------------+         +-------------------------------+
   |  Nhánh 1: Thông tin tĩnh      |         |  Nhánh 2: Thông tin giao diện  |
   |  - 47 Đặc trưng (Lexical,     |         |  - Sandbox Selenium Capture   |
   |    Content, External Service) |         |  - Faster R-CNN (ResNet-50)   |
   |  - Random Forest Classifier   |         |  - Siamese Network Matcher    |
   +---------------+---------------+         +---------------+---------------+
                   |                                         |
                   +--------------------+--------------------+
                                        v
                         +-----------------------------+
                         |     Ensemble Decision &     |
                         |   Visual Explainability     |
                         +-----------------------------+

Vấn đề cốt lõi đặt ra là các phương pháp bảo vệ truyền thống dựa trên Blacklist (danh sách đen) hoặc phân tích tĩnh thuần túy (Static Analysis) bộc lộ độ trễ lớn trước các cuộc tấn công Zero-day và kỹ thuật né tránh (Evasion Attacks). Ngược lại, các phương pháp dựa trên thị giác máy tính truyền thống (như Earth Mover’s Distance - EMD hay Scale-Invariant Feature Transform - SIFT) lại tiêu tốn tài nguyên tính toán và dễ bị đánh lừa khi giao diện có sự thay đổi nhỏ.

Đồ án tập trung giải quyết bài toán: Xây dựng hệ thống phát hiện URL lừa đảo đa phương thức (Hybrid Multi-modal Solution) kết hợp giữa phân tích đặc trưng tĩnh chuyên sâu và thị giác máy tính học sâu (Deep Learning).

Mục tiêu cụ thể của dự án:

  1. Thiết kế kiến trúc nhận dạng giao diện thị giác: Sử dụng mạng nơ-ron học sâu tích hợp (Faster R-CNN với backbone ResNet-50) để khoanh vùng logo, kết hợp mạng Siamese Network nhằm nhận diện thương hiệu mục tiêu bất chấp các biến thể đồ họa.
  2. Xây dựng bộ phân loại học máy có giám sát: Sàng lọc và trích xuất 47 đặc trưng tĩnh tối ưu từ hơn 100 thuộc tính (bao gồm Lexical, HTML Content và External Services), huấn luyện với thuật toán Random Forest để đạt độ chính xác phân loại trên 97%.
  3. Phát triển nền tảng phát hiện trực quan PhishDetect: Đóng gói toàn bộ mô hình thành ứng dụng web hoàn chỉnh trên nền framework Django, cho phép người dùng kiểm tra URL đơn lẻ, danh sách liên kết hoặc phân tích nội dung văn bản chứa URL với khả năng giải thích trực quan (Visual Explainability).

Phạm vi nghiên cứu giới hạn ở việc thu thập và phân tích các URL lừa đảo trực tiếp, chạy trong môi trường Sandbox cô lập an toàn thông qua Selenium WebDriver, đảm bảo tính toán thời gian thực và không gây ảnh hưởng đến hệ thống người dùng.


Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Các công trình nghiên cứu phát hiện lừa đảo hiện nay phân tách thành hai trường phái rõ rệt: phát hiện dựa trên thông tin tĩnh và phát hiện dựa trên thông tin giao diện. Bảng so sánh dưới đây tổng hợp các ưu nhược điểm của những phương pháp phổ biến:

Giải pháp Cơ chế hoạt động Ưu điểm Nhược điểm / Lỗ hổng
Blacklist/Whitelist (Phishnet, DNS-based) Tra cứu URL/Domain trên cơ sở dữ liệu đã biết. Tốc độ phản hồi microsecond, độ chính xác tuyệt đối với link đã lập chỉ mục. Vô hiệu trước tấn công Zero-day; không phát hiện được URL có tuổi thọ dưới 24h.
Phân tích tĩnh URL/HTML (Jeeva & Rajsingh, PHAS) Trích xuất từ khóa, TF-IDF, độ dài, cấu trúc ngữ pháp URL. Chi phí tính toán thấp, không cần render trang web. Dễ bị vượt qua bởi kỹ thuật làm rối mã nguồn (Obfuscation) và URL shortening.
Thị giác truyền thống (PhishZoo, EMD, SIFT) So khớp ảnh chụp màn hình hoặc trích xuất điểm đặc trưng đồ họa. Độc lập với mã nguồn HTML, phát hiện tốt các bản sao giao diện. Chi phí tính toán $O(N^2)$, độ nhạy cao với thay đổi tỉ lệ, màu sắc và ánh sáng.
Hệ thống đề xuất (Hybrid Dual-Branch) Kết hợp Random Forest (47 đặc trưng) và Faster R-CNN + Siamese Network. Khắc phục biến thể logo, nhận diện Zero-day, độ chính xác cao (97%), có giải thích trực quan. Cần môi trường Sandbox chụp ảnh màn hình, đòi hỏi tài nguyên GPU cho nhánh Deep Learning.

Yêu cầu người dùng được phân loại theo mô hình MoSCoW:

  • Must have: Phân loại nhị phân chính xác (Phishing vs Benign), module Sandbox chụp ảnh tự động, phân tích 47 đặc trưng tĩnh, nhận diện thương hiệu mục tiêu.
  • Should have: Giao diện dashboard hiển thị bounding-box khoanh vùng logo và trường nhập liệu, phân tích độ sai lệch giữa tên miền dự định (Intended Domain) và tên miền thực tế (Actual Domain).
  • Could have: Hỗ trợ phân tích hàng loạt (Batch URL processing), tích hợp API trích xuất điểm uy tín OpenPageRank.
  • Won't have (lần này): Quét sâu vào các liên kết nằm sau các lớp bảo vệ yêu cầu giải CAPTCHA hoặc xác thực 2 lớp (2FA).

Thiết kế hệ thống

Kiến trúc hệ thống bao gồm 3 tầng thành phần chính:

[Input: Raw Text / URL]
          |
          v
+-------------------------------------------------------------------------+
|                       TẦNG TIỀN XỬ LÝ & SANDBOX                         |
|  - URL Extractor & Canonicalizer                                        |
|  - Selenium WebDriver 4.x Headless Sandbox (Chụp ảnh & Trích xuất DOM)  |
+--------------------+------------------------------------+---------------+
                     |                                    |
                     v                                    v
+------------------------------------+  +---------------------------------+
|     TẦNG MÔ HÌNH HỌC MÁY TĨNH      |  |   TẦNG THỊ GIÁC HỌC SÂU HYBRID  |
| - Lexical Feature Extractor (22)   |  | - Faster R-CNN (ResNet-50 FPN)  |
| - Content Feature Extractor (17)   |  |   Detects: [Logo, Input Box]    |
| - External API Extractor (8)       |  | - Siamese Network (ResNet-Backbone)
| - Random Forest Classifier         |  |   Computes Similarity Score     |
|   (Output: Static Phishing Prob)   |  |   (Output: Brand Identity & Box)|
+--------------------+---------------+  +-----------------+---------------+
                     |                                    |
                     +-----------------+------------------+
                                       |
                                       v
+-------------------------------------------------------------------------+
|                  TẦNG HỢP NHẤT & HIỂN THỊ (DJANGO WEB)                  |
|  - Decision Rule Engine: Weighted Score Thresholding                    |
|  - Threat Visualizer (Bounding Boxes, Discrepancy Alert, WHOIS Meta)    |
+-------------------------------------------------------------------------+

Technology Stack chi tiết:

  • Core Platform: Python 3.10, PyTorch 2.0.1, Torchvision 0.15.2.
  • Object Detection: Detectron2 (Facebook AI Research) tích hợp Faster R-CNN.
  • Machine Learning & Feature Selection: Scikit-learn 1.2.2, EvalML 0.44.0, Imbalanced-learn (imblearn) 0.10.1.
  • Automation & Crawling: Selenium WebDriver 4.9.0, ChromeDriver 114.0.
  • Web Application: Django Framework 4.2.1, SQLite/PostgreSQL, Plotly 5.14.1.
  • Hardware Acceleration: NVIDIA CUDA Core, cuDNN v8.6.

An toàn và hiệu năng: Module Sandbox được cấu hình chạy trong môi trường container cô lập, kích hoạt cơ chế Gradient Masking trong quá trình huấn luyện nhằm vô hiệu hóa các mẫu tấn công đối kháng (Adversarial Evasion Attacks).

Methodology

Quy trình phát triển áp dụng mô hình Agile/Scrum với 4 giai đoạn rõ ràng:

  1. Giai đoạn 1 - Data Engineering (Tuần 1 - Tuần 3): Thu thập và làm sạch 30.000 URL từ PhishTank, OpenPhish, Phishpedia và Yandex. Sử dụng VPN và request header xoay vòng để vượt qua kỹ thuật che giấu (Cloaking).
  2. Giai đoạn 2 - Static Feature Modeling (Tuần 4 - Tuần 6): Xây dựng module trích xuất hơn 100 đặc trưng tĩnh, áp dụng thuật toán lọc tính quan trọng của đặc trưng (Feature Importance), giữ lại 47 thuộc tính quan trọng nhất và huấn luyện mô hình Random Forest.
  3. Giai đoạn 3 - Deep Learning Visual Branch (Tuần 7 - Tuần 10): Huấn luyện mô hình Faster R-CNN phát hiện vùng logo/input box; xây dựng mạng Siamese đối sánh ảnh logo thực tế với tập tham chiếu thương hiệu.
  4. Giai đoạn 4 - Tích hợp & Đánh giá (Tuần 11 - Tuần 12): Tích hợp hai nhánh qua Django API, tối ưu hóa độ trễ phản hồi, kiểm thử toàn diện trên tập dữ liệu kiểm định 2.000 và 5.000 URL.

Implementation và kết quả

Development process

Quá trình trích xuất đặc trưng tĩnh được chia thành 3 nhóm thuộc tính cụ thể:

  • Lexical Features (22 đặc trưng): Độ dài URL (url_length), độ dài hostname (length_hostname), số lượng dấu chấm (nb_dots), số dấu gạch ngang (nb_hyphens), số lượng subdomain (nb_subdomains), sự tồn tại của token HTTPS (https_token), độ hỗn loạn chuỗi ký tự (string_entropy).
  • Content-based Features (17 đặc trưng): Độ hỗn loạn nội dung (page_entropy), số lượng thẻ script (num_script_tags), độ dài mã HTML (html_length), số lượng liên kết ngoài (ratio_extMedia), số thẻ nhúng ẩn (num_suspicious_elements), độ dài trung bình khối mã JavaScript (avg_script_length).
  • External Service Features (8 đặc trưng): Thứ hạng website (page_rank từ OpenPageRank), quốc gia máy chủ (host_country), thời gian đăng ký tên miền (domain_registration_length).

Dưới đây là đoạn mã nguồn trích xuất đặc trưng cấu trúc URL và độ hỗn loạn chuỗi (String Entropy):

import math
import tldextract
from urllib.parse import urlparse

def calculate_entropy(text: str) -> float:
    """Tính toán giá trị Shannon Entropy của chuỗi văn bản."""
    if not text:
        return 0.0
    entropy = 0.0
    length = len(text)
    prob = [float(text.count(c)) / length for c in dict.fromkeys(list(text))]
    for p in prob:
        if p > 0.0:
            entropy -= p * math.log2(p)
    return float(f"{entropy:.4f}")

def extract_lexical_features(url: str) -> dict:
    """Trích xuất các đặc trưng Lexical từ chuỗi URL đầu vào."""
    parsed = urlparse(url)
    ext = tldextract.extract(url)
    hostname = parsed.netloc
    path = parsed.path
    
    return {
        "url_length": len(url),
        "host_length": len(hostname),
        "path_length": len(path),
        "string_entropy": calculate_entropy(url),
        "nb_dots": url.count('.'),
        "nb_hyphens": url.count('-'),
        "nb_and": url.count('&'),
        "nb_eq": url.count('='),
        "nb_slash": url.count('/'),
        "nb_digits": sum(c.isdigit() for c in url),
        "nb_subdomains": len(ext.subdomain.split('.')) if ext.subdomain else 0,
        "https_token": 1 if parsed.scheme == "https" else 0,
        "http_in_path": 1 if "http" in path else 0
    }

Đối với nhánh thị giác học sâu, Detectron2 được cấu hình để triển khai mô hình Faster R-CNN với backbone ResNet-50-FPN. Sau khi trích xuất được vùng chứa logo ứng viên $L = {l_1, l_2, \dots, l_k}$, logo có điểm tin cậy (Confidence Score) cao nhất sẽ được đưa qua mạng Siamese để tính toán khoảng cách vector đặc trưng đối với kho dữ liệu thương hiệu mục tiêu.

import torch
import torch.nn as nn
from torchvision import models

class SiameseNetwork(nn.Module):
    """Mạng Siamese so khớp đặc trưng đồ họa logo với kho thương hiệu tham chiếu."""
    def __init__(self):
        super(SiameseNetwork, self).__init__()
        # Sử dụng backbone ResNet-50 đã tiền huấn luyện
        resnet = models.resnet50(weights=models.ResNet50_Weights.DEFAULT)
        self.feature_extractor = nn.Sequential(*list(resnet.children())[:-1])
        self.fc = nn.Sequential(
            nn.Linear(2048, 512),
            nn.ReLU(inplace=True),
            nn.Linear(512, 128)
        )

    def forward_once(self, x: torch.Tensor) -> torch.Tensor:
        out = self.feature_extractor(x)
        out = out.view(out.size(0), -1)
        out = self.fc(out)
        return out

    def forward(self, input1: torch.Tensor, input2: torch.Tensor):
        output1 = self.forward_once(input1)
        output2 = self.forward_once(input2)
        # Tính toán khoảng cách Euclidean giữa hai vector biểu diễn
        euclidean_distance = nn.functional.pairwise_distance(output1, output2)
        return euclidean_distance

Testing và validation

Hiệu năng của các mô hình được đánh giá toàn diện trên tập dữ liệu 2.000 URL chuẩn hóa (bao gồm 427 URL lừa đảo đang hoạt động và 1.573 URL lành tính) cùng tập thử nghiệm mở rộng 5.000 URL.

Các chỉ số đánh giá bao gồm: True Positive Rate (TPR), False Positive Rate (FPR), Accuracy (ACC), Precision, Recall và F1-Score:

$$\text{Accuracy} = \frac{TP + TN}{TP + TN + FP + FN}$$

$$\text{F1-Score} = 2 \times \frac{\text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}}$$

Kết quả thực nghiệm chi tiết của các thuật toán phân loại trên tập đặc trưng tĩnh:

Mô hình thuật toán Accuracy (%) Precision (%) Recall (%) F1-Score (%)
Logistic Regression 88.25 86.40 85.10 85.74
Support Vector Machine (SVM) 91.50 90.12 89.80 89.96
Decision Tree (J48) 93.10 91.75 92.30 92.02
Random Forest (Đề xuất) 97.00 96.85 97.15 97.00
                       CONFUSION MATRIX (Tập 2.000 URLs)
                             Thực tế Phishing    Thực tế Benign
     Dự đoán Phishing [            415                 13        ]
     Dự đoán Benign   [             12               1560        ]

Kết quả đạt được

  • Nhánh thông tin tĩnh: Mô hình Random Forest với 47 đặc trưng trích xuất đạt độ chính xác 97,00%, độ nhạy (Recall) đạt 97,15%, và tỷ lệ dương tính giả (FPR) được kiểm soát ở mức cực thấp 0,82%.
  • Nhánh nhận dạng giao diện thị giác: Mạng Faster R-CNN đạt điểm Mean Average Precision (mAP) 93,4% trong việc định vị chính xác vùng logo và input box. Mạng Siamese Network đạt diện tích dưới đường cong Precision-Recall (AUC-PR) là 0,94, nhận diện chính xác các biến thể màu sắc và độ nghiêng của các logo phức tạp (như Microsoft, PayPal, Chase).
  • Hệ thống tổng hợp: Khả năng phát hiện tổng thể trên tập dữ liệu kiểm thử 5.000 URL đạt độ chính xác 98,2%, loại bỏ hơn 95% các trường hợp lừa đảo tinh vi mà các hệ thống đơn lẻ không thể phát hiện.

Đổi mới và đóng góp

  1. Kiến trúc Hybrid Deep Learning hai pha phân tách: Tách rời bài toán nhận dạng trang lừa đảo giao diện thành hai pha chuyên biệt: Pha 1 - Phát hiện đối tượng (Faster R-CNN) và Pha 2 - Nhận dạng thương hiệu không cần mẫu lừa đảo trước (Siamese Network). Cơ chế này giúp hệ thống không cần huấn luyện lại khi xuất hiện trang web lừa đảo mới, giảm hơn 80% chi phí gán nhãn dữ liệu.
  2. Kỹ thuật chống tấn công né tránh (Evasion Attack Defense): Tích hợp kỹ thuật Gradient Masking và cơ chế trích xuất đa tầng (Multi-layered Feature Extraction), ngăn chặn kẻ tấn công thao túng mã HTML hoặc chèn nhiễu pixel vào logo nhằm làm sai lệch dự đoán của mô hình.
  3. Thuật toán tối ưu hóa 47 đặc trưng tĩnh: Sử dụng EvalML và cây phân rã tầm quan trọng đặc trưng để thu hẹp tập thuộc tính từ hơn 100 xuống 47 đặc trưng cốt lõi, giúp tốc độ trích xuất và phân loại tĩnh đạt dưới 120ms/URL.
  4. Cơ chế giải thích trực quan (Visual Explainability): Không chỉ đưa ra kết luận nhị phân dạng Black-box, hệ thống highlight trực tiếp vị trí logo giả mạo, ô nhập liệu nguy hiểm và thông báo độ lệch tên miền (Domain Discrepancy) cho người dùng cuối.

Ứng dụng thực tế và triển khai

Kịch bản ứng dụng thực tế

  • Tích hợp cổng kiểm duyệt Mail Gateway: Tự động trích xuất và quét toàn bộ liên kết bên trong các email gửi đến tổ chức, bảo vệ doanh nghiệp trước các đợt tấn công Spear Phishing và CEO Fraud.
  • Tiện ích mở rộng (Browser Extension) bảo vệ người dùng: Phân tích thời gian thực các đường link người dùng nhấp vào từ mạng xã hội hoặc tin nhắn SMS, chặn đứng nguy cơ đánh cắp danh tính.
  • Hệ thống giám sát thương hiệu (Brand Monitoring Center): Hỗ trợ các ngân hàng và tập đoàn tài chính quét tự động không gian mạng để tìm kiếm các website mạo danh thương hiệu trái phép.
+-----------------------------------------------------------------------------------+
|                        MÔ HÌNH TRIỂN KHAI CLOUD ENTERPRISE                        |
|                                                                                   |
|  [Clients: Browsers / Mail Server API]                                            |
|                 |                                                                 |
|                 v                                                                 |
|  [Nginx Load Balancer] ---> [Django REST API Workers (Gunicorn)]                  |
|                                       |                                           |
|                   +-------------------+-------------------+                       |
|                   |                                       |                       |
|                   v                                       v                       |
|       [Celery Async Tasks]                   [Fast Static Worker]                 |
|       - Selenium Sandbox Cluster             - 47 Features Extractor              |
|       - GPU Worker: Faster R-CNN + Siamese   - Random Forest Inference (<120ms)   |
|                   |                                                               |
|                   +-------------------+-------------------+                       |
|                                       v                                           |
|                        [Redis Cache & PostgreSQL DB]                              |
+-----------------------------------------------------------------------------------+

Hướng dẫn triển khai hệ thống (Deployment Guide)

Yêu cầu hệ thống:

  • Hệ điều hành: Ubuntu 20.04/22.04 LTS hoặc Linux tương thích.
  • Phần cứng tối thiểu: 4 Cores CPU, 16GB RAM, GPU NVIDIA với tối thiểu 8GB VRAM (hỗ trợ CUDA 11.7+).
  • Môi trường: Python 3.10+, Google Chrome & ChromeDriver tương thích.

Các bước thiết lập và khởi chạy dịch vụ:

# 1. Khởi tạo môi trường ảo Conda
conda create -n phishdetect python=3.10 -y
conda activate phishdetect

# 2. Cài đặt PyTorch và các thư viện học máy hỗ trợ CUDA
pip install torch==2.0.1 torchvision==0.15.2 --index-url https://download.pytorch.org/whl/cu118
pip install scikit-learn==1.2.2 selenium==4.9.0 django==4.2.1 tldextract==3.4.4

# 3. Cài đặt Detectron2 từ mã nguồn
python -m pip install 'git+https://github.com/facebookresearch/detectron2.git'

# 4. Clone dự án và di chuyển cơ sở dữ liệu
git clone https://github.com/uit-research/phishdetect-ml.git
cd phishdetect-ml
python manage.py migrate

# 5. Khởi chạy máy chủ phát hiện PhishDetect
python manage.py runserver 0.0.0.0:8000

Hạn chế và hướng phát triển

Hạn chế kỹ thuật

  • Độ trễ khi chụp ảnh Sandbox: Quá trình khởi tạo trình duyệt ảo Selenium và kết xuất toàn bộ trang web mất trung bình từ 2,5 - 4,5 giây tùy thuộc vào tốc độ mạng và dung lượng tài nguyên trang web.
  • Website sử dụng mã bảo vệ động: Các trang web triển khai Captcha chống bot hoặc yêu cầu tương tác JavaScript phức tạp trước khi hiển thị nội dung có thể làm giảm hiệu quả chụp ảnh của Sandbox.
  • Tiêu thụ tài nguyên tính toán: Nhánh Deep Learning yêu cầu cấu hình máy chủ có card đồ họa rời (GPU), làm tăng chi phí hạ tầng khi triển khai trên diện rộng.

Hướng phát triển trong tương lai

  • Áp dụng các kỹ thuật nén mô hình như Model Quantization và TensorRT để tăng tốc độ suy luận (Inference) của Faster R-CNN và Siamese Network trên môi trường CPU/Edge Devices.
  • Thay thế Selenium bằng các giải pháp Headless Browser siêu nhẹ (như Playwright hoặc Puppeteer với giao thức Chrome DevTools Protocol) để giảm độ trễ chụp ảnh xuống dưới 1 giây.
  • Tích hợp mô hình ngôn ngữ lớn (Large Language Models - LLM) để phân tích ngữ cảnh xã hội học (Social Engineering Context) trong các đoạn tin nhắn lừa đảo.

Đối tượng hưởng lợi

  • Sinh viên & Học viên chuyên ngành An toàn thông tin/Khoa học dữ liệu: Nguồn tài liệu thực nghiệm giá trị cao về việc kết hợp giữa trích xuất đặc trưng truyền thống và thị giác máy tính học sâu trong giải quyết bài toán an ninh mạng thực tế.
  • Kỹ sư phát triển phần mềm & Chuyên viên An ninh mạng (SecOps): Cung cấp mã nguồn tham khảo chuẩn mực về quy trình xây dựng Sandbox an toàn, trích xuất đặc trưng URL/DOM và thiết kế API phòng chống lừa đảo thời gian thực.
  • Doanh nghiệp & Tổ chức tài chính: Phương án kỹ thuật khả thi với chi phí tối ưu để triển khai các hệ thống cảnh báo sớm mạo danh thương hiệu, bảo vệ khách hàng khỏi các cuộc tấn công đánh cắp tài khoản.
  • Nhà nghiên cứu học thuật: Cung cấp bộ phương pháp luận và số liệu đối sánh thực nghiệm rõ ràng trên tập dữ liệu phishing thực tế nhằm phát triển các công trình nghiên cứu chuyên sâu tiếp theo.

Câu hỏi thường gặp

1. Yêu cầu phần cứng và môi trường tối thiểu để triển khai PhishDetect là gì?

Hệ thống yêu cầu máy chủ Linux (Ubuntu 20.04/22.04 LTS), tối thiểu 4 Core CPU, 16GB RAM và bắt buộc có GPU NVIDIA (tối thiểu 8GB VRAM hỗ trợ CUDA 11.7 trở lên) để phục vụ nhánh xử lý ảnh Faster R-CNN và Siamese Network. Đối với môi trường chỉ chạy nhánh thông tin tĩnh Random Forest, hệ thống chỉ cần 2 Core CPU và 4GB RAM.

2. Hệ thống xử lý thế nào đối với các URL lừa đảo Zero-day vừa xuất hiện?

Nhánh thông tin tĩnh với 47 đặc trưng cấu trúc (Lexical và Content) không phụ thuộc vào danh sách đen, kết hợp với mạng Siamese Network so khớp hình ảnh logo thương hiệu trực tiếp từ giao diện. Do đó, ngay cả khi URL mới được đăng ký vài phút, hệ thống vẫn nhận diện được hành vi giả mạo nếu trang web mạo danh logo và cấu trúc của các thương hiệu mục tiêu.

3. PhishDetect có khả năng tích hợp vào hệ thống SIEM hoặc Email Gateway sẵn có không?

Có. Hệ thống được đóng gói dưới dạng dịch vụ web Django cung cấp đầy đủ chuẩn giao tiếp RESTful API. Hệ thống có thể tiếp nhận yêu cầu phân tích URL bất đồng bộ qua JSON payload và trả về kết quả phân loại, điểm số rủi ro cùng tọa độ bounding-box của logo bị mạo danh trong thời gian thực.

4. Chi phí vận hành và bảo trì mô hình định kỳ như thế nào?

Nhánh nhận dạng thương hiệu Siamese Network không cần huấn luyện lại khi có trang web lừa đảo mới xuất hiện mà chỉ cần cập nhật thêm ảnh logo chuẩn của các thương hiệu mới vào cơ sở dữ liệu tham chiếu ($O(1)$ complexity). Nhánh Random Forest chỉ cần tái huấn luyện định kỳ 3-6 tháng/lần với tập dữ liệu đặc trưng tĩnh mới.

5. Khả năng mở rộng quy mô (Scalability) của hệ thống khi có hàng triệu URL cần quét mỗi ngày?

Kiến trúc hỗ trợ phân tách hoàn toàn các Worker. Các tác vụ nặng như chụp ảnh Sandbox (Selenium) và suy luận Deep Learning có thể được đưa vào hàng đợi thông điệp (Message Queue như RabbitMQ/Celery) và phân tán ra cụm nhiều máy chủ tính toán (GPU Worker Nodes), đảm bảo khả năng mở rộng ngang (Horizontal Scaling) linh hoạt.


Kết luận

Đồ án tốt nghiệp "Xây dựng giải pháp phát hiện Phishing Link sử dụng máy học" của nhóm tác giả Lê Tôn Nhân và Lâm Thanh Ngân (Trường Đại học Công nghệ Thông tin - ĐHQG TP.HCM) đã giải quyết trọn vẹn và chuyên sâu bài toán nhận diện website giả mạo bằng cách tiếp cận đa phương thức sáng tạo. Bằng việc kết hợp sức mạnh phân tích nhanh chóng của thuật toán Random Forest trên 47 đặc trưng tĩnh (đạt độ chính xác 97,00%) cùng độ chuẩn xác của mô hình học sâu Hybrid (Faster R-CNN và Siamese Network với AUC-PR đạt 0,94), hệ thống PhishDetect đã chứng minh tính vượt trội trong việc loại bỏ điểm mù của các phương pháp truyền thống, bảo vệ an toàn cho người dùng trước các mối đe dọa trực tuyến ngày càng phức tạp.