Skip to main content

Command Palette

Search for a command to run...

Velvet Ant "Operation Highland": APT Trung Quốc cấy backdoor vào tầng xác thực Linux, ẩn mình gần một thập kỷ

Updated
9 min read
Velvet Ant "Operation Highland": APT Trung Quốc cấy backdoor vào tầng xác thực Linux, ẩn mình gần một thập kỷ

Tóm tắt

Velvet Ant — một nhóm APT có liên hệ với Trung Quốc (China-nexus) do hãng Sygnia theo dõi — đã sửa đổi chính các thành phần quyết định "ai được phép đăng nhập" trên hệ thống Linux: thư viện PAM (pam_unix.so) và bộ nhị phân OpenSSH (ssh, sshd, scp). Bằng cách thay các chương trình đăng nhập tin cậy bằng bản đã bị cấy backdoor, kẻ tấn công vừa bỏ qua xác thực bằng mật khẩu cứng, vừa thu thập credential của người dùng hợp lệ ngay khi họ đăng nhập, đồng thời ghi log mọi lệnh được gõ.

Mạng bị nhắm tới là hạ tầng trọng yếu không có kết nối internet trực tiếp. Dấu vết forensic sớm nhất lùi về tận năm 2016 — tức gần một thập kỷ hiện diện mà không bị phát hiện. Vì mã độc nằm ở chính cơ chế kiểm tra credential, các biện pháp containment thông thường như đổi mật khẩu hay kill session gần như vô tác dụng: credential mới sẽ bị đánh cắp y hệt qua cùng đường pam_unix.so / sshd đã bị sửa.

Hành động quan trọng nhất ngay lúc này: trên các host Linux trọng yếu, so sánh pam_unix.so và bộ nhị phân OpenSSH với bản known-good (đối chiếu hash/chữ ký gói), và diệt backdoor TRƯỚC khi thực hiện xoay vòng credential — nếu rotate trước, mật khẩu mới sẽ bị thu hoạch lại ngay.


Velvet Ant là ai

Velvet Ant không phải là chiến dịch đơn lẻ. Qua nhiều cuộc điều tra, Sygnia ghi nhận một mô hình nhất quán: mỗi khi một chỗ đứng bị phát hiện và xử lý, nhóm này lại lặn xuống tầng hạ tầng ít bị giám sát hơn và dựng lại persistence từ vị trí mới.

  • 2023 — PlugX/ShadowPad: trong một vụ kéo dài ~3 năm, nhóm dùng RAT PlugX (DLL side-loading qua iviewers.exe), và khi bị diệt thì tái cấu hình PlugX để dùng một file server nội bộ làm C2, lưu lượng trộn lẫn với traffic nội bộ hợp lệ.

  • F5 BIG-IP làm C2 nội bộ: lợi dụng một thiết bị F5 cũ, lộ internet, hệ điều hành lỗi thời để làm "beachhead" — cài VELVETSTING (beacon C2 mỗi giờ qua port 8443), VELVETTAP (bắt gói), SAMRID (EarthWorm SOCKS proxy).

  • 2024 — CVE-2024-20399 (Cisco NX-OS): khai thác lỗ hổng để cấy backdoor (VELVETSHELL) trực tiếp lên switch Cisco Nexus.

  • Nay — Operation Highland: cùng tư duy đó, nhưng sâu hơn một bậc — kiểm soát chính cơ chế xác thực mà tất cả dịch vụ đều dựa vào.


Sơ đồ kill chain (3 giai đoạn)

Điểm khác biệt cốt lõi của Operation Highland: mạng đích không có đường ra internet trực tiếp. Kẻ tấn công không tìm được lỗ hổng đột nhập trực tiếp, nên đã dựng một chuỗi truy cập nhiều tầng: đứng chân trên hệ thống lộ internet, rồi xuyên qua mạng IT để tới phân vùng hạ tầng trọng yếu.


Phân tích kỹ thuật

1. Backdoor pam_unix.so — bypass và thu hoạch credential

