Giao thức Finger từ năm 1977 vẫn đang phát tán mã độc vào năm 2026

18 tháng 8, 2026·9 phút đọc

Một cuộc tấn công mới cho thấy giao thức Finger cổ xưa từ năm 1977 vẫn đang được tin tặc khai thác để phát tán RAT Python trên Windows, vượt qua mọi biện pháp phòng thủ truyền thống. Sự việc nhấn mạnh lỗ hổng nghiêm trọng: các cảnh báo EDR liên tục đổ về nhưng không có ai xử lý, và phải đến khi kết nối dữ liệu với nền tảng điều tra tự động, chuỗi tấn công nhiều giai đoạn mới được phơi bày.

Giao thức Finger từ năm 1977 vẫn đang phát tán mã độc vào năm 2026

Giao thức Finger từ năm 1977 vẫn đang phát tán mã độc vào năm 2026

Một cuộc tấn công mới được Artemis Security công bố đã hé lộ chi tiết đáng lo ngại: giao thức Finger ra đời từ năm 1977, vốn đã bị vô hiệu hóa trên gần như mọi máy chủ, vẫn đang hoạt động như một kênh phát tán mã độc hiệu quả trên Windows. Kẻ tấn công đã dùng nó để cài một trojan truy cập từ xa (RAT) viết bằng Python, trong khi hệ thống bảo mật của nạn nhân liên tục cảnh báo nhưng không có ai hành động.

Sự việc cho thấy khoảng cách chết người giữa việc phát hiện và xử lý sự cố, đồng thời nhấn mạnh một thực tế: các quy tắc phát hiện mã độc có thể chạy, nhưng chúng không thể suy luận để phân biệt đâu là mối đe dọa thật giữa hàng ngàn cảnh báo giả.

Minh họa quy trình tấn công qua giao thức FingerMinh họa quy trình tấn công qua giao thức Finger

Cảnh báo liên tục, nhưng không ai hành động

Một trojan truy cập từ xa được biên dịch từ Python đã khởi động lại trên máy tính xách tay của nhân viên mỗi lần đăng nhập. Phần mềm giám sát endpoint của công ty liên tục phát cảnh báo về hành vi này — nhưng mọi cảnh báo đều được cấu hình ở chế độ chỉ cảnh báo (alert-only), nghĩa là chúng chỉ cờ hóa, không chặn và không được xử lý.

Khâu phát tán chính là chi tiết quan trọng nhất: một lệnh finger bị làm rối bằng ký tự ^ (caret) — trông như f^i^n^g^e^r — khai thác giao thức Finger cổ điển để tải lệnh từ máy chủ từ xa và thực thi trực tiếp. Điều này cho thấy kỹ thuật chi tiết của kẻ tấn công ngày càng tinh vi để né tránh phát hiện.

Giao thức từ 1977: Chiếc cầu nối bất ngờ cho mã độc hiện đại

Giao thức Finger ra đời năm 1977, trả lời một câu hỏi duy nhất: "ai đang đăng nhập trên máy chủ này?", qua cổng TCP 79. Ngày nay hầu như không ai chạy dịch vụ finger nữa. Nhưng finger.exe vẫn được tích hợp sẵn trong Windows.

Năm 2020, nhà nghiên cứu John Page (hyp3rlinx) đã chỉ ra rằng nó có thể bị biến thành công cụ tải file: truy vấn user@host, và mọi thứ máy chủ finger trả về sẽ được chuyển thẳng vào cmd. Kỹ thuật này được lưu trong dự án LOLBAS và đã được các chiến dịch tấn công thực tế sử dụng.

Lý do kẻ tấn công chọn Finger rất đơn giản:

  • không phải HTTP, nên các proxy web và kiểm tra TLS không thể thấy
  • finger.exe là một binary Windows hợp lệ, có chữ ký số, nên danh sách ứng dụng được phép vẫn cho chạy
  • Cổng 79 ít được giám sát, khiến lệnh này trông bình thường nhưng thực chất là nguy hiểm

