1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu một số kỹ thuật thu thập và phân tích thông tin an ninh mạng từ bộ nhớ máy tính

45 1,2K 31

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 45
Dung lượng 3,01 MB

Nội dung

Digital Forensics (điều tra số) là một nhánh của ngành khoa học điều tra đề cập đếnviệc sử dụng các phương pháp, công cụ kỹ thuật khoa học đã được chứng minh để thuthập, bảo quản, phân tích, lập báo cáo và trình bày lại những thông tin thực tế từ các nguồndữ liệu số với mục đích tạo điều kiện hoặc thúc đẩy việc tái hiện lại các sự kiện nhằm tìmra hành vi phạm tội hay hỗ trợ cho việc dự đoán các hoạt động trái phép như cố ý xâmnhập, tấn công hoặc gây gián đoạn quá trình làm việc của hệ thống.Mục đích quan trọng nhất của điều tra số là thu thập, phân tích và tìm ra chứng cứthuyết phục về một vấn đề cần sáng tỏ. Điều tra số có những ứng dụng quan trọng trongkhoa học điều tra cụ thể.Về mặt kỹ thuật thì điều tra số giúp xác định những gì đang xảy ra làm ảnh hưởngtới hệ thống đồng thời qua đó phát hiện các nguyên nhân hệ thống bị xâm nhập, các hànhvi, nguồn gốc của các vi phạm xảy ra đối với hệ thống.

Trang 1

HỌC VIỆN KỸ THUẬT MẬT MÃ KHOA AN TOÀN THÔNG TIN

- -BÀI TẬP LỚN

Đề tài: Tìm hiểu một số kỹ thuật thu thập và phân tích

thông tin an ninh mạng từ bộ nhớ máy tính

Lớp: L01

Sinh viên thực hiện:

Trần Thị Thanh Huyền

Vũ Thị Hương Nguyễn Thị Hồng Phạm Thị Quỳnh Phạm Bảo Yến Giảng viên: Nguyễn Thị Hồng Hà

Hà Nội, 5/201

Trang 2

Vì vậy, nhóm em đã lựa chọn đề tài “Tìm hiểu một số kỹ thuật thu thập và phân tíchthông tin an ninh mạng từ bộ nhớ máy tính” để tìm hiểu về một số kỹ thuật thu thập vàphân tích các thống tin an ninh mạng lấy được từ bộ nhớ của máy tính cũng như triển khaihướng giải quyết.

Trang 3

Chương III: Triển khai mô hình thu thập và phân tích thông tin an ninh từ bộ nhớ máy tính

Chương này sẽ áp dụng các quy trình kỹ thuật ở các phần trên để tiến hành điều trathu thập, phân tích thông tin từ bộ nhớ máy tính Mặc dù đã cố gắng nhưng do kiến thức vàthời gian còn nhiều hạn chế nên chắc chắn đề tài không khỏi có những thiếu sót, chúng emrất mong nhận được những ý kiến đóng góp của thầy cô và các bạn sinh viên để chúng em

có thể tìm hiểu sâu hơn về đề tài này

Chúng em xin chân thành cảm ơn!

Trang 4

MỤC LỤC

LỜI MỞ ĐẦU 1

DANH MỤC HÌNH ẢNH 6

CHƯƠNG I – TỔNG QUAN VỀ THU THẬP VÀ PHÂN TÍCH THÔNG TIN AN NINH MẠNG TỪ BỘ NHỚ MÁY TÍNH 8

1.1 Giới thiệu về điều tra số 8

1.2 Giới thiệu phân tích điều tra bộ nhớ máy tính 9

1.3 Giới thiệu về thu thập bộ nhớ máy tính 10

1.4 Vai trò và ứng dụng của thu thập và phân tích bộ nhớ máy tính 11

1.5 Quy trình thu thập và phân tích thông tin từ bộ nhớ máy tính 11

1.5.1 Kiểm tra xác minh 12

1.5.2 Mô tả hệ thống 13

1.5.3 Thu thập chứng cứ 13

1.5.4 Thiết lập mốc thời gian và phân tích 13

1.5.5 Phân tích phương tiện truyền dữ liệu 14

1.5.6 Khôi phục dữ liệu 14

1.5.7 Tìm kiếm chuỗi 14

1.5.8 Lập báo cáo 15

CHƯƠNG II – MỘT SỐ KỸ THUẬT VÀ CÔNG CỤ THU THẬP VÀ PHÂN TÍCH THÔNG TIN AN NINH MẠNG TỪ BỘ NHỚ MÁY TÍNH 16

2.1 Các kỹ thuật sử dụng trong thu thập và phân tích thông tin từ bộ nhớ máy tính 16

2.1.1 Thu lại bộ nhớ khả biến 16

2.1.2 Xác định nơi tìm bộ nhớ khả biến 17

2.1.3 Liệt kê các tiến trình đang được thực thi 17

2.1.4 Liệt kê các kết nối mạng có trong hệ thống 17

2.1.5 Phục hồi các tập tin ánh xạ trong bộ nhớ 18

2.1.6 Phân tích ngược tập tin chứa mã độc 18

