TDCLOUD  ·  0%
Kiến Thức

Dấu hiệu VPS bị hack và cần làm gì ngay khi phát hiện

C
Cố Tổng
06/10/2026
2 lượt xem

VPS bỗng chạy chậm dù bạn không cài thêm gì, CPU lúc nào cũng gần 100%, hay nhà cung cấp gửi thông báo VPS của bạn đang gửi spam? Đó có thể là dấu hiệu máy chủ đã bị xâm nhập. Bài viết này giúp bạn nhận biết dấu hiệu VPS bị hack, kiểm tra nhanh trên Linux và Windows Server, và xử lý theo đúng thứ tự để không làm mất dữ liệu hay để kẻ xâm nhập quay lại.

Tóm tắt nhanh:

  • Dấu hiệu phổ biến: CPU cao bất thường, tiến trình lạ, tài khoản lạ, tác vụ hẹn giờ lạ, lưu lượng mạng tăng vọt, file lạ trong website, đăng nhập lạ trong log, bị báo cáo lạm dụng.
  • Kiểm tra trên Linux: ps, crontab, /var/log/auth.log, last, lastb. Trên Windows: Event Viewer (Event ID 4624, 4625), query user, Task Scheduler.
  • Xử lý theo thứ tự: cô lập → đổi mật khẩu từ máy sạch → sao lưu dữ liệu cần thiết → tìm nguyên nhân → cài lại hệ điều hành nếu không chắc → khôi phục dữ liệu sạch → vá lỗ hổng.

8 dấu hiệu VPS có thể đã bị hack

Tám dấu hiệu VPS bị hack: CPU cao, tiến trình lạ, tài khoản lạ, tác vụ hẹn giờ lạ, mạng tăng đột biến, file lạ trong web, đăng nhập lạ, bị báo cáo lạm dụng
Một dấu hiệu riêng lẻ chưa chắc là bị hack, nhưng từ hai dấu hiệu trở lên thì nên kiểm tra ngay.
  1. CPU luôn gần 100%: kẻ xâm nhập thường cài mã đào tiền ảo, chiếm gần hết CPU. VPS chậm hẳn dù bạn không chạy gì nặng.
  2. Tiến trình lạ: tên tiến trình vô nghĩa hoặc giả dạng tiến trình hệ thống, chạy từ thư mục tạm như /tmp, /dev/shm hay C:\Users\Public.
  3. Tài khoản lạ: xuất hiện user bạn không tạo, đặc biệt là tài khoản có quyền quản trị.
  4. Tác vụ hẹn giờ lạ: cron (Linux) hoặc Task Scheduler (Windows) có tác vụ tự tải và chạy file từ Internet. Đây là cách mã độc tự "hồi sinh" sau khi bị xoá.
  5. Lưu lượng mạng tăng đột biến: lưu lượng gửi đi lớn bất thường, có thể VPS đang bị dùng để gửi spam, dò quét hoặc tấn công nơi khác.
  6. File lạ trong website: file PHP mới xuất hiện, trang bị chèn link quảng cáo, chuyển hướng sang website lạ, Google cảnh báo trang nguy hiểm.
  7. Đăng nhập lạ: log ghi nhận đăng nhập thành công từ IP hoặc vào giờ bạn không dùng.
  8. Bị báo cáo lạm dụng: nhà cung cấp hoặc tổ chức khác thông báo IP VPS của bạn đang gửi spam hay tấn công.

Cách kiểm tra nhanh trên VPS Linux

Đăng nhập SSH bằng quyền root hoặc user có sudo (xem cách kết nối VPS Linux qua SSH) rồi chạy các lệnh dưới đây. Các lệnh chỉ đọc thông tin, không thay đổi hệ thống.

Tiến trình ngốn CPU và tác vụ hẹn giờ

ps aux --sort=-%cpu | head -10
crontab -l
sudo ls -la /etc/cron.d /etc/cron.hourly /var/spool/cron/crontabs
Terminal Linux hiển thị tiến trình lạ chạy từ thư mục tmp chiếm gần 400% CPU và một cron tự tải script từ IP lạ mỗi 5 phút
Ví dụ minh họa: tiến trình chạy từ /tmp ngốn gần 4 nhân CPU, kèm cron tự tải lại mã độc mỗi 5 phút.

Nếu thấy tiến trình đáng ngờ, hãy ghi lại PID và đường dẫn, xem nó đang kết nối đi đâu bằng sudo ss -tunp. Đừng chỉ "kill" tiến trình rồi yên tâm: nếu còn cron hay dịch vụ khởi động cùng hệ thống, mã độc sẽ chạy lại sau vài phút.

Lịch sử đăng nhập và tài khoản

