1. Trang chủ
  2. » Tất cả

Thu thập và phân tích chứng cứ từ bộ nhớ

44 26 0

Đ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

Tiêu đề Thu thập và phân tích chứng cứ từ bộ nhớ
Người hướng dẫn Thầy Nguyễn Mạnh Thắng
Trường học Học viện Kỹ thuật Mật mã
Chuyên ngành An toàn thông tin
Thể loại Báo cáo môn học
Định dạng
Số trang 44
Dung lượng 7,85 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Vì vậy, nhóm em đã lựa chọn đề tài “Thu thập và phân tích chứng cứ từ bộ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 ninhmạng lấy được từ bộ nhớ của máy tín

Trang 1

BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT MÃKHOA: AN TOÀN THÔNG TIN

Trang 2

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

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

Trang 3

2.2.1 Volatility 19

2.2.4 SANS Investigate Forensic Toolkit (SIFT) 23

PHỤ LỤC: Danh sách phân chia công việc

Trang 4

DANH MỤC HÌNH ẢNH

Hình 2 7: Chạy volatility với file cần điều tra WINDOWS7.raw 23

Hình 3 3: Sử dụng công cụ Dumpit để ghi lại bộ nhớ 30

Hình 3 5: File chứng cứ được đưa vào môi trường để phân tích 31 Hình 3 6: Kiểm tra lại mã MD5 để đảm bảo tính toàn vẹn của chứng cứ 31 Hình 3 7: Sử dụng module imageinfo kiểm tra thông tin môi trường phân tích 32

Hình 3 10: Module psscan kiểm tra tất cả các tiến bao gồm cả tiến trình trình bị ẩn

33 Hình 3 11: Module psscan kiểm tra tất cả các tiến bao gồm cả tiến trình trình bị

Hình 3 13: Tiến trình cha/con với module pstree (2) 35

Hình 3 15: Các thư viện dll mà tiến trình Bonzify.exe sử dụng 36 Hình 3 16: Trích xuất chương trình từ tiến trình 2896 36 Hình 3 17: File chương trình từ tiến trình vừa trích xuất được 36 Hình 3 18: Kiểm tra file vừa trích xuất được với Virustotal 37

Trang 5

Hình 3 23: Phân tích Registry sử dụng module hashdump 40

LỜI MỞ ĐẦU

Trong thời đại công nghệ thông tin và truyền thông phát triển như hiện nay,không một cá nhân, tổ chức, doanh nghiệp nào có thể tách rời được máy tính vàmạng máy tính Chính vì vậy, hoạt động phạm tội của các đối tượng sử dụng côngnghệ cao ngày càng phổ biến, thủ đoạn phạm tội của chúng ngày càng tinh vi Trênlĩnh vực an ninh quốc gia, các thế lực thù địch đã không ngừng tập trung lợi dụngcông nghệ thông tin, mạng viễn thông để xuyên tạc, vu khống chống phá Nhà nước.Trên lĩnh vực trật tự, an toàn xã hội, tình hình an ninh mạng Việt Nam diễn biếnphức tạp, nhiều vụ tấn công, phá hoại, lây nhiễm virus, phần mềm gián điệp, mã tinhọc độc hại nhằm vào hệ thống mạng của cơ quan nhà nước và tư nhân với mức độ,tính chất ngày càng nghiêm trọng

Vì vậy, nhóm em đã lựa chọn đề tài “Thu thập và phân tích chứng cứ từ bộ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 ninhmạng lấy được từ bộ nhớ của máy tính cũng như triển khai hướng giải quyết

Mục đích chọn đề tài “Thu thập và phân tích chứng cứ từ bộ nhớ” của chúng

em là tìm hiểu những kiến thức tổng quan về việc thu thập và phân tích chứng cứ từ

bộ nhớ máy tính, giới thiệu các công cụ phân tích thường sử dụng và thực hiện tìnhhuống minh họa

Hơn nữa, việc thực hiện đề tài này sẽ hỗ trợ nhóm chúng em trong việc địnhhướng việc làm và giúp chúng em có được thêm những kiến thức nền tảng, bổ ích

để phục vụ cho công việc sau này

Trang 6

CHƯƠNG I: TỔNG QUAN VỀ THU THẬP VÀ PHÂN TÍCH