Trang 5

2.1.7 Phân tích registry 19

2.2 Một số công cụ 20

2.2.1 Volatility 20

2.2.2 DFF - Digital Forensic Framework 21

2.2.3 The Sleuth Kit và Autospy 22

2.2.4 SANS Investigate Forensic Toolkit (SIFT) 23

3.1 Xây dựng bài toán 25

3.2 Lựa chọn công nghệ 25

3.2.1 Quy trình thực hiện: 25

3.2.2 Các công cụ sử dụng để thu thập, phân tích: 26

3.3 Thu thập chứng cứ và phân tích 27

3.3.1 Xác định hệ thống tiến hành kiểm tra, xác định môi trường thực sự đang được phân tích .27

3.2.1 Phân tích tiến trình 27

3.2.2 Phân tích mạng 34

3.2.3 Phân tích Registry 37

3.2.4 Phân tích Kernel Memory và Objects 39

3.3 Báo cáo kết quả đạt được 42

KẾT LUẬN 44

TÀI LIỆU THAM KHẢO 45

Trang 6

DANH MỤC HÌNH ẢNH

Hình 1.1: Sơ đồ quy trình điều tra bộ nhớ 10

Hình 2.1: Kiểm tra các kết nối mạng 16

Hình 2.2: Các plugins mà volatility hỗ trợ 18

Hình 2.3: Giao diện VolUtility 19

Hình 2.4: Giao diện của DFF 20

Hình 2.5: Giao diện công cụ The Sleuth Kit 21

Hình 2.6: Giao diện SANS SIFT 22

Hình 3.1: Thông tin hệ thống cần điều tra 25

Hình 3.2: Module pslist trong Volatility 26

Hình 3.3: Module pslist trong Volatility(2) 26

Hình 3.4:Các tiến trình trong bộ nhớ 27

Hình 3.5:Các tiến trình trong bộ nhớ(2) 27

Hình 3.6: Tiến trình cha/con 28

Hình 3.7:Tiến trình cha/con(2) 28

Hình 3.8: Tham số các tiến trình 29

Hình 3.9: Các thư viện dll mà tiến trình executable40684e80.exe sử dụng 29

Hình 3.10: Trích xuất chương trình từ tiến trình 30

Hình 3.11: Kết quả scan virustotal executable40684e80.exe 30

Hình 3.12: Kết quả scan virustotal shell.exe 31

Hình 3.13: Kết quả scan virustotal xmrig.exe 32

Hình 3.14: Module netscan 33

Hình 3.15: Thông tin ip 108.61.164.63 34

Hình 3.16: Địa chỉ ảo và vật lý của Registry 35

Hình 3.17: In giá trị trong Registry 36

Hình 3.18: Dump dữ liệu tài khoản trong registry 36

Trang 7

Hình 3.19: Dump Isa 37

Hình 3.20: Các hoạt động của người dùng 37

Hình 3.21: Danh sách trình điều khiển 38

Hình 3.22: Danh sách các driver được nạp 38

Hình 3.23: danh sách file object 39

Hình 3.24: Liên kết Symlink 40

Trang 8

CHƯƠNG I – TỔNG QUAN VỀ THU THẬP VÀ PHÂN TÍCH THÔNG TIN AN

NINH MẠNG TỪ BỘ NHỚ MÁY TÍNH 1.1 Giới thiệu về điều tra số

Digital Forensics (điều tra số) là một nhánh của ngành khoa học điều tra đề cập đếnviệc sử dụng các phương pháp, công cụ kỹ thuật khoa học đã được chứng minh để thuthập, bảo quản, phân tích, lập báo cáo và trình bày lại những thông tin thực tế từ các nguồn

dữ liệu số với mục đích tạo điều kiện hoặc thúc đẩy việc tái hiện lại các sự kiện nhằm tìm

ra hành vi phạm tội hay hỗ trợ cho việc dự đoán các hoạt động trái phép như cố ý xâmnhập, tấn công hoặc gây gián đoạn quá trình làm việc của hệ thống

Mục đích quan trọng nhất của điều tra số là thu thập, phân tích và tìm ra chứng cứthuyết phục về một vấn đề cần sáng tỏ Điều tra số có những ứng dụng quan trọng trongkhoa học điều tra cụ thể

Về mặt kỹ thuật thì điều tra số giúp xác định những gì đang xảy ra làm ảnh hưởngtới hệ thống đồng thời qua đó phát hiện các nguyên nhân hệ thống bị xâm nhập, các hành

vi, nguồn gốc của các vi phạm xảy ra đối với hệ thống

Một số loại hình điều tra số phổ biến:

- Registry Forensics: Đây là loại hình điều tra liên quan đến việc trích xuấtthông tin và ngữ cảnh từ một nguồn dữ liệu chưa được khai thác qua đó biếtđược những thay đổi (chỉnh sửa, thêm bớt…) dữ liệu trong Register

- Disk Forensics: Là việc thu thập, phân tích dữ liệu được lưu trữ trên phươngtiện lưu trữ vật lý, nhằm trích xuất dữ liệu ẩn, khôi phục các tập tin bị xóa,qua đó xác định người đã tạo ra những thay đổi dữ liệu trên thiết bị đượcphân tích