grep "Accepted" /var/log/auth.log | tail -20     # Ubuntu, Debian
sudo grep "Accepted" /var/log/secure | tail -20  # CentOS và dòng RHEL
last -a | head -20                               # các lần đăng nhập gần đây
sudo lastb | head -20                            # các lần đăng nhập thất bại
awk -F: '$3 == 0 {print $1}' /etc/passwd         # tài khoản có quyền root
Log Linux cho thấy đăng nhập root bằng mật khẩu thành công từ IP lạ sau nhiều lần thử sai và một tài khoản lạ có UID 0
Ví dụ minh họa: một lần đăng nhập bằng mật khẩu thành công ngay sau loạt thử sai, và một tài khoản UID 0 lạ.

Lệnh cuối liệt kê mọi tài khoản có UID 0, tức có toàn quyền như root. Bình thường chỉ có duy nhất root. Ngoài ra, hãy xem file ~/.ssh/authorized_keys của root và các user: một khoá SSH lạ trong đó cho phép kẻ xâm nhập vào lại kể cả khi bạn đã đổi mật khẩu.

File mới bị sửa trong website

find /var/www -type f -name "*.php" -mtime -3 -ls

Lệnh này liệt kê file PHP bị sửa trong 3 ngày gần đây. Đổi /var/www thành thư mục web thực tế của bạn.

Cách kiểm tra nhanh trên VPS Windows Server

Kết nối vào VPS qua Remote Desktop, mở PowerShell bằng quyền Administrator.

Đăng nhập thất bại và thành công

Windows ghi mỗi lần đăng nhập vào nhật ký Security: Event ID 4625 là đăng nhập thất bại, Event ID 4624 là đăng nhập thành công (đăng nhập qua Remote Desktop có Logon Type 10). Lệnh sau đếm những IP thử đăng nhập sai nhiều nhất:

Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4625} -MaxEvents 500 |
  ForEach-Object { $_.Properties[19].Value } | Group-Object |
  Sort-Object Count -Descending | Select-Object -First 5 Count, Name
PowerShell trên Windows Server đếm số lần đăng nhập thất bại Event ID 4625 theo IP và lệnh query user hiển thị phiên của tài khoản lạ
Ví dụ minh họa: hàng trăm lần đăng nhập thất bại từ một IP, và một phiên của tài khoản lạ.

Hàng trăm lần thử sai cho thấy VPS đang bị dò mật khẩu, việc này rất phổ biến với cổng 3389 mặc định. Điều đáng lo là có lần đăng nhập thành công (4624) từ IP lạ. Bạn có thể xem trực quan trong Event Viewer → Windows Logs → Security → Filter Current Log → nhập 4624.

Phiên đăng nhập, tài khoản và tác vụ hẹn giờ

query user
Get-LocalUser | Select-Object Name, Enabled, LastLogon
Get-LocalGroupMember Administrators
Get-ScheduledTask | Where-Object State -ne 'Disabled' | Select-Object TaskPath, TaskName

Chú ý tài khoản lạ trong nhóm Administrators và các tác vụ hẹn giờ nằm ngay thư mục gốc (TaskPath là \) có tên lạ. Mở Task Manager, tab Details, bấm cột CPU để xem tiến trình nào ngốn tài nguyên, chuột phải chọn Open file location để biết file nằm ở đâu.

Phát hiện VPS bị hack: cần làm gì ngay?

Khi đã có dấu hiệu rõ ràng, hãy làm theo thứ tự dưới đây. Thứ tự quan trọng: đổi mật khẩu trước khi cô lập có thể vô ích, cài lại hệ điều hành trước khi sao lưu sẽ mất dữ liệu.

