SecOps Portal
Trang chủ › Cảnh Báo Mã Độc

Những dấu hiệu cho thấy hệ thống máy chủ bị cài backdoor

Ban biên tập SecOps Portal · · Cập nhật

Một máy chủ bị cài backdoor thường để lộ dấu vết ở năm nơi: tài khoản và khóa SSH lạ, tiến trình hoặc dịch vụ không rõ nguồn gốc, kết nối mạng ra ngoài bất thường, tác vụ định kỳ mới xuất hiện và tệp hệ thống hoặc tệp web bị sửa đổi. Backdoor được thiết kế để tồn tại lâu và im lặng, nên bạn hiếm khi thấy nó "phá" gì ngay; dấu hiệu nằm ở những thay đổi nhỏ mà quản trị viên không hề thực hiện.

Backdoor là gì và vì sao khó phát hiện

Backdoor là cơ chế cho phép kẻ tấn công quay lại hệ thống mà không cần lặp lại cách xâm nhập ban đầu. Sau khi khai thác được một lỗ hổng, kẻ tấn công cài backdoor để duy trì quyền truy cập ngay cả khi lỗ hổng đó được vá. Hình thức rất đa dạng: một tài khoản người dùng thêm vào, một khóa SSH chèn vào danh sách được phép, một tệp web shell nhỏ trong thư mục website, hay một dịch vụ giả danh tiến trình hệ thống.

Điểm chung là chúng cố hòa lẫn vào hoạt động bình thường. Tên tệp giống tên hệ thống, tiến trình đặt tên như dịch vụ quen thuộc, kết nối ra ngoài dùng cổng phổ biến. Vì vậy, kiểm tra backdoor là so sánh trạng thái hiện tại với những gì bạn biết là đúng.

Dấu hiệu ở tài khoản và quyền truy cập

  • Tài khoản người dùng mới mà không ai trong đội tạo.
  • Tài khoản cũ hoặc tài khoản dịch vụ bất ngờ có shell đăng nhập hoặc được thêm vào nhóm quản trị.
  • Khóa công khai lạ trong tệp authorized_keys của người dùng hoặc root.
  • Cấu hình sudo bị sửa, cho phép chạy lệnh không cần mật khẩu.
  • Đăng nhập thành công vào giờ bất thường hoặc từ địa chỉ IP chưa từng thấy.

Trên Windows Server, cần xem thêm thành viên nhóm Administrators, tài khoản có quyền Remote Desktop và các tài khoản bị kích hoạt lại.

Dấu hiệu ở tiến trình và dịch vụ

Liệt kê tiến trình đang chạy và đối chiếu với danh sách dịch vụ bạn cài. Chú ý:

  • Tiến trình chạy từ thư mục tạm như /tmp, /dev/shm hoặc thư mục ẩn.
  • Tiến trình có tên giống dịch vụ hệ thống nhưng đường dẫn thực thi khác thường.
  • Tệp thực thi đã bị xóa khỏi đĩa nhưng tiến trình vẫn chạy.
  • Dịch vụ systemd hoặc Windows Service mới, mô tả mơ hồ.
  • Tiến trình web server sinh ra shell hoặc trình thông dịch lệnh, điều gần như không bao giờ xảy ra khi hoạt động bình thường.

Dấu hiệu ở kết nối mạng

Backdoor cần liên lạc với kẻ điều khiển. Có hai kiểu: mở một cổng chờ kết nối vào (bind) hoặc chủ động gọi ra ngoài (reverse). Kiểu gọi ra phổ biến hơn vì vượt tường lửa dễ hơn.

  • Cổng lắng nghe mới mà bạn không cấu hình.
  • Kết nối ra ngoài định kỳ tới địa chỉ lạ, đặc biệt từ máy chủ vốn chỉ cần nhận kết nối.
  • Lượng dữ liệu gửi đi tăng bất thường vào ban đêm.
  • Truy vấn DNS tới tên miền ngẫu nhiên hoặc tên miền mới đăng ký.

Đối chiếu với kết quả quét cổng từ bên ngoài cũng hữu ích: nếu bạn thấy một cổng mở mà tài liệu hạ tầng không ghi nhận, đó là điều cần điều tra. Cách dùng công cụ quét để lập danh mục cổng có trong bài rà quét cổng mạng bằng Nmap.

Dấu hiệu ở tác vụ định kỳ và cơ chế khởi động

Để sống sót qua lần khởi động lại, backdoor cần tự chạy. Hãy kiểm tra:

  • Crontab của từng người dùng và các thư mục cron hệ thống.
  • Timer của systemd, tệp unit mới.
  • Tệp khởi động shell như .bashrc, .profile bị thêm lệnh lạ.
  • Task Scheduler và khóa Registry Run trên Windows.
  • Thư viện được nạp sẵn qua cấu hình preload bất thường.