CHỨNG CỨ TỪ BỘ 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 đến việc sử dụng các phương pháp, công cụ kỹ thuật khoa học đã được chứngminh để thu thậ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 tinthự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áihiệ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áchoạt động trái phép như cố ý xâm nhập, tấn công hoặc gây gián đoạn quá trình làmviệ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 rachứ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ụngquan trọng trong khoa 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 ảnhhưởng tới hệ thống đồng thời qua đó phát hiện các nguyên nhân hệ thống bị xâmnhậ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íchxuất thông tin và ngữ cảnh từ một nguồn dữ liệu chưa được khai thácqua đó biết được những thay đổi (chỉnh sửa, thêm bớt…) dữ liệu trongRegistry

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

Trang 7

- 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ácchứng cứ kỹ thuật số

- Application Forensics: Là loại hình điều tra phân tích các ứng dụngchạy trên hệ thống như Email, dữ liệu trình duyệt, skype, yahoo… Qua

đó trích xuất các bản ghi được lưu trữ trên các ứng dụng phục vụ choviệc điều tra tìm kiếm chứng cứ

- Network Forensics: Là một nhánh của digital forensics liên quan đếnviệc theo 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ụ cho việ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ậptrên môi trường mạ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íchlà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ến trúc quản lý bộ nhớ trong máy tính để ánh xạ, trích xuất cáctập tin đang thực thi 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ếnhành điều tra, giúp cho việc xác định nguyên nhân cũng như các hành vi đã xảy ratrên hệ thống, cung cấp các chứ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óitin 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ồn gố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

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ư

Trang 8

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ích xuấ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 thực thi có thể được sử dụng để chứng minh rằng hành vi của tộiphạm đã xảy ra hoặc để theo dõi nó đã diễn ra như thế nào Tính hữu ích của loạihì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ó đã được chạ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 thu thậ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ệu nà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ác phươ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 quaphân tích Dữ liệu được lưu trữ trên đĩa và trong RAM cung cấp hai thành phần quantrọng nhất của môi trường đó.Quan điểm truyền thống về điều tra số tập trung vàogiả định rằng độ tin cậy của các suy luận hoàn toàn phụ thuộc vào việc thu thập bằngchứng mà không thay đổi trạng thái của nó Ví dụ, các thủ tục xử lý bằng chứngthường được chấp nhận liên quan đến việc tắ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ại tuyến Các quy trình và thủ tụcchuyể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ệclư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áccũng có thể ảnh hưởng đến độ chính xác của suy luận được đưa ra Điều này đặc biệtquan trọng khi các tác nhân độc hại luôn tìm cách khai thác các hạn chế của kỹ thuật

Trang 9

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ố, người dùng 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ồn thay thế này, phải chấp nhậnrằng tất cả các phương pháp chuyển đổi, bao gồm các thủ tục chuyển đổi đĩa truyềnthố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 traphải hiểu được cách mà những thay đổi đó có thể tác động đế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ằng chứ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ềunà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 MemoryForensics, 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ântích, cung cấp những chứng cứ rất có giá trị, nó vượt qua một số hạn chế của cácphương pháp điều tra truyền thố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ụ khitiến hành phân tích thường gặp khó khăn khi không truy cập được dữ liệu đã được

mã hóa trừ khi có thể bẻ khóa được mật khẩu của người dùng Mà khóa và mật khẩurất hiếm khi được lưu trữ 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ậy khi tiến hành phân tích bộ nhớ có thể cho phép sử dụngcá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ủa phươ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ệc khám phá những thông tin về các tiến trình đangchạ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ấutrong bộ nhớ Nhưng đối với Memory Forensics, thì đây là một việc khá dễ dàng

Trang 10

Ứng dụng chính của Memory Forensics là phân tích điều tra các cuộc tấn côngmáy tính sử dụng công nghệ cao, với những kỹ thuật tinh vi, đủ để tránh việc để lạicá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 cho 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ại thờ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:

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ácminh 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

Trang 11

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ặpphả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ềnthô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đang chạy, các kết nối mạng đang được kích hoạt)

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ốimạ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ụ đơngiả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ểmtra rootkit, các thư 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 ninhxả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ểm phầ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 tin khá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ụng cá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 ngay trê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ác phầ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ôitrường điều tra 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

Trang 12

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ân tí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ựavà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ập tin dạng hình ảnh đầy đủ phục vụ hữu ích cho việc theo dõi các hoạt độngcủ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ậptin/thư mục được 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ịch bả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íchphương tiện truyền thông để tìm kiếm các đầu mối phía sau một hệ thống bị thỏahiệ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ân tí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 nhiphâ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