- Mobile forensics: Là loại hình điều tra được thực hiện trên các thiết bị diđộng, thiết bị PDA, GPS, máy tính bảng, nhằm thu thập dữ liệu, các chứng

cứ kỹ thuật số

Trang 9

- Application Forensics: Là loại hình điều tra phân tích các ứng dụng chạy trên

hệ thống như Email, dữ liệu trình duyệt, skype, yahoo… Qua đó trích xuấtcác bản ghi được lưu trữ trên các ứng dụng phục vụ cho việc điều tra tìmkiếm chứng cứ

- Network Forensics: Là một nhánh của digital forensics liên quan đến việctheo dõi, giám sát, phân tích lưu lượng mạng máy tính nhằm phục vụ choviệc thu thập thông tin, sự kiện liên quan, tìm kiếm chứng cứ pháp lý, mụcđích là phát hiện sự bất thường, các dấu hiệu xâm nhập trên môi trườngmạng

- Memory Forensics: Là phương thức điều tra máy tính bằng việc ghi lại bộnhớ khả biến (bộ nhớ RAM) của hệ thống sau đó tiến hành phân tích làm rõcác hành vi đã xảy ra trên hệ thống Cụ thể hơn, đó là cố gắng sử dụng kiếntrúc quản lý bộ nhớ trong máy tính để ánh xạ, trích xuất các tập tin đang thựcthi và cư trú trong bộ nhớ

1.2 Giới thiệu phân tích điều tra bộ nhớ máy tính

Memory Forensics là kỹ thuật điều tra máy tính bằng việc ghi lại bộ nhớ RAM của

hệ thống thời điểm có dấu hiệu nghi ngờ, hoặc đang bị tấn công để tiến hành điều tra, giúpcho việc xác định nguyên nhân cũng như các hành vi đã xảy ra trên hệ thống, cung cấp cácchứng cứ phục vụ cho việc xử lý tội phạm

Kỹ thuật điều tra này được sử dụng khi quá trình phân tích tĩnh từ những gói tin thuđược, cũng như các thông tin từ nhật ký hệ thống ghi lại, nhưng chưa xác định được nguồngốc cũng như kỹ thuật tấn công, hoặc cung cấp các thông tin có được chưa đầy đủ, chưa đủsức thuyết phục

Như chúng ta biết phân tích điều tra bộ nhớ RAM cũng giống như tất cả những nỗlực điều tra số khác, nó liên quan đến việc thu thập thông tin, để có thể cung cấp các chứng

cứ như bằng chứng sử dụng trong điều tra hình sự Nhưng cụ thể hơn thì đây là kỹ thuật

mà người điều tra cố gắng sử dụng kiến trúc quản lý bộ nhớ trong máy tính để ánh xạ, tríchxuất các tập tin đang thực thi và cư trú trong bộ nhớ vật lý của máy tính Những tập tin

Trang 10

theo dõi nó đã diễn ra như thế nào Tính hữu ích của loại hình điều tra này đó là trong thực

tế, bất kỳ thông tin nào tìm thấy trong bộ nhớ RAM, sẽ được hiểu là gần đây nó đã đượcchạy trên hệ thống của nạn nhân

1.3 Giới thiệu về thu thập bộ nhớ máy tính

Sự thành công của phân tích thường phụ thuộc vào sự khởi đầu trong giai đoạn thuthập của cuộc điều tra Trong giai đoạn này, điều tra viên phải đưa ra quyết định về dữ liệunào cần thu thập và phương pháp tốt nhất để thu thập dữ liệu đó Về cơ bản, thu thập bộnhớ là sao chép nội dung của bộ nhớ vật lý sang thiết bị lưu trữ khác để bảo quản Cácphương pháp và công cụ cụ thể được sử dụng thường phụ thuộc vào mục tiêu điều tra vàđặc điểm của hệ thống đang điều tra

Một nhà điều tra kỹ thuật số tìm cách bảo vệ trạng thái của môi trường kỹ thuật sốtheo cách cho phép điều tra viên đạt được các suy luận chính xác thông qua phân tích Dữliệu được lưu trữ trên đĩa và trong RAM cung cấp hai thành phần quan trọng nhất của môitrường đó.Quan điểm truyền thống về điều tra số tập trung vào giả định rằng độ tin cậy củacác suy luận hoàn toàn phụ thuộc vào việc thu thập bằng chứng mà không thay đổi trạngthái của nó Ví dụ, các thủ tục xử lý bằng chứng thường được chấp nhận liên quan đến việctắt hệ thống và tạo bản sao (ảnh) của dữ liệu trên thiết bị lưu trữ đĩa để phân tích ngoạituyến Các quy trình và thủ tục chuyển đổi này tập trung vào việc giảm thiểu sự thay đổiđối với các file dữ liệu hệ thống