Chuỗi tấn công: Từ Finger đến RAT Python trong 2 giây

Quá trình tấn công diễn ra theo từng giai đoạn rất nhanh:

Thời gian (UTC)Hành độngKỹ thuật MITRE ATT&CK
Ngày 1 · 14:38:18Lệnh finger bị làm rối nhập vào, tải và thực thi lệnh từ bên ngoàiT1105 · T1059.003 · T1027
Ngày 1 · 14:38:20pythonw.exe có chữ ký hợp lệ chạy file .pyc từ C:\ProgramData\T1218 · T1564.003
Ngày 1 · 14:38:20Thêm registry Run key "Py" để duy trì tồn tạiT1547.001
Ngày 1 · 15:37:13PowerShell khởi chạy, thả module thứ hai vào thư mục ngẫu nhiênT1059.001 · T1105
Ngày 2 · (×4 lần đăng nhập)RAT tự chạy lại mỗi lần đăng nhậpT1547.001
Ngày 4Kết nối feed endpoint với Artemis
Ngày 5Artemis phơi bày hoạt động mà EDR đã cảnh báo từ lâu

Điểm đáng chú ý: Trình thông dịch dùng trong cuộc tấn công là pythonw.exe — phiên bản Python thật, được Python Software Foundation ký số. Kẻ tấn công thả nó vào máy và trỏ đến file main.pyc tự biên dịch. Đây là chiêu trò "sống nhờ trên đất đối phương" (living-off-the-land): mã độc nằm trong file .pyc, được chạy bởi một binary sạch mà mọi phần mềm diệt virus đều tin tưởng.

Điểm đặc biệt: pythonw.exe chạy không có cửa sổ console, nên người dùng không thấy gì hiện lên. Lệnh reg add ghi registry Run key tên "Py" để RAT tự khởi động lại sau mỗi lần đăng nhập, và >nul 2>&1 nuốt toàn bộ đầu ra, khiến bước duy trì tồn tại không để lại dấu vết.

Sau 59 phút, main.pyc lại khởi chạy PowerShell và thả payload thứ hai (tên __init__.py) vào thư mục có tên ngẫu nhiên chứa ký tự đặc biệt — dấu hiệu đặc trưng của quy trình dàn dựng tự động.

Kỹ thuật cũ nhưng đang hồi sinh

Điều đáng nói là cuộc tấn công này không có gì mới — mọi mắt xích đều là kỹ thuật đã được ghi nhận:

  • Finger làm công cụ tải mã đã 5 năm tuổi và có trong LOLBAS
  • Được sử dụng lần đầu bởi trojan ngân hàng Astaroth/Guildma vào năm 2020
  • Từ cuối năm 2025, kỹ thuật này tái xuất mạnh mẽ trong các chiến dịch ClickFix do SANS ISC theo dõi (cụm KongTuke, SmartApeSG)
  • RAT Python với pythonw.exe có chữ ký và payload .pyc trong C:\ProgramData\ là mô hình phổ biến của các dòng ModeloRAT, lspy, CastleLoader

Giá trị của vụ việc không nằm ở phát hiện mới, mà nằm ở bài học: một giao thức hàng chục năm tuổi vẫn có thể trở thành cửa ngõ cho mã độc hiện đại, và các quy tắc bảo mật truyền thống không thể phân biệt đâu là mối đe dọa thật sự.

Khoảng cách giữa cảnh báo và hành động

Vấn đề không phải là thiếu khả năng phát hiện. Quy tắc của EDR đã chạy chính xác — nhưng nó được cấu hình chỉ cảnh báo, không ngăn chặn. Và nó gây nhiễu: hai máy khác trong tổ chức (một máy của nhà phát triển, một máy của nhà cung cấp phần mềm khoa học) cũng kích hoạt quy tắc này với số lượng lớn. Thiết bị thực sự bị xâm nhập là "cây kim trong đống rơm" do chính quy tắc tạo ra.

"Mọi cảnh báo trong câu chuyện này đều là thật. Nhưng không một cảnh báo nào được xử lý."