Dấu hiệu ở tệp web và ứng dụng

Với máy chủ web, web shell là dạng backdoor rất phổ biến: một tệp script nhỏ nhận lệnh qua tham số HTTP và thực thi trên máy chủ. Dấu hiệu:

  • Tệp script mới trong thư mục upload, thư mục ảnh, cache, nơi lẽ ra chỉ chứa dữ liệu tĩnh.
  • Tệp có ngày sửa đổi lệch với đợt triển khai gần nhất.
  • Mã bị làm rối (obfuscated), chứa chuỗi mã hóa dài hoặc hàm thực thi động.
  • Nhật ký truy cập ghi nhận yêu cầu POST tới một tệp lạ, lặp lại từ cùng một IP.

Nhật ký là nguồn chứng cứ quan trọng nhất trong trường hợp này. Hướng dẫn đọc và lọc nhật ký có trong bài phân tích log máy chủ.

Xác minh mà không làm mất bằng chứng

Khi có nghi ngờ, đừng vội xóa tệp lạ. Hãy:

  1. Ghi lại thời điểm, ảnh chụp danh sách tiến trình, kết nối mạng, tài khoản.
  2. Sao chép tệp đáng ngờ và nhật ký sang nơi lưu trữ riêng.
  3. So sánh mã băm tệp hệ thống với gói cài đặt gốc bằng công cụ kiểm tra toàn vẹn của trình quản lý gói.
  4. Kiểm tra từ một môi trường đáng tin cậy, vì công cụ trên máy bị xâm nhập có thể đã bị thay thế để che giấu.

Lưu ý: rootkit có thể sửa các lệnh liệt kê tiến trình hay tệp. Nếu kết quả trên máy khác với quan sát từ bên ngoài (ví dụ lưu lượng mạng), hãy giả định máy đã bị chiếm quyền sâu.

Ứng phó khi xác nhận có backdoor

Gỡ một backdoor đơn lẻ hiếm khi đủ, vì kẻ tấn công thường cài nhiều cơ chế dự phòng. Hướng tiếp cận an toàn:

  1. Cách ly máy chủ khỏi mạng hoặc giới hạn kết nối ra ngoài.
  2. Xác định con đường xâm nhập ban đầu để vá.
  3. Thu hồi và cấp lại mọi thông tin bí mật từng có trên máy: mật khẩu, khóa SSH, khóa API, chứng chỉ.
  4. Dựng lại máy chủ từ ảnh sạch, triển khai lại ứng dụng từ mã nguồn kiểm soát.
  5. Khôi phục dữ liệu từ bản sao lưu đã xác minh trước thời điểm xâm nhập.

Quy trình khôi phục sau sự cố, gồm cả cách chọn bản sao lưu an toàn, được trình bày trong bài các bước phục hồi dữ liệu sau tấn công mạng.

Giảm nguy cơ bị cài backdoor

  • Tắt đăng nhập SSH bằng mật khẩu, chỉ dùng khóa và giới hạn IP quản trị.
  • Không cho phép thực thi script trong thư mục upload.
  • Giám sát toàn vẹn tệp cho thư mục hệ thống và thư mục web.
  • Đẩy nhật ký về máy chủ tập trung để kẻ tấn công không xóa được dấu vết.
  • Rà soát tài khoản, khóa và tác vụ định kỳ theo lịch.
  • Cập nhật hệ điều hành, CMS, plugin kịp thời.

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

Phần mềm diệt virus có phát hiện được backdoor trên máy chủ không?

Có thể phát hiện các mẫu phổ biến, nhưng backdoor tùy biến hoặc dùng công cụ hợp lệ thường lọt qua. Cần kết hợp giám sát toàn vẹn tệp, nhật ký và rà soát cấu hình định kỳ.

Xóa web shell rồi thì máy chủ đã an toàn chưa?

Chưa chắc. Kẻ tấn công thường để lại nhiều cơ chế quay lại như tài khoản, khóa SSH, tác vụ định kỳ. Bạn cần tìm con đường xâm nhập ban đầu và cân nhắc dựng lại máy chủ.

Làm sao biết lệnh hệ thống đã bị thay thế bởi rootkit?

So sánh mã băm tệp với gói gốc bằng công cụ kiểm tra của trình quản lý gói, hoặc khởi động từ môi trường sạch để kiểm tra ổ đĩa. Kết quả khác biệt là dấu hiệu đáng lo.

Có nên tắt máy chủ ngay khi nghi bị backdoor?

Tắt nguồn làm mất dữ liệu trong bộ nhớ có giá trị điều tra. Thường nên cách ly mạng trước, thu thập bằng chứng, sau đó mới tắt hoặc dựng lại máy.

Bài liên quan