Khi lĩnh vực kỹ thuậtđiều tra số đã phát triển, nó đã trở nên rõ ràng với việc lưu trữchọn lọc một số bằng chứng khi các chi phí bằng chứng quan trọng khác cũng có thể ảnhhưởng đến độ chính xác của suy luận được đưa ra Điều này đặc biệt quan trọng khi các tácnhân độc hại luôn tìm cách khai thác các hạn chế của kỹ thuật thu thập chứng cứ pháp y kỹthuật số truyền thống Bằng cách so sánh dữ liệu từ nhiều nguồn (đĩa, mạng, bộ nhớ, v.v.)trong môi trường kỹ thuật số, chúng ta có thể hiểu rõ hơn về những gì đã xảy ra trên hệthống so với góc nhìn hạn chế là chỉ tiếp nhận dữ liệu từ một bộ nhớ đĩa Với các nguồnthay thế này, chúng ta phải chấp nhận rằng tất cả các phương pháp chuyển đổi, bao gồmcác thủ tục chuyển đổi đĩa truyền thống, sẽ dẫn đến một số biến dạng đối với môi trường

kỹ thuật số Các nhà điều tra phải hiểu được cách mà những thay đổi đó có thể tác động

Trang 11

đến kết quả phân tích và thứ tự mà cần phải thu thập dữ liệu để giảm tác động đó Quátrình thực hiện thường được ưu tiên dựa trên thứ tự sự thay đổi giảm dần (tức là, bằngchứng cho thấy thay đổi nhanh hơn được thu thập trước những bằng chứng ổn định hơn).

Và thực tế, điều này có nghĩa là bằng chứng bộ nhớ khả biến cần được thu thập trước

1.4 Vai trò và ứng dụng của thu thập và phân tích bộ nhớ máy tính

Khoa học điều tra số đã chứng minh vai trò quan trọng của Memory Forensics, việcđiều tra bộ nhớ RAM nơi mà dữ liệu luôn sẵn sàng để ghi lại và phân tích, cung cấp nhữngchứng cứ rất có giá trị, nó vượt qua một số hạn chế của các phương pháp điều tra truyềnthống (phân tích đĩa vật lý), giải quyết các vấn đề mà các công nghệ mới như mã hóa cóthể gây ra khó khăn trong quá trình điều tra Những phương pháp phân tích truyền thống bịgiới hạn bởi một số chỗ, ví dụ khi tiến hành phân tích chúng ta thường gặp khó khăn khikhông truy cập được dữ liệu đã được mã hóa trừ khi chúng ta có thể bẻ khóa được mậtkhẩu của người dùng Mà như chúng ta cũng biết khóa và mật khẩu rất hiếm khi được lưutrữ trên đĩa Tuy nhiên nó được thiết nạp vào và được lưu trữ trong bộ nhớ RAM, vì vậykhi tiến hành phân tích bộ nhớ có thể cho phép chúng ta sử dụng các kỹ thuật và công cụ

để khôi phục mật khẩu và khóa mật mã một cách dễ dàng Một hạn chế khác nữa củaphương pháp điều tra truyền thống đó là người phân tích sẽ không đủ khả năng trong việckhám phá những thông tin về các tiến trình đang chạy trong bộ nhớ, do đó dễ bỏ qua việcđiều tra các ứng dụng, đang được hệ thống sử dụng tại thời điểm cuộc tấn công diễn ra,cũng như các dữ liệu được che giấu trong bộ nhớ Nhưng đối với Memory Forensics, thìđây là một việc khá dễ dàng

Ứng dụng chính của Memory Forensics là phân tích điều tra các cuộc tấn công máytính sử dụng công nghệ cao, với những kỹ thuật tinh vi, đủ để tránh việc để lại các chứng

cứ trên ổ đĩa cứng của máy tính Chính vì vậy việc phân tích điều tra bộ nhớ RAM chochúng ta cái nhìn sâu sắc nhất, chính xác nhất về những gì đang diễn ra trên hệ thống tạithời điểm hệ thống đang bị tấn công

1.5 Quy trình thu thập và phân tích thông tin từ bộ nhớ máy tính

Sơ đồ mô tả quy trình điều tra bộ nhớ máy tính:

Trang 12

Hình 1.1: Sơ đồ quy trình điều tra bộ nhớ

1.5.1 Kiểm tra xác minh

Khi bắt đầu quá trình điều tra thì nhiệm vụ đầu tiên chính là việc kiểm tra xác minh.Việc kiểm tra xác minh cung cấp một cái nhìn bao quát về các thông tin được ghi lại bởi hệthống, các ứng dụng ngăn chặn virus trên hệ thống hay các thiết bị mạng (firewall, IDS,router) Tuy nhiên, việc kiểm tra xác minh đôi khi cũng gặp phải một số tình huống khókhăn như:

- Hệ thống máy tính đột nhiên bị ngưng trệ và các phương tiện truyền thông bịđóng băng

- Hệ thống đang hoạt động với nguồn và các hoạt động (các tiến trình đangchạy, các kết nối mạng đang được kích hoạt)

Trang 13

Khi gặp phải những trường hợp trên thì việc điều tra bộ nhớ phải rất cẩn thận đểtránh phá hủy những thông tin dễ bị thay đổi (các tiến trình, bộ nhớ, kết nối mạng).