Đó không phải lỗi điều chỉnh tham số. Đó là bản chất của một quy tắc: nó có thể phát hiện, nhưng không thể suy luận. Nó đã nhìn thấy cả RAT lẫn công cụ phát triển, nhưng không có cách nào nói ra đâu là thứ quan trọng.

Artemis phát hiện như thế nào?

Hai ngày trước khi sự việc được phơi bày, khách hàng đã kết nối dữ liệu endpoint với Artemis — nền tảng điều tra an ninh mạng. Khoảng 39 giờ sau khi kết nối, hệ thống tự động phát hiện: Python biên dịch chạy từ vị trí bất thường, kèm Registry persistence, trên một máy nhân viên.

Sau đó, một trợ lý AI tiếp nhận điều tra và thực hiện:

  • Liệt kê nguồn dữ liệu, tìm thấy trường cảnh báo chuẩn hóa trống, chuyển sang log thô của endpoint
  • Dò ngược cây tiến trình từ Python đến lệnh finger bị làm rối
  • Tách hoạt động độc hại khỏi nhiễu của hai máy khác
  • Kiểm tra IP thoát, xác nhận là mạng dân cư hợp pháp của người dùng
  • Xác minh chữ ký số của trình thông dịch (sạch, như dự kiến)
  • Kết luận: một cuộc xâm nhập đa giai đoạn, mức độ tin cậy cao

Toàn bộ quá trình: khoảng 20 truy vấn qua 5 nguồn dữ liệu (endpoint alerts, threats, activities, firewall, Windows event logs) — hoàn thành trong sáu phút. Việc mà một nhà phân tích con người phải mất hàng giờ để ráp nối từ hàng chục nghìn cảnh báo.

Bài học cho người bảo vệ hệ thống

Ba hành động có thể áp dụng ngay hôm nay:

  1. Cảnh báo bất kỳ lệnh finger.exe nào chạy trên máy trạm — không có lý do chính đáng nào để dùng nó. Nếu lệnh chứa ký tự @, đó là tín hiệu nguy hiểm cao. Một quy tắc duy nhất này đã đủ để chặn đứng bước phát tán trong vụ việc trên.

  2. Theo dõi trình thông dịch và LOLBin chạy từ C:\ProgramData\ — đặc biệt là các phiên bản chạy không cửa sổ (pythonw.exe, start /b). Chữ ký hợp lệ không phải là bằng chứng vô tội. Dấu hiệu nguy hiểm nằm ở vị trí chạy và tiến trình cha.

  3. Đừng chạy quy tắc quan trọng ở chế độ chỉ cảnh báo mà không có quy trình xử lý — một quy tắc đưa ra cảnh báo không ai đọc còn tệ hơn là không có quy tắc. Nếu phát hiện đáng tin để tự động chặn, hãy cho nó chặn. Nếu không, nó cần sự tương quan và một con người phán quyết.

Giao thức cũ, mối đe dọa mới, và sự cần thiết của điều tra tự động

Sự thật phũ phàng: hệ thống bảo mật truyền thống không thể thắng trong cuộc chiến này nếu chỉ dựa vào các quy tắc tĩnh. Một giao thức 49 năm tuổi, một file thực thi hợp lệ, một quy tắc tạo ra quá nhiều cảnh báo — tất cả đều lành mạnh khi đứng riêng lẻ, nhưng kết hợp lại thành một chuỗi tấn công chết người.

Để bảo vệ tổ chức trước các cuộc tấn công đa giai đoạn, các đội ngũ bảo mật tại Việt Nam cần thay đổi tư duy: không chỉ thu thập log, mà phải kết nối các điểm dữ liệu thành câu chuyện hoàn chỉnh. Trong bối cảnh các cuộc tấn công RAT ngày càng tinh vi, việc đầu tư vào nền tảng điều tra tự động có thể là khác biệt giữa một sự cố bị chặn đứng và một vụ xâm nhập âm thầm kéo dài nhiều ngày.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