TỔNG QUAN VỀ ĐIỀU TRA SỐ
Khái niệm điều tra số
Điều tra số là một lĩnh vực của khoa học điều tra, tập trung vào việc phục hồi và phân tích tài liệu từ các thiết bị kỹ thuật số, đặc biệt liên quan đến tội phạm máy tính Thuật ngữ này ban đầu chỉ đề cập đến điều tra máy tính, nhưng đã được mở rộng để bao gồm tất cả các thiết bị lưu trữ dữ liệu số Điều tra số được định nghĩa là việc áp dụng các phương pháp và công cụ khoa học để bảo quản, thu thập, xác nhận, phân tích và trình bày thông tin từ nguồn kỹ thuật số, nhằm tái hiện sự kiện, phát hiện hành vi phạm tội và dự đoán các hoạt động trái phép có thể gây gián đoạn hệ thống.
Theo SANS (SysAdmin, Audit, Networking, and Security), một công ty chuyên đào tạo an toàn thông tin và an ninh mạng, quy trình điều tra số thường trải qua bốn giai đoạn chính.
Chuẩn bị là bước quan trọng trong quá trình điều tra, bao gồm việc mô tả thông tin hệ thống, ghi nhận các hành vi đã xảy ra và xác định các dấu hiệu để xác định phạm vi điều tra Đồng thời, bước này cũng nêu rõ mục đích của cuộc điều tra và các tài nguyên cần thiết sẽ được sử dụng trong suốt quá trình thực hiện.
Tiếp nhận dữ liệu là quá trình tạo ra bản sao chính xác của các chứng cứ số, hay còn gọi là nhân bản điều tra các phương tiện truyền thông Để đảm bảo tính toàn vẹn của chứng cứ, dữ liệu này cần được mã hóa bằng kỹ thuật "băm" (sử dụng SHA1 hoặc MD5) Trong quá trình điều tra, việc xác minh độ chính xác của các bản sao thu được là rất quan trọng.
Phân tích là giai đoạn quan trọng, trong đó các chuyên gia áp dụng các phương pháp nghiệp vụ, kỹ thuật và công cụ đa dạng để thu thập, trích xuất và phân tích các bằng chứng thu được.
Để đảm bảo tính chính xác và minh bạch, việc lập báo cáo là rất quan trọng Tất cả các chứng cứ thu thập được cần phải được tài liệu hóa một cách rõ ràng và chi tiết Sau đó, báo cáo này phải được gửi đến các bộ phận có trách nhiệm xử lý chứng cứ theo quy định hiện hành.
Phân loại điều tra số
Điều tra số là lĩnh vực chuyên sâu về phục hồi và phân tích chứng cứ số từ các thiết bị kỹ thuật số, được chia thành nhiều loại khác nhau.
Điều tra máy tính (Computer Forensics) là quá trình phân tích các bằng chứng pháp lý từ máy tính và thiết bị lưu trữ kỹ thuật số Mục tiêu chính của điều tra này là xác định, bảo quản, phục hồi và phân tích thông tin, từ đó trình bày lại sự việc và đưa ra ý kiến về các dữ liệu thu được.
Điều tra mạng (Network Forensics) là quá trình giám sát và phân tích lưu lượng mạng máy tính nhằm thu thập thông tin và chứng cứ pháp lý, cũng như phát hiện các xâm nhập Nó có thể được thực hiện độc lập hoặc kết hợp với điều tra máy tính, và thường được sử dụng để phát hiện mối liên kết giữa các thiết bị kỹ thuật số hoặc phục hồi quy trình phạm tội.
Điều tra thiết bị di động (Mobile device Forensics) là quá trình thu hồi bằng chứng kỹ thuật số từ các thiết bị di động, không chỉ giới hạn ở điện thoại di động mà còn bao gồm các thiết bị như PDA, GPS và máy tính bảng, tất cả đều có bộ nhớ trong và khả năng giao tiếp.
Điều tra ứng dụng (Application Forensics) là quá trình phân tích các ứng dụng hoạt động trên hệ thống, bao gồm Email, dữ liệu trình duyệt, Skype, Yahoo, và nhiều ứng dụng khác Mục tiêu của điều tra này là trích xuất các bản ghi lưu trữ từ các ứng dụng nhằm hỗ trợ việc tìm kiếm chứng cứ trong quá trình điều tra.
Điều tra máy tính
1.3.1 Khái niệm Điều tra máy tính (Computer Forensic - CF) là một nhánh của điều tra số, thực hiện thu thập, kiểm tra, báo cáo các kết quả hoạt động và những phát hiện trên máy tính Điều tra máy tính liên quan đến việc phân tích các bằng chứng pháp lý được tìm thấy trong máy tính và các phương tiện lưu trữ kỹ thuật số Mục đích của điều tra máy tính là xác định, bảo quản, phục hồi, phân tích trình bày lại sự việc về các thông tin thu được từ các thiết bị số
Chứng cứ đóng vai trò quan trọng trong quá trình điều tra, vì nó là yếu tố quyết định để xác minh hoặc bác bỏ một nhận định Chứng cứ có thể bao gồm nhiều dạng thông tin, từ dữ liệu trên máy tính cho đến các tài liệu vật lý, tất cả đều nhằm mục đích làm sáng tỏ sự thật.
4 bytes dữ liệu – tương đương địa chỉ IP)
Trong giai đoạn ứng cứu sự cố, việc thu thập chứng cứ là rất quan trọng để xác nhận sự phát sinh của sự cố Chúng ta cần thu thập cả dữ liệu volatile, như memory dump chứa địa chỉ IP của tin tặc, và dữ liệu non-volatile, được lưu trữ trên đĩa cứng đã tắt nguồn hoặc CD-ROMs Dữ liệu volatile có nguy cơ bị mất hoặc thay đổi trước khi được thu thập, do đó, việc xử lý kịp thời là cần thiết.
Quá trình điều tra và phân tích sẽ dựa trên các chứng cứ thu thập được để tái hiện sự cố đã xảy ra Việc phân tích yêu cầu sử dụng kết hợp nhiều công cụ và kỹ thuật nhằm tìm ra mối liên hệ giữa các sự kiện Cuối cùng, báo cáo điều tra cần được thực hiện một cách chính xác để đảm bảo công tác truy cứu trách nhiệm pháp lý được thực hiện đúng đắn.
1.3.2 Một số công cụ hỗ trợ
Volatility là một framework mạnh mẽ với nhiều plugins, được sử dụng để phân tích và tìm kiếm thông tin từ chứng cứ thu được Các plugins này được thiết kế để phân tích điều tra bộ nhớ theo kiến trúc của hệ điều hành Windows Quá trình phân tích diễn ra trong một môi trường độc lập với hệ thống ghi lại chứng cứ, cho phép xác định các tiến trình đang chạy, các registry handles và các sockets mở trên mạng.
Hình 1.1.3.1 Một số tiện ích mà Volatility hỗ trợ 1.3.2.2 Encase
Encase Forensic là một chương trình của hãng Guidance Software và được sử dụng như một nền tảng thiết yếu cho công việc điều tra số
- Thu thập dữ liệu từ nhiều nguồn thiết bị
- Phân tích các thông tin từ ổ đĩa một cách toàn diện
- Tạo các báo cáo sâu rộng về các phát hiện trong khi duy trì sự toàn vẹn của bằng chứng
Bộ công cụ The Sleuth KIT (TSK) bao gồm Autopsy, một giao diện đồ họa mạnh mẽ cho phân tích điều tra kỹ thuật số Autopsy cho phép khảo sát và trích xuất dữ liệu xâm nhập cũng như dữ liệu ẩn, phục vụ cho mục đích phân tích điều tra Công cụ này có khả năng phân tích các ổ đĩa Windows và UNIX cùng với các hệ thống tập tin như NTFS, FAT, UFS1/2, và Ext2/3 Ngoài ra, Autopsy còn cung cấp trình quản lý file tương tự như giao diện, hiển thị chi tiết về dữ liệu bị xóa và cấu trúc tập tin.
Autopsy được thiết kế với các tính năng sau:
- Thời gian phân tích: hiển thị sự kiện trên hệ thống theo giao diện đồ họa để phân tích
- Hỗ trợ phân tích tập tin từ hầu hết các định dạng, bao gồm NTFS, FAT12, FAT16, FAT32,…
- Hỗ trợ tìm kiếm nhanh chóng thông qua từ khóa, điều kiện hay các biểu thức chính quy
Công cụ này hỗ trợ truy xuất lịch sử hoạt động web, giúp xác định hành vi của người dùng Ưu điểm nổi bật là cung cấp kết quả nhanh chóng, giao diện thân thiện và dễ sử dụng, đồng thời hoàn toàn miễn phí.
FTK Imager là phần mềm mã nguồn mở của AccessData, cho phép tạo bản sao chính xác của bằng chứng mà không làm thay đổi dữ liệu gốc Hình ảnh của bằng chứng gốc được bảo toàn, giúp lưu trữ và phân tích dữ liệu một cách hiệu quả.
FTK Imager là một công cụ phổ biến trong lĩnh vực điều tra kỹ thuật số, cho phép chuyên gia thu thập dữ liệu từ thiết bị và tạo hình ảnh kỹ thuật số để phân tích bằng chứng Công cụ này hỗ trợ nhiều nhiệm vụ khác nhau như tạo Forensic Image và trích xuất các file hoặc thư mục để xử lý riêng lẻ, và sẽ được trình bày chi tiết hơn trong các chương tiếp theo của báo cáo.
ĐIỀU TRA SỐ VÀ PHÂN TÍCH BẰNG CHỨNG SỬ DỤNG FTK
Một số tính năng chính của FTK Imager
Disk Image là một bản sao phần mềm của đĩa vật lý, lưu trữ toàn bộ dữ liệu, cấu trúc tập tin, và tất cả các file, thư mục trong một tập tin duy nhất Việc tạo disk image rất quan trọng trong điều tra số và điều tra máy tính, vì nó giúp đơn giản hóa quá trình điều tra và bảo đảm tính pháp lý của các bằng chứng thu thập được.
FTK Imager là một công cụ không thể thiếu của các chuyên gia Forensic bởi những tính năng nổi bật sau:
Tạo Forensic Image là bước quan trọng trong quá trình điều tra số, giúp tạo bản sao lưu toàn bộ ổ cứng Đây là tập tin lưu trữ chứa thông tin cần thiết để khởi động hệ điều hành Việc khôi phục ổ cứng không thể thực hiện chỉ bằng cách đặt các tệp hình ảnh đĩa lên đó, mà cần phải mở và cài đặt qua chương trình Một ổ cứng có thể lưu trữ nhiều ảnh đĩa, và hình ảnh đĩa cũng có thể được lưu trữ trên ổ đĩa flash với dung lượng lớn hơn Để tạo Disk Image, bạn có thể sử dụng tùy chọn File/Create Disk Image.
Để tạo Disk Image, trước tiên bạn cần chọn ổ đĩa nguồn, có thể là ổ đĩa logic hoặc vật lý Ổ đĩa vật lý (Physical Drive) là phần cứng lưu trữ chính của thiết bị, dùng để lưu trữ, tải về và tổ chức dữ liệu Trong khi đó, ổ đĩa logic (Logical Drive) là không gian ổ đĩa được tạo ra trên một đĩa cứng vật lý, hoạt động độc lập với các tham số và chức năng riêng.
Để đảm bảo tính toàn vẹn cho bằng chứng trong quá trình điều tra Forensic, bạn cần chọn đĩa nguồn và xác định vị trí lưu Image Vị trí lưu này nên được “cô lập” và tạo nhiều bản sao để bảo vệ dữ liệu.
Hình 2.2.1.3 Chọn vị trí lưu Image
Chọn định dạng cho file Image:
Trong việc chọn định dạng hình ảnh, Raw (.dd) là bản sao từng bit của văn bản gốc mà không thay đổi hay thêm bớt bất kỳ bit nào và không có siêu dữ liệu Định dạng SMART, mặc dù từng được sử dụng cho Linux, hiện nay đã không còn phổ biến E01, viết tắt của EnCase Evidence File, là một định dạng thường được sử dụng để tạo hình ảnh, trong khi AFF, hay Advanced Forensic Format, là định dạng mã nguồn mở.
Capture Memory là phương pháp thu thập dữ liệu biến động, bao gồm nội dung RAM, nhằm trích xuất thông tin như tiến trình đang chạy, các trang web đã truy cập và tài liệu đã sử dụng Những thông tin này được lưu trữ vào các thiết bị lưu trữ để phục vụ cho quá trình điều tra sau này Để thực hiện, người dùng cần truy cập vào File/Capture Memory như hình 2.1.5.
Hình 2.2.1.5 Chọn chức năng Capture Memory Chọn đường dẫn đích, file đích và click nút Capture Memory như hình 2.1.6
Hình 2.2.1.6 Thực hiện Capture Memory
Gắn Image vào Drives cho phép người dùng kết nối các Image dưới dạng ổ đĩa hoặc thiết bị vật lý với chế độ chỉ đọc, giúp mô phỏng một đĩa vật lý trên máy tính Để thực hiện thao tác này, bạn cần làm theo các bước hướng dẫn cụ thể.
To mount an image file, first select File and then Add ALL Attached Devices When the Mount Image to Drive window appears, input the path to the desired image file and click on Mount, as illustrated in Figure 2.1.7.
Hình 2.2.1.7 Gắn Image vào Drive
Để trích xuất các file Registry được bảo vệ trên hệ điều hành Windows, bạn không thể sao chép hoặc lưu trực tiếp FTK Imager là công cụ hữu ích giúp bạn sao chép và lưu trữ các file này dễ dàng Để bắt đầu, hãy vào File và chọn Obtain Protected Files Khi cửa sổ mới xuất hiện, bạn chỉ cần chọn thư mục hoặc file đích theo hướng dẫn trong hình 2.1.8.
Hình 2.2.1.8 Thực hiện trích xuất thư mục và file được bảo vệ
Phát hiện mã hóa EFS giúp nhận diện và truy cập dữ liệu ngay cả khi thư mục hoặc tệp đã được mã hóa Việc đọc dữ liệu từ các tệp hoặc thư mục này có thể hỗ trợ điều tra viên trong quá trình điều tra, mang lại thuận lợi hơn cho việc phân tích thông tin.
Ngoài ra, công cụ còn có một số tính năng khác như: phân tích Image Dump, giải mã AD1 (một dạng mã hóa giúp đảm bảo tính toàn vẹn),…
Ưu - nhược điểm của FTK Imager
FTK Imager là công cụ hữu ích cho các chuyên gia forensic, cho phép phân tích dữ liệu từ nhiều nguồn khác nhau với các tùy chọn và kỹ thuật tìm kiếm nâng cao Giao diện đơn giản và dễ sử dụng giúp người dùng tìm kiếm nhanh chóng và hỗ trợ tạo từ điển mật khẩu Công cụ này cũng tạo chỉ mục từ khóa cho các hình ảnh trong quá trình điều tra, giúp việc tìm kiếm trong tương lai trở nên dễ dàng và nhanh chóng hơn Đặc biệt, FTK Imager hoàn toàn miễn phí.
FTK Imager có một số hạn chế như không có thanh tiến trình, không hỗ trợ đa tác vụ và tập lệnh, dẫn đến hiệu suất không cao Nó chỉ cho phép tối đa hai triệu file và không tương thích với tất cả các hệ điều hành, đồng thời cũng không hỗ trợ định dạng PSD và AVI.
Encase là một trong những công cụ tương tự FTK Image, và bảng so sánh dưới đây sẽ đánh giá hai công cụ này dựa trên các tiêu chí như tính năng, độ phổ biến và mức độ thân thiện với người dùng.
Tiêu chí FTK Imager Encase
Khả năng phân tích dữ liệu
Có khả năng phân tích dữ liệu từ nhiều nguồn nhưng không hỗ trợ một số định dạng Photoshop
Có khả năng phân tích dữ liệu từ nhiều nguồn nhưng không hỗ trợ Outloook
Hỗ trợ tìm kiếm theo từ khóa, biểu thức chính quy và các tìm kiếm nâng cao
Chỉ tìm kiếm trực tiếp
Giao diện người dùng đơn giản Giao diện đồ họa
Phổ thông Độc quyền về định dạng hình ảnh và Enscripts
THỰC NGHIỆM) ĐIỀU TRA SỐ VÀ PHÂN TÍCH BẰNG CHỨNG SỬ DỤNG FTK IMAGES
Chuẩn bị
Các máy ảo cần chuẩn bị:
- Kali-linux có cài Volability
Các công cụ chuẩn bị:
- FTK Imager (https://accessdata.com/product-download/ftk-imager- version-4-5)
- Registry Review (https://accessdata.com/product-download/registry- viewer-2-0-0)
- File mã độc (https://github.com/Da2dalus/The-MALWARE-Repo)
Demo chức năng của FTK Imager
Thực hiện cài đặt FTK Imager trên Windows 7, quá trình cài đặt FTK Imager được hiển thị như hình 3.2.1
Hình 3.2.1 Quá trình cài đặt FTK Imager Giao diện FTK Imager sau khi cài đặt thành công được hiển thị như hình 3.2.2
Hình 3.3.2 Giao diện FTK Imager sau khi cài đặt
3.2.1 Create Disk Image Để tạo Disk Image, vào file => Create Disk Image
Sau đó, chọn loại nguồn dữ liệu Các nguồn loại dữ liệu được hỗ trợ được liệt kê như trong hình 3.2.1.2
Hình 3.2.1.2 Các loại nguồn dữ liệu trong FTK Imager Trong đó:
- Physical Drive: Là các ổ lưu trữ vật lý
- Logical Drive: Là các không gian ổ đĩa được tạo dựa trên ổ cứng vật lý
- Image File: Các file Image
- Contents of a Folder: Các logical filce
- Femico Device: Tạo image cho đĩa CDs hoặc DVDs
Tại đây, chọn Logical Drive để tạo image Bấm Next:
Hình 3.1.2.3 Chọn nơi để tạo Image Tiếp đó, chọn ổ đĩa cần tạo Image Bấm Next:
Hình 3.1.2.4 Chọn ổ đĩa để tạo Image Chọn Add để hoàn thiện thông tin cần thiết để tạo Image
Chọn định dạng của Image như hình 3.1.2.5
Hình 3.1.2.5 Chọn định dạng Image
- Raw(dd): Là một bản copy bit-to-bit từ bằng chứng gốc mà không có bất kỳ thêm bớt nào
- SMART: Định dạng được sử dụng cho Linux nhưng không còn phổ biến nữa
- E01: EnCase Evidence File, là định dạng phổ biến
- AFF: Advanced Forensic Format là một định dạng open-source
Hoàn thiện thông tin về Image theo hình 3.2.1.6
Hình 3.2.1.6 Thông tin của image Chọn Next Tiếp đó chọn thư mục lưu trữ và đăt tên cho Image
Tích vào AD Encrytion để mã hóa file Image như hình 3.2.1.7
Hình 3.2.1.7 Mã hóa Ad trong FTK
Nhập mật khẩu của file image đã được dump ở trên
Hình 3.2.1.8 Mật khẩu của file image Chọn Start để bắt đầu tạo Image Quá trình tạo image được hiển thị như hình 3.2.1.9
Hình 3.2.1.9 Quá trình tạo image File Image sau khi được tạo thành công:
Hình 3.2.1.10 file image đã được tạo Trong đó file rar E_image.001 là file image đã được nén:
Hình 3.2.1.11 File rar E_image.011 đã giải nén
File E_image.txt là file thông tin về Image(bao gồm cả mã MD5 và SHA1) Các thông tin về file E_image.txt được đưa ra như hình 3.2.1.12
Hình 3.2.1.12 Các thông tin về file E_image.txt Trong đó, MD5 và SHA1 là mã băm để đảm bảo tính toàn vẹn của file image
Chọn File > Add Evidence Item
Chọn loại bằng chứng cần đọc Ở đây ta chọn Image File như ảnh 3.2.2.2
Hình 3.2.2.2 Chọn loại bằng chứng Chọn file Image cần đọc như hình 3.2.2.3
Hình 3.2.2.3 Chọn file image cần đọc
Do file Image đã được mã hóa, ta cần nhập mật khẩu đã tạo trước đó:
Hình 3.2.2.4 Nhập mật khẩu của file image File Image sau khi được đọc với FTK
Hình 3.2.2.5 file được đọc với FTK
Chọn File > Decrypt AD1 image
Hình 3.2.3.1 Decrypt AD1 image Chọn file Image cần giải mã Chọn file E_image đã được mã hóa ở trên như hình 3.2.3.2
Hình 3.2.3.2 Chọn file Image cần giải mã Xác nhận tên của file được giải mã và chọn save
Hình 3.2.3.3 Xác nhận tên file cần giải mã
Sử dụng FTK Imager để đọc file này mà không cần nhập mật khẩu:
Hình 3.2.3.4 Sử dụng FTK để đọc file
Kết quả sau khi đọc file được hiển thị như hình 3.2.3.5
Hình 3.2.3.5 Kết quả sau khi đọc file
Chọn File > Detect EFS Encrytion
Hình 3.2.4.1 Chọn Detect EFS Encrytion Kết quả thu được được hiển thị như hình 3.2.4.2
Hình 3.2.4.2 Kết quả sau khi detect file
Chọn File > Obtain Protected File
To extract all registry files, select the "Obtain Protected File" option and choose the storage folder Make sure to check the "Password recovery and all registry files" box, as illustrated in Figure 3.2.5.2, to ensure that all registry files are extracted successfully.
Hình 3.5.2.2 Chọn thư mục lưu trữ Kết quả thu được:
Hình 3.5.2.3 Kết quả sau khi đã lưu trữ
25 Đọc file được trích xuất với Registry Viewer
Chọn Organize > Folder and search options, chọn các option như trong hình 3.5.2.4 để đọc file NTUSER.DAT
Hình 3.5.2.4 Chọn các option để đọc file NTUSER.DAT Chọn Show hidden files, folders, and drives
- Hide extensions for known file types
- Hide protected operating system files
Sau đó chúng ta sẽ thấy file NTUSER.DAT hiển thi trong /Users/admin/ như hình 3.2.5.5
Hình 3.2.5.5 Thư mục chứa file NTUSER.DAT
Mở file này với Registry Viewer:
Hình 3.2.5.6 mở file bằng registry viewer
Thực hiện chạy RAT VanTom-Rat.bat (Trojan)
Hình 3.2.6.1 Thực thi mã độc RAT VanTom-Rat Chọn File > Capture Memory
Chọn thư mục lưu và điền tên của file memory dump như hình 3.2.6.2
Hình 3.2.6.2 Chọn thư mục và điền tên của file Chọn Capture để thực hiện dump Memory như hình 3.2.6.3
Hình 3.2.6.3 Thực hiện dump Memory Kết quả sau khi dump được hiển thị như hình 3.2.6.4
Hình 3.2.6.4 Kết quả sau khi dump memory Thực hiện chuyển file vanTom_1.mem vào Kali và sử dụng công cụ Volability để phân tích:
Hình 3.2.6.5 Chuyển file sang Kali để phân tích
Sử dụng imageinfo như hình 3.2.6.6 để lựa chọn profile thích hợp dùng cho file mem dump này: vol.py imageinfo -f vanTom_RAT.mem
Để tiến hành phân tích, chúng ta sẽ sử dụng profile Win7SP1x64 Bước đầu tiên là liệt kê tất cả các tiến trình đang chạy bằng lệnh dump mem.vol.py profile Win7SP1x64 pslist -f vanTom_RAT.mem.
Có thể thấy có một tiến trình Server.exe lạ đang được chạy với pid 3420 như hình 3.2.6.7
Hình 3.2.6.7 Tiến trình lạ Đây là một tiến trinh độc hại đặc trưng của VanToM-RAT.bat
Hình 3.2.6.8 Thông tin về VanToM-RAT trên virus total
Sử dụng dlllist để liệt kê các thư viện dll đã được gọi bởi tiến trình Server.exe: vol.py profile Win7SP1x64_24000 -f vanTom_RAT.mem dlllist -p 3420
Hình 3.2.6.9 Danh sách các dll được tiến trình Server.exe gọi ra
Tổng cộng có 52 thư viện dll đã được gọi bởi Server.exe:vol.py profile Win7SP1x64_24000 -f vanTom_RAT.mem dlllist -p 3420 | wc -l
The number of processes invoked is depicted in Figure 3.2.6.10 To examine the connections initiated by Server.exe, refer to Figure 3.2.6.11, where the command "vol.py profile Win7SP1x64_24000 -f vanTom_RAT.mem netscan | grep Server.exe" is utilized.
Hình 3.2.6.11 Các kết nối được khởi tạo bởi Server.exe
Kiểm tra IP này trên Virustotal, đây là một IP độc hại:
To check the IP on VirusTotal, perform a dump of Server.exe and upload it for analysis Use the command: vol.py profile Win7SP1x64_24000 -f vanTom_RAT.mem procdump -p 3420 dump-dir=evidences.
Hình 3.2.6.13 Trích xuất tiến trình Server.exe Tải lên virus total để kiểm tra
Hình 3.2.6.14 Kết quả kiểm tra Server.exe trên Virus total
Điều tra bằng FTK Imager
Trong trường hợp tổ chức bị tấn công bởi tin tặc và thực hiện các hoạt động bất hợp pháp, chúng tôi sẽ tiến hành điều tra Disk Image của server do tổ chức cung cấp Với vai trò được thuê để thu thập bằng chứng pháp lý, chúng tôi sẽ đảm bảo rằng mọi thông tin cần thiết được thu thập để phục vụ cho việc truy cứu trách nhiệm sau này.
Thực hiện Challenge CyberdefendersCTF01: https://cyberdefenders.org/labs/77
Bước 1: Mở file 02.E01 với FTK Imager
Hình 3.3.1 Mở file bằng FTK
Bước 2: Điều tra các thông tin cơ bản về host OS:
Từ /usr/lib/os_release ta có được thông tin về OS như hình 3.3.2
Hình 3.3.2 Các thông tin cơ bản về host
Host chạy trên Red Hat version 8.4
Tìm trong /etc/passwd, có thể thấy có 6 user có login shell /bin/bash (có quyền đăng nhập vào hệ thống)
Hình 3.3.3 Thông tin user có quyền đăng nhập vào hệ thống
Thông thường các user có quyền sudo thường nằm trong group sudo trong /etc/group, nhưng trong th này thì không có group nào như vậy:
Hình 3.3.4 Nội dung file group
Xem xét các thông tin /etc/sudoers(lưu trữ thông tin về user permissions) như hình 3.3.5
Hình 3.3.5 Các thông tin trong /etc/sudoers
Có thể thấy các user trong group wheel có quyền tương đương với root Tìm các user của group wheel trong /etc/group:
Hình 3.3.6 Các user có quyền sudo
Có 2 user có quyền sudo là cyberdefenders và Rachel
Trong tệp cấu hình mạng tại /etc/sysconfig/network-scripts, chúng ta thấy rằng máy chủ được thiết lập để nhận địa chỉ IP từ DHCP Thông tin chi tiết về cấu hình mạng được trình bày trong hình 3.3.7.
Hình 3.3.7 Thông tin cấu hình mạng trong /etc/sysconfig/network-scripts
Trong /var/log/message, thấy ip 192.168.196.129 được cấp cho host thông qua DHCP:
Hình 3.3.8 Thông tin ip được cấp qua DHCP
Host được cấp IP 192.168.196.129 thông qua DHCP
- Kiểm tra trong /etc nhận thấy có dịch vụ ssh được cài đặt trên host
- Kiểm tra log secure, có thể thấy hacker đã thực hiện brutce force ssh vào hệ thống từ ip 192.168.196.128 bắt đầu từ 23/08/2021
Tấn công brutce force vào hệ thống được hiển thị như hình 3.3.9
Hình 3.3.9 Tấn công brutce force vào hệ thống
Kiểm tra các user đã được login từ ip 192.168.196.128 thông qua log wtmp
Hình 3.3.10 Thông tin đăng nhập thành công vào hệ thông từ ip attacker
Hai người dùng đã đăng nhập từ địa chỉ IP của kẻ tấn công là Rachel và Chandler Qua điều tra trong file /var/log/secure, sau khi kẻ tấn công đăng nhập thành công vào tài khoản của Chandler bằng mật khẩu, họ đã tiếp tục sử dụng public_key của người dùng này để thực hiện đăng nhập.
Hình 3.3.11 Xác thực ssh bằng public key Sau đó tạo user rachel:
Có 2 user đã bị Bruce Force thành công
Sau khi xác định user chandler đã được attacker sử dụng để login vào hệ thống, vào /etc/passwd để kiểm tra root directory của user này:
Hình 3.3.13 Kiểm tra thư mục gốc của user chandler
V ậy root directory của user nằm tại /home/chandler Truy cập vào bash_history nằm trong đường dẫn trên để thấy các command đã được user chandler sử dụng:
Có thể thấy một file shell script đã được tạo ra và chạy như hình 3.3.14
Hình 3.3.14 Thông tin trong /bat/history(1) Sau đó, file script này đã bị xóa
Hình 3.3.15 Thông tin trong bat/history(2)
Sử dụng R8-Studio để khôi phục lại file này như hình 3.3.16
Hình 3.3.16 Khôi phục file bằng R8-Studio Hình File script này được sử dụng để lấy ssh_key từ máy attacker
Key này sẽ nằm trong /home/chandler/.ssh/authorized_keys:
The public key is obtained from the attacker’s machine Next, two commands are executed to create a user and set a password for that user The first command utilizes dbus-send to create a user named "rachel" with the password "Anon," while the second command sets the password for User1004 to a specified hashed value, "GoldenEye." Both commands incorporate a brief sleep interval to ensure proper execution.
V ậy user rachel đã được tạo bằng d-bus Đây là CVE-2021-3560 1 lỗ hổng leo thang đặc quyền trong Linux Polkit có tồn tại trong RHEL 8
Tiếp tục check log secure nhận thấy sau khi su lên user rachel, attacker thực hiện wget một file c2c.py từ máy của mình về server:
Hình 3.3.17 Hoạt động download shell từ máy attacker
Có thể thấy user rachel đã sử dụng quyền root để get file python c2c.py về và lưu trong /usr/bin Kiểm tra /urs/bin/c2c.py:
C2C.py là một script dùng để thiết lập một máy chủ SMTP, cho phép nhận lệnh từ kẻ tấn công qua email Tài khoản email được sử dụng trong trường hợp này là cdefender16@gmail.com Để kiểm tra lịch sử lệnh, ta xem bash_history của người dùng Rachel.
In Rachel's bash_history, a shell script file was retrieved from the attacker’s machine, likely intended to obtain the c2c.py file Additionally, the attacker utilized the cron -e command with root privileges to modify the crontab A review of the cron logs in /var/log confirms these activities.
Hình 3.3.19 Thông tin trong cron log
Có thể thấy actacker đã đặt lịch cron để chạy c2c.py
Kiểm tra trong file /var/spool/cron có thể thấy được 1 cronjob đã được đặt với quyền root để chạy mỗi khi hệ thống reboot:
Hình 3.3.20 Cấu hình lập lịch cho c2c.py