Giai đoạn này đòi hỏi chuyên viên điều tra phải sử dụng một bộ công cụ đơn giản và

có độ tin cậy cao để kiểm tra sự hiện diện của các kết nối bất thường, kiểm tra rookit, cácthư mục lạ, các tập tin nhị phân mới được cài đặt

1.5.2 Mô tả hệ thống

Sau khi hoàn thành nhiệm vụ kiểm tra xác minh và chắc chắn có sự cố an ninh xảy

ra, chuyên viên điều tra sẽ tiến hành mô tả chi tiết các thông tin về hệ thống như đặc điểmphần cứng, phần mềm đang cài đặt trên hệ thống, danh sách người dùng và các thông tinkhác

Một phần của những dữ liệu này sẽ được lấy ra khỏi hệ thống bằng cách sử dụngcác phần mềm phục vụ cho quá trình điều tra, vì vậy việc điều tra không thể thực hiện ngaytrên hệ thống được xem là mục tiêu tấn công được, bởi vì hệ thống có thể đã bị cài đặt cácphần mềm độc hại

1.5.3 Thu thập chứng cứ

Đây là giai đoạn rất quan trọng trong quy trình thu thập và phân tích thông tin từ bộnhớ máy tính Tất cả các thông tin máy tính có sẵn phải được đưa vào một môi trường điềutra an toàn để thực hiện công việc điều tra nhằm đảm bảo rằng chứng cứ thu được ban đầu

là toàn vẹn

Các dữ liệu thu được từ hệ thống (bộ nhớ, tiến trình, kết nối mạng, phân vùng đĩa)phải được ghi lại và ký mã bằng các thuật toán MD5 hoặc SHA1 Trước khi bắt đầu phântích, chuyên viên điều tra phải kiểm tra độ tin cậy của các dữ liệu này dựa vào thông tin màcác chuỗi MD5 hay SHA1 cung cấp nhằm tránh việc gian lận và đặt hay làm giả chứng cứđánh lạc hướng điều tra

1.5.4 Thiết lập mốc thời gian và phân tích

Sau khi thu thập xong chứng cứ, tiến hành thiết lập tập tin thời gian Đây là một tậptin dạng hình ảnh đầy đủ phục vụ hữu ích cho việc theo dõi các hoạt động của hệ thống(hiển thị thời gian cuối cùng của một tập tin thực thi được chạy, các tập tin/thư mục được

Trang 14

tạo/xóa trong thời gian qua, đồng thời nó cũng chứng minh được sự hiện diện của các kịchbản đang hoạt động).

Quá trình thiết lập mốc thời gian bao gồm hai phần:

- Phần 1: tạo các tệp tin trung gian với tất cả các thông tin (dữ liệu và siêu dữliệu) được lấy ra từ tập tin hình ảnh

- Phần 2: sắp xếp lại các dữ liệu đó theo thứ tự thời gian tăng dần

1.5.5 Phân tích phương tiện truyền dữ liệu

Từ các kết quả thu được bởi việc phân tích thời gian, tiến hành phân tích phươngtiện truyền thông để tìm kiếm các đầu mối phía sau một hệ thống bị thỏa hiệp Bộ công cụ

có sẵn phục vụ cho việc phân tích phụ thuộc vào một số nhân tố sau:

- Nền tảng phần mềm được sử dụng trong máy tính phục vụ điều tra

- Nền tảng phần mềm được sử dụng trong các hệ thống mục tiêu của việc phântích

- ……

Giai đoạn này, kiểm tra kỹ các lớp phương tiện truyền thông (vật lý, dữ liệu, siêu dữliệu, hệ thống tập tin) nhằm tìm kiếm bằng chứng về việc cài đặt tập tin nhi phân đáng ngờ,các thư mục được thêm vào/gỡ bỏ

1.5.6 Khôi phục dữ liệu

Sau khi phân tích phương tiện truyền dữ liệu, chuyên viên điều tra hoàn toàn có thểtìm kiếm từ bộ nhớ đã được ghi lại và trích xuất ra các dữ liệu chưa được phân bố trongngăn xếp, sau đó phục hồi bất kỳ tệp tin nào bị xóa

Tìm kiếm không gian trống (trong mỗi trường windows) hoặc tìm trong không gianchưa phân bố dữ liệu có thể khám phá nhiều tập tin phân mảnh, đó có thể là đầu mối củacác hành động xóa tập tin, thời gian bị xóa,… Thời gian tập tin bị xóa là một trong nhữngthông tin quan trọng liên quan đến các cuộc tấn công đã xảy ra trên hệ thống

1.5.7 Tìm kiếm chuỗi

Người phân tích tiến hành tìm kiếm các chuỗi cụ thể chứa bên trong các tập tinnhằm tìm được các thông tin hữu ích như địa chỉ IP, địa chỉ Email,…để từ đó truy tìm dấu

Trang 15

vết tấn công Một danh sách chuẩn các từ khóa thường gặp có thể sẽ hữu ích để tìm ranhững thông tin liên quan đến một hệ thống bị thỏa hiệp.

1.5.8 Lập báo cáo

