Computer Forensics – Bài 7: Phân tích bộ nhớ (Memory Analysis)

ket qua phan tich bo nho

Phân tích bộ nhớ (Memory Analysis) là một kỹ thuật quan trọng trong Computer Forensics, giúp các nhà điều tra truy cập và phân tích dữ liệu tạm thời được lưu trữ trong bộ nhớ RAM của hệ thống. Dữ liệu bộ nhớ có thể chứa thông tin quan trọng như các tiến trình đang chạy, dữ liệu mạng, mật khẩu và các bằng chứng khác mà không thể tìm thấy trên ổ đĩa cứng.

Cách lấy mẫu và phân tích dữ liệu từ bộ nhớ RAM

Lấy mẫu bộ nhớ RAM

Lấy mẫu bộ nhớ (memory acquisition) là bước đầu tiên trong phân tích bộ nhớ. Quá trình này cần được thực hiện cẩn thận để tránh làm thay đổi trạng thái của hệ thống và mất dữ liệu quan trọng. Một số công cụ phổ biến để lấy mẫu bộ nhớ bao gồm:

  • FTK Imager: Công cụ miễn phí cho phép tạo ảnh bộ nhớ RAM.
  • Volatility: Một bộ công cụ mạnh mẽ cho phép thu thập và phân tích dữ liệu bộ nhớ.
  • LiME (Linux Memory Extractor): Một công cụ mã nguồn mở để thu thập bộ nhớ từ hệ thống Linux.

Ví dụ: Sử dụng FTK Imager để lấy mẫu bộ nhớ RAM từ một máy tính Windows. Quá trình này bao gồm việc cài đặt FTK Imager trên USB và chạy nó trên máy tính cần phân tích để tạo ảnh bộ nhớ RAM.

thu thap du lieu bo nho TK Imager
Thu thập dữ liệu bộ nhớ với FTK Imager. (Ảnh minh họa AI)

Phân tích dữ liệu bộ nhớ

Sau khi lấy mẫu bộ nhớ, bước tiếp theo là phân tích dữ liệu để tìm kiếm thông tin hữu ích. Dữ liệu trong bộ nhớ có thể rất phức tạp, vì vậy cần sử dụng các công cụ và kỹ thuật phù hợp để phân tích. Một số phương pháp phân tích bao gồm:

  • Phân tích tiến trình (Process Analysis): Xác định và phân tích các tiến trình đang chạy trong bộ nhớ.
  • Phân tích mạng (Network Analysis): Xác định và phân tích các kết nối mạng và dữ liệu truyền qua mạng.
  • Phân tích mã độc (Malware Analysis): Tìm kiếm và phân tích các mẫu mã độc trong bộ nhớ.
  • Phân tích cấu trúc hệ thống (System Structure Analysis): Xác định cấu trúc và các thành phần của hệ thống trong bộ nhớ.

Ví dụ: Sử dụng Volatility để phân tích ảnh bộ nhớ và xác định các tiến trình đang chạy, các kết nối mạng, và các mẫu mã độc.

phan tich du lieu bo nho voi Volatility Framework
Phân tích dữ liệu bộ nhớ với Volatility Framework. (Ảnh minh họa AI)

Các công cụ và phương pháp để tìm kiếm thông tin hữu ích từ dữ liệu bộ nhớ

Công cụ phân tích bộ nhớ

  • Volatility: Bộ công cụ mã nguồn mở mạnh mẽ cho phép phân tích dữ liệu bộ nhớ trên nhiều hệ điều hành khác nhau.
  • Rekall: Một công cụ phân tích bộ nhớ mã nguồn mở khác, được phát triển từ Volatility.
  • Redline: Công cụ phân tích bộ nhớ và hệ thống từ FireEye, tập trung vào việc phát hiện các hành vi đáng ngờ và mã độc.

Ví dụ: Sử dụng Volatility để phân tích một ảnh bộ nhớ và tìm kiếm các tiến trình ẩn, các đoạn mã độc và thông tin đăng nhập.

Phương pháp phân tích bộ nhớ

  • Phân tích tiến trình: Sử dụng Volatility để liệt kê và kiểm tra các tiến trình đang chạy, xác định các tiến trình bất thường hoặc đáng ngờ.
volatility -f memory.dmp --profile=Win10x64_18362 pslist