Quy trình 7 bước xử lý VPS bị hack: cô lập, đổi mật khẩu, sao lưu dữ liệu, tìm nguyên nhân, cài lại hệ điều hành, khôi phục dữ liệu sạch, vá lỗ hổng
Bảy bước xử lý theo thứ tự. Hai bước đầu cần làm ngay khi phát hiện.
  1. Cô lập: tắt dịch vụ đang bị lợi dụng (web, mail), chặn IP lạ trong tường lửa. Nếu VPS đang tấn công hay gửi spam ra ngoài, có thể tạm tắt VPS trong trang quản lý. Đừng vội xoá log hay file lạ, chúng giúp tìm ra đường vào.
  2. Đổi mật khẩu từ một máy sạch: mật khẩu VPS, trang quản lý dịch vụ, database, tài khoản quản trị website, email. Nếu máy tính cá nhân của bạn có thể đã nhiễm mã độc đánh cắp mật khẩu, hãy đổi từ thiết bị khác.
  3. Sao lưu dữ liệu cần thiết: chỉ những gì cần giữ: database, file khách tải lên, file cấu hình. Không sao lưu cả thư mục hệ thống, vì có thể mang theo mã độc.
  4. Tìm nguyên nhân: mật khẩu yếu bị dò ra, plugin hay theme có lỗ hổng, phần mềm lâu không cập nhật, hay file tải từ nguồn không rõ. Không tìm ra nguyên nhân thì rất dễ bị hack lại.
  5. Cài lại hệ điều hành sạch: nếu không chắc chắn đã dọn sạch, đây là cách an toàn. Bạn có thể cài lại ngay trong mục Install của trang quản lý VPS (xem hướng dẫn quản lý VPS tại TDCLOUD). Lưu ý: cài lại sẽ xoá toàn bộ dữ liệu trên VPS.
  6. Khôi phục dữ liệu sạch: ưu tiên bản sao lưu từ trước thời điểm bị xâm nhập. Với website, nên cài lại mã nguồn gốc từ nguồn chính thức rồi chỉ đưa lại database và thư mục tải lên đã được kiểm tra.
  7. Vá lỗ hổng rồi mới mở lại: cập nhật hệ điều hành và phần mềm, đặt mật khẩu mới, bật tường lửa, đổi port quản trị, tắt đăng nhập root bằng mật khẩu trên Linux.

Nếu VPS chứa dữ liệu khách hàng hoặc dữ liệu cá nhân, hãy cân nhắc trách nhiệm thông báo với người bị ảnh hưởng theo quy định hiện hành, và lưu lại log, ảnh chụp làm bằng chứng trước khi cài lại.

Phòng ngừa để không bị hack lại

  • Mật khẩu mạnh và riêng: dài từ 14 ký tự, không dùng lại ở nơi khác.
  • Linux: dùng SSH key, tắt đăng nhập root bằng mật khẩu, bật UFW và fail2ban. Chi tiết trong bài bảo mật VPS Linux cơ bản.
  • Windows: đổi port Remote Desktop khỏi 3389 (hướng dẫn đổi port), bật Windows Update, chỉ cài phần mềm từ nguồn tin cậy. Xem thêm bảo mật VPS Windows cơ bản.
  • Cập nhật thường xuyên: hệ điều hành, web server, CMS, plugin và theme.
  • Sao lưu đều đặn: TDCLOUD có sao lưu hằng ngày cho toàn bộ gói VPS, nhưng bạn vẫn nên giữ thêm bản sao riêng ở nơi khác theo quy tắc 3-2-1.
  • Theo dõi: đặt giám sát để biết ngay khi dịch vụ có vấn đề (xem bài uptime và SLA là gì), định kỳ xem log đăng nhập và mức dùng CPU.

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

CPU cao có phải lúc nào cũng là bị hack?

Không. CPU cao có thể do website có nhiều truy cập, tool đang chạy nặng, hay một tiến trình bị lỗi lặp. Hãy xem tên và đường dẫn tiến trình: nếu đó là phần mềm bạn biết thì nguyên nhân thường là thiếu tài nguyên. Bài vCPU là gì có cách đánh giá.

Chỉ xoá file mã độc có đủ không?

Thường là không. Kẻ xâm nhập hay để lại nhiều "cửa sau": tài khoản phụ, khoá SSH, cron, dịch vụ khởi động cùng hệ thống. Nếu không chắc đã tìm hết, cài lại hệ điều hành sạch rồi khôi phục dữ liệu đã kiểm tra là cách chắc chắn hơn.

Mất quyền đăng nhập vào VPS thì làm sao?

Nếu không vào được qua SSH hay Remote Desktop, bạn có thể dùng VNC Console trong trang quản lý để truy cập trực tiếp màn hình VPS, hoặc đặt lại mật khẩu trong mục Settings. Nếu vẫn không được, hãy liên hệ đội kỹ thuật.

Nhiều lần đăng nhập thất bại trong log có nguy hiểm không?

Đó là việc dò mật khẩu tự động, VPS nào có IP public cũng gặp. Nó chỉ nguy hiểm khi mật khẩu yếu. Mật khẩu mạnh, đổi port và các công cụ chặn IP thử sai nhiều lần sẽ giảm đáng kể nguy cơ.

Nếu nghi VPS tại TDCLOUD có dấu hiệu bị xâm nhập mà bạn chưa chắc nên làm gì, hãy liên hệ đội kỹ thuật kèm thời điểm phát hiện và ảnh chụp các dấu hiệu, chúng tôi sẽ cùng bạn kiểm tra.

Nếu bạn thấy bài viết này hữu ích...

Nhấp vào ngôi sao để đánh giá!

Chưa có đánh giá nào. Hãy là người đầu tiên!

Có thể bạn quan tâm