Tất cả các giai đoạn trên đều phải lập báo các mô tả chi tiết và dễ hiểu Các chuyênviên điều tra phải đưa ra các kỹ thuật điều tra, các công nghệ và các phương thức được sửdụng cũng như chứng cứ thu thập được, tất cả phải được giải thích rõ ràng trong báo cáoquá trình điều tra

1.6.

Trang 16

CHƯƠNG II – MỘT SỐ KỸ THUẬT VÀ CÔNG CỤ THU THẬP VÀ PHÂN TÍCH

THÔNG TIN AN NINH MẠNG TỪ BỘ NHỚ MÁY TÍNH 2.1 Các kỹ thuật sử dụng trong thu thập và phân tích thông tin từ bộ nhớ máy tính 2.1.1 Thu lại bộ nhớ khả biến

Có 2 phương pháp để thu lại bộ nhớ khả biến là: Thu dựa trên phần cứng và thu dựatrên phần mềm Cả 2 phương pháp này đều có ưu nhược điểm riêng vào sẽ được mô tảtrong phần này Nhìn chung, theo quan điểm điều tra pháp lý, việc thu lại dựa trên phầncứng thì tốt hơn vì nó đáng tin cậy và thường khó khăn cho kẻ tấn công khi chúng cố ý làmsai lạc chứng cứ, nhưng hiện tại phương pháp thu lại bộ nhớ khả biến dựa vào phần mềmthường được sử dụng hơn do chi phí phù hợp và tính khả dụng

Thu lại bộ nhớ khả biến dựa trên phần cứng liên quan đến việc tạm ngưng quá trình

xử lý của máy tính và thực hiện truy cập bộ nhớ trực tiếp (DMA) để có được một bản saocủa bộ nhớ Nó được coi là tin cậy hơn do ngay cả khi hệ điều hành và phần mềm trên hệthống đã bị xâm nhập hoặc bị làm sai bởi một kẻ tấn công, chúng ta vẫn có thể nhận đượcmột hình ảnh chính xác của bộ nhớ, bởi vì chúng ta không phụ thuộc vào các thành phầncủa hệ thống Nhược điểm của phương pháp này là chi phí đắt đỏ Một trong những phầncứng chuyên dụng thiết kế cho mục đích này là Tribble Card (Carrier & Grand, 2004) – nó

là một tấm mạch PCI được cài sẵn trong hệ thống trước khi thỏa hiệp được diễn ra để chophép các nhà điều tra ghi lại bộ nhớ một cách chính xác và đáng tin cậy hơn phương phápthu lại dựa trên phần mềm

Thu lại bộ nhớ khả biến dựa trên phần mềm là một kỹ thuật được sử dụng phổ biếnbằng việc sử dụng bộ công cụ đánh giá tin cậy được phát triển và cung cấp bởi các chuyêngia điều tra số hàng đầu thế giới như Memoryze, win32dd,… Hoặc cũng có thể sử dụng

những công cụ đã được tích hợp sẵn trong hệ điều hành (như memdump hoặc dd trong

Unix)

Cho dù các công cụ được tin cậy hoặc đã được có trên hệ thống thì nó cũng rất dễ bị

kẻ tấn công làm sai lạc, nếu kẻ tấn công đã xâm nhập được vào hệ điều hành của máy tínhđang được phân tích thì họ anh ta có thể ẩn các dữ liệu có liên quan bằng các thay đổi các

Trang 17

lời gọi hệ thống và cấu trúc hệ thống bên trong Một nhược điểm nữa của phương pháp này

là việc chụp lại bộ nhớ sẽ làm thay đổi nội dung của bộ nhớ, khả năng ghi đè lên dữ liệuliên quan đến cuộc điều tra Mặt khác, các công cụ cần để thực hiện thu lại bộ nhớ khả biếndựa trên phần mềm là miễn phí và có sẵn

2.1.2 Xác định nơi tìm bộ nhớ khả biến

Bộ nhớ khả biến được truy cập thông qua các cơ chế khác nhau tùy vào hệ điềuhành đang được sử dụng và phần cứng trong máy tính riêng của mình

Trong Windows, có 2 đối tượng thiết bị phổ biến có thể được truy cập để lấy bộ nhớ

khả biến là: \\.\PhysicalMemory và \\.\DebugMemory Một ảnh liệu định dạng RAW

thường được thu hồi trong các thiết bị trên Sau khi một ảnh liệu định dạng RAW được thuthì người phân tích có thể chuyển nó thành dạng định dạng crashdump của Microsoft vàxem xét nó như công cụ gỡ lỗi Người phân tích cũng có thể sử dụng nhiều công cụ khác

để phân tích và kiểm tra nội dung của dữ liệu dump

Trong Unix, các thiết bị bộ nhớ vật lý thường là /dev/mem/ và /proc/kcore Không phải tất cả các file hệ thống đều sử dụng /proc/kcore, nên người phân tích phải nắm được

file hệ thống để tìm hiểu xem thiết bị này có tồn tại hay không để tiến hành ghi lại và phântích

2.1.3 Liệt kê các tiến trình đang được thực thi