Ví dụ: Khi phân tích một ảnh bộ nhớ, bạn phát hiện một tiến trình lạ không khớp với bất kỳ ứng dụng nào mà người dùng đã cài đặt. Tiến trình này có thể là một mẫu mã độc đang chạy ẩn trong hệ thống.

  • Phân tích kết nối mạng: Sử dụng Volatility để liệt kê và kiểm tra các kết nối mạng, xác định các kết nối đáng ngờ hoặc bất thường.
volatility -f memory.dmp --profile=Win10x64_18362 netscan

Ví dụ: Phân tích các kết nối mạng từ ảnh bộ nhớ, bạn phát hiện một kết nối đến một địa chỉ IP không xác định đang truyền dữ liệu ra bên ngoài. Điều này có thể cho thấy hoạt động của mã độc hoặc phần mềm gián điệp.

  • Phân tích module và DLL: Sử dụng Volatility để liệt kê và kiểm tra các module và DLL đang được tải trong bộ nhớ, tìm kiếm các module lạ hoặc không hợp lệ.
volatility -f memory.dmp --profile=Win10x64_18362 dlllist

Ví dụ: Phân tích danh sách các module và DLL, bạn phát hiện một DLL không hợp lệ được tải bởi một tiến trình hệ thống. DLL này có thể là mã độc được tiêm vào tiến trình hệ thống.

  • Phân tích cấu trúc hệ thống: Sử dụng Volatility để kiểm tra cấu trúc hệ thống và các thành phần quan trọng như registry, bộ nhớ đệm và các cấu trúc dữ liệu khác.
volatility -f memory.dmp --profile=Win10x64_18362 hivelist

Ví dụ: Phân tích các khóa registry từ ảnh bộ nhớ, bạn phát hiện một khóa registry mới được tạo bởi một tiến trình không xác định. Khóa registry này có thể là dấu hiệu của một cuộc tấn công hoặc mã độc.

phan tich hanh vi cua ma doc trong moi truong
Phân tích hành vi của mã độc trong môi trường sandbox. (Ảnh minh họa AI)

Ví dụ minh họa

Ví dụ 1: Phát hiện tiến trình ẩn

Một nhà điều tra số học nhận được ảnh bộ nhớ từ một hệ thống nghi ngờ bị nhiễm mã độc. Sử dụng Volatility, nhà điều tra liệt kê các tiến trình đang chạy và phát hiện một tiến trình lạ không khớp với bất kỳ ứng dụng nào mà người dùng đã cài đặt. Tiến trình này chạy từ một đường dẫn tệp không hợp lệ và sử dụng nhiều tài nguyên hệ thống.

volatility -f memory.dmp --profile=Win10x64_18362 pslist

Nhà điều tra sử dụng các lệnh bổ sung của Volatility để trích xuất và phân tích tiến trình này, xác định rằng nó thực sự là một mẫu mã độc đang chạy ẩn trong hệ thống.

Ví dụ 2: Phát hiện kết nối mạng đáng ngờ

Trong một cuộc điều tra, nhà điều tra sử dụng Volatility để phân tích các kết nối mạng từ ảnh bộ nhớ. Kết quả cho thấy có một kết nối đang hoạt động đến một địa chỉ IP không xác định từ tiến trình svchost.exe. Điều này gợi ý rằng tiến trình này có thể đã bị mã độc khai thác để gửi dữ liệu nhạy cảm ra bên ngoài.

volatility -f memory.dmp --profile=Win10x64_18362 netscan

Nhà điều tra tiếp tục phân tích dữ liệu truyền qua kết nối này và xác định rằng dữ liệu được gửi đi bao gồm thông tin nhạy cảm của người dùng, như mật khẩu và thông tin thẻ tín dụng.

ket qua phan tich bo nho
Kết quả phân tích bộ nhớ với các hành vi đáng ngờ được làm nổi bật. (Ảnh minh họa AI)

Kết luận

Phân tích bộ nhớ (Memory Analysis) là một kỹ thuật quan trọng trong Computer Forensics, giúp các nhà điều tra truy cập và phân tích dữ liệu tạm thời được lưu trữ trong bộ nhớ RAM của hệ thống. Bằng cách sử dụng các công cụ và phương pháp phù hợp, quá trình này có thể giúp phát hiện và phân tích các hành vi của mã độc, từ đó đưa ra các biện pháp bảo vệ hệ thống và dữ liệu.

Bài viết cùng chuyên mục:

0 0 Bình chọn
Đánh giá bài viết
Đăng ký
Nhận thông báo cho
guest
0 Góp ý
Phản hồi nội tuyến
Xem tất cả bình luận