Báo cáo khóa học phân tích malware

30 1.1K 13
Báo cáo khóa học phân tích malware

Đ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

Báo cáo khóa học phân tích Mailware I. Ngày thứ nhất 1. Giới thiệu mã độc Malware - Mailware (Mailicious software ) là một phần mềm hoặc chương trình được thiết kế để thực hiện những hành vi sau: + Tấn công hệ thống + Đánh cắp thông tin + Xâm nhập hệ thống - Mã độc mang ý nghĩa rộng hơn virus 2. Phân loại mã độc - Virus - Worm - Trojan horse - Rootkit: Là phần mềm ăn sâu bên trong hệ thống làm cho hệ thống không còn tin cậy, chúng làm thay đổi ý nghĩa các lệnh bên trong hệ thống. - Bot: Khi một máy tính bị nhiễm một mã độc thì máy tính đó được gọi là một bot, tập hợp nhiều máy tính bị nhiễm mã độc thì gọi là mạng bot. - Dos Tools - Exploit kit: Là một bộ công cụ có sẵn ví dụ như phishing mà hacker sử dụng để đánh cắp thông tin về tài khoản và mật khẩu khi người dùng đăng nhập vào website. - Spyware: Là phần mềm thu thập thông tin người dùng ngây phiền nhiễu cho người dùng. 3. Lịch sử phát triển của Mailware - 1966: Đưa ra lý thuyết tự nhân bản - 1971: virus máy tính đầu tiên xuất hiện ( xuất hiện worm: Greeper) - 1981: virus đầu tiên lây nhiễm qua đĩa mềm có tên là Elk cloner - 1983: xuất hiện khái niệm “ virus máy tính” - … - … - 2007: Zeus là mạng bot net chuyên lây nhiễm máy tính người dùng thu thập thông tin: email, tài khoản ngân hàng… - 2008: Xuất hiện conficker (nguy hiểm nhất là phiên bản C) ứng dụng kỹ thuật tiên tiến nhấ thời bấy giờ, mỗi ngày chúng tạo da danh sách 50000 domain để phát tán mã độc - 2009: virus tấn công mạng (DDos) - 2010: Exploit Kit là bộ công cụ được xây dựng để tấn công website. 4. Cách thức lây nhiễm - File đính kèm trong email - Liên kết trong email hoặc website: gửi email spam, website nhúng mã độc Page | 1 - Đoạn mã độc nhúng trong nội dung web (lấy history) - Lỗ hổng của hệ điều hành hoặc ứng dụng - Thiết bị lưu trữ - Chia sẻ file trong mạng 5. Những ảnh hưởng, tác hại của mã độc - Ảnh hưởng đến hệ thống file như: + Nhân bản mã độc, lây nhiễm vào file + Giấu trong thư mục hệ thống + Thiết lập thuộc tính ẩn, file hệ thống nhằm gây khó khăn cho việc tìm diệt + Ẩn trong hệ thống file NTFS - Ảnh hưởng đến Registry: Đây chính là data base lưu trữ thông tin cấu hình hệ thống - Ảnh hưởng đến tiến trình: + Khởi tạo tiến trình mới + Tạo những khóa mới để lưu giữ thông tin + Thay đổi giá trị của hệ thống + Đọc những thuộc tính thông tin quan trọng + Thường dùng để thiết lập chạy khi khởi động - Ảnh hưởng đến hoạt động mạng - Tạo mutex - Cài đặt keylogger - Cài đặt rootkit: + Ẩn tiến trình, ẩn file + Thường chạy trong kernel mode 6. Khái niệm, lợi ích của việc phân tích mã độc a. Khái niệm: - Phân tích mã độc là thực hiện các biện pháp nghiệp vụ để thu thập, tìm hiểu nghiên cứu mọi thông tin về mã độc: + Hành vi của mã độc + Ảnh hưởng và tác hại của mã độc - Từ đó đưa ra các biện pháp phòng chống và ngăn chặn b. Lợi ích: - Cung cấp thông tin chính xác về mã độc - Hỗ trợ các hoạt động đảm bảo an toàn thông tin : + Xử lý sự cố + Phân tích điểm yếu, đánh giá mối nguy + Nhận biết xu hướng, kỹ thuật tấn công mới + Truy tìm dấu vết, bằng chứng + Xác định dấu hiệu nhận biết để phòng chống 7. Thiết lập môi trường Page | 2 a. Môi trường tải mã độc - Môi trường tách biệt khỏi mạng làm việc - Tuyệt đối không dùng trình duyệt truy nhập vào link tải mã độc và trình duyệt dễ bị tấn công. Sử dụng công cụ riêng biệt để tải mã độc (wget. curl) - Nên sử dụng môi trường khác với môi trường thưc thi mã độc (ví dụ như môi trường linux) - Sau khi tải về thì đổi tên, tránh trường hợp vô tình thực thi mã độc (tốt nhất là không cần đuôi) b. Môi trường phân tích mã độc - Sử dụng hệ thống dành riêng tách biệt không nối mạng (sử dụng môi trường giả lập) - Tắt các thiết lập tự động như autorun và các phần mềm diệt virus - Sử dụng các thiết bị lưu trữ chuyên dùng có khóa chống ghi để sao chép mã độc - Sử dụng phần mềm hệ thống có thể khôi phục về trạng thái sạch ban đầu sau khi phân tích: + Phần mềm máy ảo: Vmware, Virtual PC, VirtualBox + Windows system restore + Norton Ghost 8. Các phương pháp phân tích mã độc a. Phân tích sơ lược Page | 3 - Thu thập thông tin từ đối tượng bị tấn công để dễ dành hơn khi thực hiện phân tích - Xác định một số thông tin cơ bản sau: + Định dạng file, tên file, kích thước, thời gian + Các chuỗi ký tự xuất hiện trong file (các chuỗi có thể đọc được) + Giá trị băm của file (băm dùng để xác định tính toàn vẹn của đối tượng) - Thu thập thông tin của file đính kèm: + File readme, file config… + Mã nguồn (nếu có) - Tìm kiếm công cộng: + Sử dụng Search engine: ví dụ tìm giá trị băm + Mailling list - Quét bằng phần mềm anti-virus: + Sử dụng nhiều phần mềm khác nhau + Xem thêm thông tin từ hãng nếu phát hiện được - So sánh những thông tin sau với kết quả của người khác đã phân tích (nếu có) + Giá trị hash + Các chuỗi tìm được + Kết quả của phần mềm anti-virus Đây là bước đầu tiên mang tính chất tham khảo cho những phán đoán sau này. b. Phân tích hoạt động - Thực thi mã độc và giám sát hành vi: + Điểm yếu bị khai thác + Tiến trình được khởi tạo hoặc hủy bỏ + Thay đổi trên hệ thống file + Thay đổi trong registry + Các kết nối mạng ra ngoài - Khó có thể tìm ra mọi hành vi của mã độc nhưng dễ dàng xác định những biểu hiện, hành vi thông dụng - Hữu ích cho việc phản ứng nhanh sự cố - Môi trường để phân tích hoạt động: Page | 4 + Môi trường phải đảm bảo tách biệt và dùng riêng có thể là môi trường thật hoặc môi trường ảo + Xây dựn giả lập mạng internet và những dịch vụ cần thiết phục vụ cho hoạt động của mã độc: DHCP, DNS, SMTP, HTTP, FTP, IRC - Các công cụ phân tích hoạt động (công cụ giám sát) c. Phân tích mã thực thi - Về lý thuyết có thể xác định mọi hoạt động của mã độc - Nếu có mã nguồn thì chỉ cần đọc và hiểu mã nguồn (hiếm khi có được mã nguồn) - Nếu không có mã nguồn: + Phải phân tích mã thực thi nhị phân + Reverse Engineering: là tools dùng để dịch ngược từ mã máy sang mã Assembly, tái tạo lại mã nguồn + Đọc để thu thập thông tin mã Assembly Page | 5 - Công cụ dùng để phân tích mã thực thi: (IDA Pro) + Dịch ngược từ mã thực thi để: phân tích mã nhị phân ra assembly, không thực thi mã độc Page | 6 - Công cụ dùng để gỡ rối: (OllyDbg): + Phân tích mã thực thi trực tiếp khi trong bộ nhớ + Phải thực thi mã độc (bị nhiễm) II. Ngày thứ hai 1. Môi trường phân tích mã độc a. Mô hình môi trường phân tích - Guest machine 1: Cài Linux dùng làm server - Guest machine 2: Cài Windows XP dùng để cài mã độc phục vụ thử nghiệm Page | 7 b. Đặc điểm của môi trường phân tích: - Host machine có khả năng cung cấp đủ tài nguyên cho 2 Guest machine hoạt động - Chia sẻ mã độc giữa Host và Guest phải thông qua con đường phi network - Host machine và Guest machine không được kết nối mạng với nhau - Các Guest machine nối mạng với nhau với dạng Host-only và không có khả năng kết nối Internet. c. Guest Machine (Centos Linux) - Cài đặt DNS Server đáp ứng các yêu cầu sau: + Có khả năng phân giải bất kỳ domain nào do máy Guest Machine thứ 2 gửi đến + Mục đích: Đáp ứng yêu cầu nếu như mã độc có nhu cầu kết nối đến master - Cài đặt Web Server: + Mục đích: Đóng giả master phục vụ các yêu cầu của mã độc nếu như mã độc kết nối đến master là Web Server d. Guest Machine (Windows XP) - Cài đặt Guest Machine với các Service Packed riêng biệt - Cài đặt Microsoft Office - Cài đặt Adobe Reader, Adobe Profesional - Mục đích: Bởi vì các mã độc có thể khai thác ở các hệ điều hành và các Microsoft Office hay Adobe Reader với các phiên bản khác nhau 2. Xây dựng môi trường phân tích mã độc a. Guest Machine 1 (Linux) Page | 8 - Centos Linux Networking: + Network Adapter: Host-only + IP Address Server: [root@server ~]# ifconfig eth0 203.162.1.222 netmask 255.255.255.0 + IP Address DNS Server: [root@server ~]# ifconfig eth0:1 03.162.1.234 netmask 255.255.255.0 - Centos Linux DNS Deamon: + Cài đặt bind-9.3.6 + Copy cấu hình mẫu từ thư mục sau đến thư mục cấu hình của bind: /usr/share/doc/bind-9.3.6/sample/* + Cấu hình tập tin named.conf: … zone “.” { type master; file “fake.db” }; … + Nội dung của tập tin fake.db: @ 1D IN SOA localhost.localdomain hostmaster.localdomain. ( 2002022401 ; serial 3H ; refresh 15 ; retry 1W ; expire 3H ; minimum Page | 9 ) @ IN NS localhost.localdomain.; local IN A 203.162.1.222 * IN A 203.162.1.222 - Khởi động dịch vụ DNS và WWW: + Service named start + Service httpd start b. Guest Machine 2 (Windows XP) - Windows XP Networking: + IP Address: 203.162.1.111 netmask 255.255.255.0 + IP Gateway: 203.162.1.222 + IP DNS: 203.162.1.234 - Cài đặt tất cả các phần mềm và cấu hình như sau: Page | 10 [...]...3 Phân tích sơ lược mã độc a Mục tiêu - Nắm được những kiến thức sau: + Các bước phân tích sơ lược mã độc + Những kỹ năng thường dùng + Một số công cụ trong phân tích sơ lược b Phân tích thuộc tính: - Kiểm tra và phân tích các thuộc tính của đối tượng (mã độc): + Đặc điểm file + Giá trị băm + Các chuỗi ký tự c... (google, thông tin từ hãng anti-virus) + Giá trị băm (google) 4 Thực tập phân tích một số mã độc (có một số mẫu mã độc để phân tích) 5 Tổng kết các công cụ và chức năng - HxD, Trid: dùng để nhận dạng các định dạng file - Peid: chuyên phân tích các mã thực thi + + + Page | 12 - - Hash Tab: xác định giá trị băm (khi cài đặt chương trình tích hợp luôn trên windows ta chỉ cần kích chuột phải lên file cần kiểm... nhớ (Windows) a Cách thức phân đoạn bộ nhớ trong Windows - - - - - Phân đoạn text + Là phần của file thực thi nhị phân Nó chứa các chỉ thị lệnh (mã máy) để thực hiện các tác vụ của chương trình Phân đoạn này được đánh dấu là chỉ đọc và sẽ gây ra lỗi nếu như ghi trên phân đoạn này Kích thước là cố định tại lúc thực thi khi tiến trình lần đầu tiên được nạp Phân đoạn data + Là phân đoạn được sử dụng để... trên windows ta chỉ cần kích chuột phải lên file cần kiểm tra rồi chọn Properties/File Hashes) BinText: dùng để tìm kiếm chuỗi III Ngày thứ ba 1 Phân tích hoạt động - Mục tiêu nắm được những kiến thức cơ bản sau: + Các bước cơ bản về phân tích hoạt động + Phân tích hoạt động nâng cao + Sử dụng các công cụ 2 Các công cụ cơ bản a Process Explorer - Hiển thị thông tin về tiến trình - Kiểm tra các thư viện... ích: câu thông báo, đường dẫn, script, … - Công cụ: + Windows: BinText (tools) + *nix: strings (lệnh) g Kiểm tra thông tin nén chương trình: - Mục tiêu: + Xác định xem chương trình có bị nén hay không + Xác định trình biên dịch + Xác định công cụ đã dùng để nén - Công cụ thường dùng: + PeiD + Stud_PE + CFF Explorer h Phân tích so sánh kết quả - So sánh với những kết quả đã có: + Tự phân tích: tính giá... size + Timestamp + Thuộc tính file - Công cụ để kiểm tra: Các công cụ có sẵn từ hệ điều hành: Explorer, Command (dir, attrib) d Xác định các kiểu file - Cần phân tích các yêu cầu sau: Page | 11 Loại file: xác định được các loại file để có hướng phân tích tiếp theo Phần mở rộng Dấu hiệu nhận dạng - Công cụ áp dụng: + Trong Windows không có sẵn công cụ ta phải dùng các tools hỗ trợ + Công cụ hỗ trợ: TrID... (thường là thư mục hệ thống) Tạo liên kết trong mục Startup để thực thi mã độc khi khởi động hệ thống Tạo khóa trong mục Run hoặc Winlogon của Registry để thực thi mã độc khi khởi động - Đăng ký service mới hoặc thay đổi service đang có để load mã độc dạng dll d Wireshark - Dùng để giám sát và phân tích traffic mạng - Tìm kiếm các địa chỉ mà mã độc kết nối tới: + Địa chỉ hostname, địa chỉ IP, cổng kết... tạo giá trị ban đầu như là: int a=0 + Kích thước này cũng có định tại lúc thực thi chương trình Phân đoạn bss + Below stack section (.bss) là được sử dụng để lưu trữ các biến toàn cục nhưng không có khởi tạo giá trị ban đâu như là : int a + Kích thước của phân đoạn này cũng cố định lúc thực thi chương trình Phân đoạn Heap + Sử dụng để cấp phát các biến động và phát triển từ vùng địa chỉ thấp đến vùng... free() Ví dụ: int i = malloc(sizeof (int)) - Phân đoạn Stack + Tác dụng giữ những lời gọi hàm trong thủ tục đệ quy và phát triển theo địa chỉ vùng nhớ cao đến địa chỉ vùng nhớ thấp trên hầu hết các hệ thống - Phân đoạn biến môi trường và đối số + Lưu trữ một bản sao chép các biến cấp độ hệ thống mà có thể được yêu cầu bởi tiến trình trung quá trình thực thi Phân đoạn này có khả năng ghi được b Ví dụ... thi Phân đoạn này có khả năng ghi được b Ví dụ chương trình trong bộ nhớ - int index = 5; // giá trị này được lưu tại phân đoạn data bởi vì nó có giá trị khởi tạo - char * str; // giá trị này được lưu tại phân đoạn bss vì nó không có giá trị khởi tạo ban đầu - int i=c; // được lưu trong phân đoạn stack - str = (char*) malloc (10 * sizeof (char)); // Dành 10 ký tự trong vùng nhớ Heap c Cách thức gọi hàm . 3. Phân tích sơ lược mã độc a. Mục tiêu - Nắm được những kiến thức sau: + Các bước phân tích sơ lược mã độc + Những kỹ năng thường dùng + Một số công cụ trong phân tích sơ lược b. Phân tích. dùng để phân tích mã thực thi: (IDA Pro) + Dịch ngược từ mã thực thi để: phân tích mã nhị phân ra assembly, không thực thi mã độc Page | 6 - Công cụ dùng để gỡ rối: (OllyDbg): + Phân tích mã. Báo cáo khóa học phân tích Mailware I. Ngày thứ nhất 1. Giới thiệu mã độc Malware - Mailware (Mailicious software ) là một phần mềm

Ngày đăng: 06/07/2014, 00:38

Tài liệu cùng người dùng

Tài liệu liên quan