Khi chúng ta có được bộ nhớ khả biến, việc tiếp theo chúng ta cần làm là phântích nó, để thông qua đó xác định các tiến trình đang chạy trên hệ thống tại thời điểm màquá trình ghi lại được thực hiện Kỹ thuật này được sử dụng nhằm xác định mối liên hệgiữa các tiến trình với nhau, các tiến trình nào đóng vai trò là tiến trình cha, sở hữu các tiếntrình con khác, cũng như xem có tiến trình nào lạ đang tồn tại trên hệ thống hay không, aogồm các tiến trình ẩn, việc này cung cấp cái nhìn tổng quan về các chương trình đang thựcthi trên hệ thống cũng như quyết định việc tiếp theo cần làm gì khi có danh sách các tiếntrình Công cụ rất tốt phục vụ cho việc này là Volatility

2.1.4 Liệt kê các kết nối mạng có trong hệ thống

Sau khi hệ thống được liệt kê các tiến trình đang chạy bao gồm các tiến trình ẩn,

Trang 18

Trước khi đi vào cụ thể chúng ta xét ví dụ sau:

Hình 2.1: Kiểm tra các kết nối mạng

Ở ví dụ trên danh sách kết nối ra vào hệ thống có một kết nối qua cổng 80 được sởhữu bởi tiến trình 856 Việc liệt kê các kết nối mục đích là để xem nếu có kết nối ra ngoài

hệ thống thì những kết nối đó thuộc về tiến trình nào, nếu là tiến trình của trình duyệt thìkhi đó có thể là kết nối bình thường, trong trường hợp có nhiều kết nối đến cổng 80 nhưnglại xuất hiện tiến trình như svschost thì rõ ràng có vấn đề trong phiên kết nối đó Hầu hếttrong các công cụ phân tích bộ nhớ hiện nay đều hỗ trợ cho việc này

2.1.5 Phục hồi các tập tin ánh xạ trong bộ nhớ

Như với các quá trình đã chấm dứt, các tệp đã bị đóng thường vẫn còn trong bộ nhớ,nhưng không còn được liên kết thông qua các danh sách được hệ điều hành duy trì và phảiđược tìm thấy bằng các phương thức thay thế.Quá trình khôi phục các tệp như vậy tương tựnhư việc xây dựng lại các tệp trên một đĩa cứng đã bị xóa, mặc dù thực tế bộ nhớ thường bịphân mảnh hơn nhiều so với một đĩa cứng làm cho quá trình tham gia nhiều hơn.Thôngthường, nhìn vào bảng phân trang sẽ cho phép các tệp được tạo lại ngay cả khi chúngkhông còn hoạt động trong bộ nhớ.Ngoài ra còn có một khu vực của bộ nhớ được gọi là

"Khu vực kiểm soát" duy trì liên kết giữa tên tệp và dữ liệu tệp được lưu trữ trong cáctrang; nếu khu vực này vẫn còn hiện diện thì tên tập tin cũng có thể được phục hồi

2.1.6 Phân tích ngược tập tin chứa mã độc

Kĩ thuật này đòi hỏi người phân tích phải nắm vững kiến thức lập trình assembly vàmột số ngôn ngữ lập trình hệ thống C/C++ Bên cạnh đó người phân tích phải nắm rõ kiến

Trang 19

trúc hệ điều hành, kiến trúc bộ vi xử lí, cách thức cơ chế mã độc khi lây nhiễm Với cáckiến thức và hiểu biết trên chúng ta cũng cần sử dụng các công cụ hỗ trợ cho việc phân tíchnhư IDA, Ollydebug, PeiD…

Kĩ thuật này thường áp dụng khi chúng ta trích xuất tập tin nghi ngờ chứa mã độc đểphân tích, mục đích để xem mã nguồn của mã độc đã được viết ra và thực thi như thế nào

Để phân tích mã độc người phân tích cần tạo ra những môi trường ảo để phân tích,đảm bảo mã độc không thể lây nhiễm ra ngoài hay làm hại đến máy tính của chính mình.Giả sử ta đang ngồi phân tích một mã độc có khả năng lây lan mạnh nhất trong lịch sử Và

ta bắt đầu phân tích nó bằng cách chạy nó ngay trên máy tính có kết nối ra internet củamình Việc đó sẽ khiến mã độc ngay lập tức có thể lây lan ra ngoài và gây ra hậu quảkhông lường trước được Hơn nữa có một quy tắc phân tích mã độc đó là tuyệt đối khôngnên để cho chủ mưu nhận ra có người đang cố gắng phân tích mã độc của hắn

Môi trường ảo ở đây sẽ được xây dựng tùy trường hợp, tùy từng đơn vị phân tích.Đối với một người phân tích mã độc tự do không chuyên thì môi trường ảo chỉ đơn giản là:Một Vmware hay Virtualbox có cài sẵn windows xp, win 7,…, cùng một số ứng dụngthông dụng như java, adobe flash, firefox,…và máy ảo này sẽ không có kết nối mạng rangoài và ra máy thật hoặc có kết nối ra máy thật, máy thật sử dụng Linux và không có kếtnối mạng

2.1.7 Phân tích registry