PAM nằm dưới tầng ứng dụng: một module PAM bị cấy backdoor sẽ ảnh hưởng tới mọi dịch vụ dựa vào nó, một cách trong suốt và không sinh log bất thường. Sygnia tìm thấy 9 file pam_unix.so bị sửa, mỗi file biên dịch trong một môi trường build riêng (RPATH khác nhau) — dấu hiệu của một pipeline build theo từng mục tiêu, có tổ chức. Hàm bị nhắm là pam_sm_authenticate, với hai biến thể chính:

  • Chỉ bypass: chấp nhận mật khẩu backdoor cứng; sau khi bypass, chuỗi mật khẩu trong bộ nhớ bị ghi đè NULL để chống phát hiện.

  • Bypass + harvest: chấp nhận mật khẩu backdoor Pamauth@123456 (lưu mã hóa trong binary); nếu mật khẩu người dùng nhập không khớp, ghi cả username + password vào file ẩn /usr/sbin/.ssh.log.

2. OpenSSH sửa đổi — credential theft, keylogging và chống forensic

Bộ OpenSSH (ssh, sshd, scp) bị thay bằng bản độc hại với các năng lực:

  • Credential dumping: ghi credential (cả chiều ra/vào) đã mã hóa vào /usr/share/man9/ph/.ph.man, kèm cờ hướng kết nối (O/I), loại xác thực (B/C/X…), trạng thái thành/bại (Y/N).

  • Keylogging: ghi lại mọi lệnh trong shell, file đặt tên theo MD5 của user + TTY.

  • Cờ -d tắt log riêng: cho phép chính attacker hoạt động qua binary đã cấy mà không để lại bằng chứng về hành vi của mình — dấu hiệu OpSec rất cao.

  • Timestomp: mọi file/thư mục trong /usr/share/man9/ph/ bị gán lại thời gian theo /etc/shells.

  • Tắt SELinux: scp độc hại có thể tắt SELinux khi chạy bằng root.

  • Process hiding (cờ !): ngụy trang tên tiến trình thành [kauditd] -sh để trộn lẫn với daemon audit hợp lệ. Một biến thể cũ hơn ghi credential vào /usr/lib/eth-scsi/libethscsi.so và keylog vào /var/lib/sam/ (định dạng sam_{timestamp}) — chính các log cũ này giúp Sygnia truy ngược hoạt động sớm nhất về năm 2016.

3. authorized_keys

Song song với PAM/OpenSSH, nhóm còn nối khóa công khai của mình vào authorized_keys trên các server bị xâm nhập — một lớp persistence thứ ba, đơn giản nhưng bền, hoạt động độc lập với các binary đã cấy.


OpSec và vì sao rất khó diệt

Đây không phải một đợt dọn persistence thông thường. Khi kẻ tấn công kiểm soát chính cơ chế xác thực, ta không thể "xóa trước, kiểm tra sau": persistence của chúng nằm trong đúng các thành phần (pam_unix.so, ssh/sshd/scp, authorized_keys) mà quản trị viên dựa vào để truy cập và vận hành hệ thống production. Thay nhầm một gói, một binary không tương thích hay thiếu dependency có thể khóa hoàn toàn admin khỏi host — biến việc khắc phục thành sự cố ngừng dịch vụ. Vì vậy việc khắc phục phải được kỹ thuật hóa cẩn thận: lab kiểm thử trước, profiling từng host, có sẵn phương án rollback, và xác thực sức khỏe SSH/auth ngay sau mỗi bước.


Phát hiện & Săn lùng

Operation Highland là ví dụ điển hình vì sao phát hiện dựa trên chữ ký và vận hành theo alert không đủ với một APT kiên nhẫn: không có exploit mới để bắt, không có binary rơi vào thư mục được giám sát. Việc phát hiện phụ thuộc vào threat hunting chủ động, dựa trên giả thuyết — đặt câu hỏi mà SIEM chưa được cấu hình để trả lời.

  • File Integrity Monitoring (FIM) trên các path tương ứng TTP: pam_unix.so, thư mục /etc/pam.d/, bộ nhị phân OpenSSH (ssh, sshd, scp, sftp, ssh-keygen), sshd_config, authorized_keys đặc quyền, unit file systemd / script SysVinit, /etc/sudoers.

  • So sánh binary với bản known-good (hash/chữ ký gói) thay vì chờ alert — không có gì tự động gắn cờ cho bạn.

  • Hunt artifact tầng auth: đường dẫn /usr/share/man9/ph/, file ẩn /usr/sbin/.ssh.log, /usr/lib/eth-scsi/, /var/lib/sam/; RPATH lạ trong PAM (/home/kevin/Desktop/Linux-PAM-*, /c/src/Linux-PAM-*).

  • Windows tương đương: áp dụng nguyên tắc tương tự cho LSASS/LSA trên Domain Controller (giám sát truy cập LSASS, module nạp bất thường, thay đổi Authentication Packages kiểu Skeleton Key).