Trang 13

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 đượcphân bố trong ngă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ônggian chưa phân bố dữ liệu có thể khám phá nhiều tập tin phân mảnh, đó có thể là đầumối của cá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ững thô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ậptin nhằ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 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 ra nhữ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ácchuyên viê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ươngthứ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áo quá trình điều tra

Trang 14

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ựa trê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 thulại dựa trên phần cứng thì tốt hơn vì nó đáng tin cậy và thường khó khăn cho kẻ tấncông khi chúng cố ý làm sai 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ềm thườ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ó đượcmột bản sao củ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, vẫn cóthể nhận được một hình ảnh chính xác của bộ nhớ, bởi vì việc này không phụ thuộcvào các thành phần củ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ần cứng chuyên dụng thiết kế cho mục đích này là TribbleCard (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 để cho phé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áp thu 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ụngphổ biến bằng việc sử dụng bộ công cụ đánh giá tin cậy được phát triển và cung cấpbởi các chuyên gia điều tra số hàng đầu thế giới như Memoryze, win32dd,… Hoặc

Trang 15

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ànhcủ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 quanbằng các thay đổi các 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ệu liê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ến dự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ều hành đang được sử dụng và phần cứng trong máy tính riêng

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 địnhdạng RAW được thu thì người phân tích có thể chuyển nó thành dạng định dạngcrash dump 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ệudump

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ân tích

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

Khi có được bộ nhớ khả biến, việc tiếp theo cần làm là phân tí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ệ

Trang 16

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ữucác tiến trì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ốnghay không, ao gồm các tiến trình ẩn, việc này cung cấp cái nhìn tổng quan về cácchương trình đang thực thi 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ến trì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, tiến hành kiểm tra xem có kết nối nào ra ngoài hệ thống hay không

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ếntrì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ưng lại xuất hiện tiến trình như svchost thì rõ ràng cóvấn đề trong phiên kết nối đó Hầu hết trong 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

Trang 17

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ụccá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 choquá trình tham gia nhiều hơn.Thông thường, nhìn vào bảng phân trang sẽ cho phépcác tệp được tạo lại ngay cả khi chúng không còn hoạt động trong bộ nhớ.Ngoài racò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ếtgiữa tên tệp và dữ liệu tệp được lưu trữ trong các trang; nếu khu vực này vẫn cònhiệ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ìnhassembly và một số ngôn ngữ lập trình hệ thống C/C++ Bên cạnh đó người phântích phải nắm rõ kiến 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 Bên cạnh các kiến thức và hiểu biết trên cũng cần sử dụng cáccông cụ hỗ trợ cho việc phân tích như IDA, Ollydbg, PeiD…

Kỹ thuật này thường áp dụng khi 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ântí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ủachí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ạnhnhấ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 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ông nên để cho chủ mưu nhận ra có người đang cố gắng phântí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ântí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

Trang 18

một số ứng dụng thông dụng như java, adobe flash, firefox,…và máy ảo này sẽkhông có kết nối mạng ra ngoà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ết nố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 khikiểm tra các phần mềm độc hại tồn tại trên một hệ thống thì thường kiểm traregistry, quá trình kiểm tra được thực hiện khi tìm thấy tiến trình bị mã độc chènvào Trong trường hợp phân tích điều tra bộ nhớ khả biến thì với việc phân tíchregistry, phân tích viên 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, đầu tiên cần tìm kiếm địa chỉ vật lí của registry hivestrong bộ nhớ, sau đó xác định địa chỉ ảo của registry trong bộ nhớ và đường dẫn đầy

đủ đến hives tươ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 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 tin quan trọng có ích cho việc điều tra

Trang 19

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ạichứ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, trong lĩ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ếntrình đang chạy trên hệ thống đó, các registry handles, các sockets đang mở trênmạng, danh sách dlls được nhập vào trong các tiến trình, các thư viện, hàm, APIhooks 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ìntrực quan hơn Phiên bản giao diện web mang tên VolUtility được một lập trình viên

“kevthehermit” phát triển dựa trên nền tảng django của python

Trang 20

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áinhìn tổng quan và giúp cho việc phân tích sẽ nhanh hơn là giao diện dòng lệnh

Trang 21

Hình 2 5: Thư mục Volatility sau khi giải nén

Sử dụng CMD và đi tới thư mục chứa file vừa tải xuống

Hình 2 6: File tải xuống sử dụng CMD

Liệt kê thư mục volatility

Trang 22

Hình 2 7: Chạy volatility với file cần điều tra WINDOWS7.raw

Ngày đăng: 26/02/2023, 12:15

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w