Trong hệ điều hành windows thì registry chứa rất nhiều thông tin có giá trị, là nơi cóthể thu thập các chứng cứ rất hữu ích phục vụ cho việc điều tra Hầu hết khi kiểm tra cácphần mềm độc hại tồn tại trên một hệ thống, thì chúng ta thường kiểm tra registry, quátrình kiểm tra được thực hiện khi chúng ta tìm thấy tiến trình bị mã độc chèn vào.Trongtrường hợp phân tích điều tra bộ nhớ khả biến thì với việc phân tích registry chúng ta sẽthực hiện việc tạo dựng lại dữ liệu registry

Khi tiến hành phân tích chúng ta tìm kiếm địa chỉ vật lí của registry hives trong bộnhớ, sau đó xác định địa chỉ ảo của registry trong bộ nhớ và đường dẫn đầy đủ đến hivestương ứng trên đĩa và cuối cùng là hiển thị các khóa con, các giá trị, các dữ liệu và các kiểu

Trang 20

dữ liệu chứa trong một khóa registry được chỉ định, mục đích là tìm kiếm những thông tinquan trọng có ích cho việc điều tra.

2.2 Một số công cụ

2.2.1 Volatility

Volatility là một framework với rất nhiều plugins được dùng để phân tích và tìmkiếm thông tin từ chứng cứ thu được Các plugins được viết để phân tích điều tra bộ nhớtheo kiến trúc của hệ điều hành windows

Hình 2.2: Các plugins mà volatility hỗ trợ

Việc phân tích sẽ tiến hành trong một môi trường độc lập với hệ thống ghi lại chứng

cứ, volatility cài đặt và cả làm việc được trên hệ điều hành Linux cũng như windows, tronglĩnh vực Memory Forensic thì đây là công cụ không thể thiếu để điều tra và phân tích nó cóthể thực hiện được các công việc như xác định các tiến trình đang chạy trên hệ thống đó,các registry handles, các sockets đang mở trên mạng, danh sách dlls được nhập vào trongcác tiến trình, các thư viện, hàm, API hooks trong người dùng và nhân …

Ngoài giao diện sử dụng dòng lệnh thì volatility còn được cộng đồng mã nguồn mởphát triển thêm giao diện web để giúp cho người phân tích có cái nhìn trực quan hơn Phiên

Trang 21

bản giao diện web mang tên VolUtility được một lập trình viên “kevthehermit” phát triểndựa trên nền tảng django của python.

Hình 2.3: Giao diện VolUtility

Với giao diện web này giúp cho người phân tích điều tra bộ nhớ có một cái nhìntổng quan và giúp cho việc phân tích sẽ nhanh hơn là giao diện dòng lệnh

2.2.2 DFF - Digital Forensic Framework

DFF là phần mềm mã nguồn mở phục vụ cho việc điều chứng cứ tội phạm côngnghệ cao

DFF được xây dựng để phục vụ cho việc dễ dàng thu thập thông tin cũng như việcduy trì và phân tích các chứng cứ kỹ thuật số mà không gây ảnh hưởng đến dữ liệu và hệthống Một số tính năng mà DFF hỗ trợ như:

- Phân tích và xây dựng lại Windows registry

- Trích xuất ra nhiều dữ liệu và siêu dữ liệu

- Phục hồi dữ liệu ẩn và dữ liệu bị xóa

- Liệt kê các tiến trình đang chạy

- Liệt kê các kết nối mạng đang tồn tại trên hệ thống

- Sử dụng tính năng tìm kiếm dựa vào thời gian, nội dung

Trang 22

Hình 2.4: Giao diện của DFF

Mandiant Redline là công cụ miễn phí hàng đầu của mandiant cung cấp khả năngđiều tra máy chủ để người dùng tìm thấy dữ liệu hoạt động của các tập tin độc hại thôngqua việc phân tích bộ nhớ và tập tin hệ thống

Công cụ Mandiant RedLine cung cấp khả năng phân tích tệp tin và bộ nhớ của cácmáy cụ thể Công cụ này giúp thu thập thông tin về các tiến trình, trình điều khiển đangchạy từ bộ nhớ và thu thập các tệp tin siêu dữ liệu của hệ thống, dữ liệu registry, thông tinmạng, dịch vụ, nhiệm vụ và lịch sử duyệt web để giúp xây dựng hồ đánh giá đe dọa tổngthể giúp ích cho quá trình điều tra an ninh mạng

2.2.3 The Sleuth Kit và Autospy

TheSleuth Kit và Autospy là bộ công cụ nôi tiếng trong phân tích và điều tra tộiphạm máy tính Đây là bộ công cụ mã nguồn mở hỗ trợ nhiều hệ điều hành như windows,Linux, OSX cũng như các họ Unix khác, chúng thường được sử dụng để phân tích bộ nhớkhả biến được ghi lại từ hệ thống và thực hiện phân tích chuyên sâu hệ thống các tập tinnhư NTFS, FAT, HFS+, Ext3 và UFS và nhiều loại ổ đĩa khác của hệ thống

Ngày đăng: 21/05/2018, 09:02

TỪ KHÓA LIÊN QUAN

w