MITRE ATT&CK (trích từ advisory Velvet Ant của Sygnia)

Tactic Technique
Initial Access T1133 – External Remote Services
Execution T1047 – WMI; T1059.008 – Network Device CLI
Persistence T1037.004 – RC Scripts; T1556 – Modify Authentication Process (PAM/SSH); T1098.004 – SSH Authorized Keys
Defense Evasion T1070.006 – Timestomp; T1036.005 – Masquerading; T1562.004 – Disable System Firewall; T1564 – Hide Artifacts
Credential Access T1003 – OS Credential Dumping; T1056.001 – Keylogging
Lateral Movement T1021.004 – SSH; T1021.002 – SMB; T1570 – Lateral Tool Transfer
Command & Control T1572 – Protocol Tunneling; T1090.001 – Internal Proxy

Lưu ý: T1556 / T1098.004 / T1056.001 là ánh xạ cho Operation Highland (tầng auth); các technique còn lại tổng hợp từ advisory Velvet Ant 2024.


Indicators of Compromise (IOC)

Loại Giá trị Chiến dịch
Path credential dump (SSH mới) /usr/share/man9/ph/.ph.man Operation Highland
Path credential dump (SSH cũ) /usr/lib/eth-scsi/libethscsi.so Operation Highland
Path keylog (biến thể cũ) /var/lib/sam/sam_{timestamp} Operation Highland
File harvest của PAM /usr/sbin/.ssh.log Operation Highland
Mật khẩu backdoor PAM Pamauth@123456 Operation Highland
RPATH lạ trong PAM /home/kevin/Desktop/Linux-PAM-*, /c/src/Linux-PAM-* Operation Highland
Tên tiến trình ngụy trang [khubd] (GS-Netcat), smbd -D (SOCKS5), [kauditd] -sh (scp) Operation Highland
Binary GS-Netcat auditdb tại /usr/sbin/ Operation Highland
C2 IP 202.61.136[.]158, 103.138.13[.]31 Velvet Ant 2024 (F5/PlugX)
Tool VELVETSTING, VELVETTAP, SAMRID (EarthWorm), ESRDE Velvet Ant 2024 (F5)
CVE liên quan CVE-2024-20399 (Cisco NX-OS) Velvet Ant 2024 (Cisco)

Lưu ý nguồn: Hai IP C2 và các tool VELVET* thuộc báo cáo Velvet Ant 2024 (F5/Cisco), không phải trực tiếp từ Operation Highland — đưa vào để đối chiếu hành vi nhóm. IOC đầy đủ tầng xác thực (hash file PAM/SSH) cần lấy từ danh sách IoC chính thức Sygnia công bố kèm bài Operation Highland.


Khuyến nghị

  • Diệt persistence TRƯỚC khi rotate credential. Nếu đổi mật khẩu khi pam_unix.so/sshd vẫn bị cấy, mật khẩu mới sẽ bị thu hoạch lại ngay.

  • Triển khai FIM trên tầng xác thực (PAM, /etc/pam.d/, OpenSSH binary, sshd_config, authorized_keys) và forward alert về SIEM; áp dụng nguyên tắc tương tự cho LSASS trên Windows.

  • Hunt thay vì chờ alert: đối chiếu binary với known-good, kiểm tra các path artifact và RPATH lạ ở trên trên toàn fleet Linux trọng yếu.

  • Chuẩn bị phục hồi an toàn: golden recovery host với OS build và binary đã kiểm chứng, kèm kế hoạch rollback/emergency access — vì một lần thay nhầm có thể tự khóa mình khỏi hệ thống.


Nguồn tham khảo

  1. The Hacker News — China-Linked Hackers Backdoored Linux Login Software to Hide for Nearly a Decade (2026-06-12)

  2. Sygnia — Velvet Ant's Operation Highland: How a China-Nexus Actor Infiltrated an Internal Network Undetected (2026-06-08)

  3. Sygnia — China-Nexus Threat Group 'Velvet Ant' Abuses F5 Load Balancers for Persistence (2024-06-03)

More from this blog

F

FPT IS Security

851 posts

Dedicated to providing insightful articles on cybersecurity threat intelligence, aimed at empowering individuals and organizations to navigate the digital landscape safely.