Đăng ký Đăng nhập
Trang chủ Báo cáo phân tích mã độc dựa trên phân tích động sử dụng mã nguồn mở cuckoo sand...

Tài liệu Báo cáo phân tích mã độc dựa trên phân tích động sử dụng mã nguồn mở cuckoo sandbox

.DOCX
58
516
117

Mô tả:

Báo cáo phân tích mã độc dựa trên phân tích động sử dụng mã nguồn mở cuckoo sandbox
BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT MÃ BÁO CÁO THỰC TẬP CƠ SỞ CHUYÊN NGÀNH ĐỀ TÀI: PHÁT HIỆN MÃ ĐỘC DỰA TRÊN PHÂN TÍCH ĐỘNG SỬ DỤNG MÃ NGUỒN MỞ CUCKOO SANDBOX Chuyên ngành: An toàn thông tin Sinh viên thực hiện: Phạm Ngọc Vân – Lớp L04 Đỗ Thị Vân – Lớp L01 Giảng viên hướng dẫn: Thầy Phạm Văn Hưởng Khoa Công nghệ thông tin – Học viện Kỹ thuật Mật mã Hà Nội, 2018 1 MỤC LỤC MỤC LỤC......................................................................................................................2 DANH MỤC CÁC KÝ HIỆU, TỪ VIẾT TẮT..............................................................4 DANH MỤC HÌNH.......................................................................................................5 LỜI CẢM ƠN................................................................................................................7 LỜI MỞ ĐẦU................................................................................................................8 CHƯƠNG 1: TỔNG QUAN VỀ MÃ ĐỘC..................................................................10 1.1. Tổng quan về mã độc.......................................................................................10 1.1.1. Khái niệm về mã độc.................................................................................10 1.1.2. Tình hình mã độc tại Việt Nam và trên thế giới........................................10 1.2. Phân loại mã độc..............................................................................................13 1.2.1. Virus..........................................................................................................13 1.2.2. Worm.........................................................................................................13 1.2.3. Trojan horse...............................................................................................14 1.2.4. Rootkits.....................................................................................................14 1.2.5. Spyware.....................................................................................................14 1.2.6. Adware......................................................................................................15 1.2.7. Fileless Malware.......................................................................................15 1.2.8. Ransomware..............................................................................................15 1.3. Vai trò của việc phân tích mã độc...................................................................16 1.4. Kết luận chương 1...........................................................................................16 CHƯƠNG 2: CƠ CHẾ HOẠT ĐỘNG CỦA MÃ ĐỘC...............................................17 2.1. Tìm hiểu về cấu trúc PE file...............................................................................17 2.2. Các hình thức tấn công của mã độc [3][5].........................................................19 2.2.1. Qua thiết bị lưu trữ.......................................................................................19 2.2.2. Qua mạng Internet.......................................................................................21 2.2.2.1. Phát tán qua các phần mềm.................................................................21 2.2.2.2. Phát tán qua các trang web..................................................................21 2.2.2.3. Phát tán qua thư điện tử.......................................................................22 2.2.2.4. Phát tán qua mạng nội bộ....................................................................24 2 2.2.2.5. Phát tán qua các dịch vụ IM................................................................24 2.4. Hành vi của mã độc............................................................................................26 2.5. Xu hướng phát triển của mã độc........................................................................26 2.6. Kết luận chương 2..............................................................................................28 CHƯƠNG 3: PHƯƠNG PHÁP PHÂN TÍCH ĐỘNG TRONG PHÁT HIỆN MÃ ĐỘC SỬ DỤNG SANDBOX.................................................................................................29 3.1. Quy trình phân tích mã độc [3]..........................................................................29 3.2. Khái niệm về phân tích động.............................................................................30 3.3. Tìm hiểu về Sandbox [4]....................................................................................31 3.3.1. Khái niệm về Sandbox.................................................................................31 3.3.2. Vai trò của Sandbox.....................................................................................32 3.3.3. Ưu điểm của Sandbox..................................................................................35 3.3.4. Nhược điểm của Sandbox............................................................................35 3.4. Kết luận chương 3..............................................................................................36 CHƯƠNG 4: THỰC NGHIỆM...................................................................................37 4.1. Mô tả thực nghiệm.............................................................................................37 4.1.1. Mô hình thực nghiệm...................................................................................37 4.1.1.1. Giới thiệu hệ thống..............................................................................37 4.1.1.2. Cài đặt hệ thống..................................................................................38 4.1.2. Dữ liệu thực nghiệm....................................................................................39 4.2. Triển khai thực nghiệm......................................................................................40 4.2.1. Thiết lập Cuckoo Host và uỷ quyền người dùng sử dụng Cuckoo..............41 4.2.2. Khởi động Virtualbox..................................................................................42 4.2.3. Khởi động Cuckoo Sandbox........................................................................42 4.2.4. Thực hiện phân tích động mã độc Locky trên Cuckoo Sandbox.................45 4.2.5. Kết quả phân tích.........................................................................................47 4.3. Đánh giá kết quả thực nghiệm...........................................................................52 KẾT LUẬN..................................................................................................................54 TÀI LIỆU THAM KHẢO............................................................................................55 3 DANH MỤC CÁC KÝ HIỆU, TỪ VIẾT TẮT Từ viết tắt API Tiếng Anh Tiếng Việt Aplication Programming Interface AV-TEST Giao diện lập trình ứng dụng Tổ chức kiểm định và đánh giá độc lập về các phần mềm diệt Virus cho Windows và Android Hệ thống phát hiện xâm nhập Các dịch vụ dành cho máy chủ chạy trên nền hệ điều hành Window IPS Intrusion prevention system IIS Internet Information Services IDS Intrusion detection system Hệ thống ngăn ngừa xâm nhập National Institute of Standards and Technology Personal computer Viện tiêu chuẩn - công nghệ quốc gia Hoa kỳ Máy tính cá nhân NIST PC PE File Format Portable Executable File Format Định dạng file thực thi cơ bản VNCERT Vietnam Computer Emergency Response Team HTML HyperText Markup Language IM Instant Messaging Trung tâm ứng cứu khẩn cấp máy tính Việt Nam Ngôn ngữ đánh dấu siêu văn bản Tin nhắn nhanh Malware Malicious software Mã độc 4 DANH MỤC HÌ Hình 1.1. Số lượng mã độc trên toàn thế giới trong vòng 5 năm gần đây (Nguồn: AV-TEST)....................................................................................................................10 Hình 1.2: Các vùng bị ảnh hưởng bởi mã độc WannaCry (Nguồn: VnExpress)........11 Hình 1.3. Số liệu thống kê virus phát tán qua email tính đến quý 2 năm 2018 trên trang statista.com..........................................................................................................12 Y Hình 2.1. Cấu trúc cơ bản của PE................................................................................18 Hình 2.2: Mã độc phát tán qua USB............................................................................20 Hình 2.3: Phần mềm Keygen bẻ khoá có nguy cơ lây nhiễm mã độc.........................21 Hình 2.4: Phát tán mã độc trên các trang web độc hại................................................22 Hình 2.5: Nội dung email giả mạo Thủ tướng được gởi đến người dùng Việt Nam năm 2015 (Nguồn: nld.com.vn)...................................................................................23 Hình 2.6: Thư điện tử kèm liên kết độc hại.................................................................24 Hình 2.7: Mã độc trên Facebook Messenger được phát tán vào tháng 12/2017 (Nguồn: Vietnamnet.vn)..............................................................................................25 Hình 3.1: Quy trình phân tích mã độc khi chưa có hệ thống phân tích tự động..........29 Hình 3.2: Quy trình phân tích mã độc khi có hệ thống phân tích tự động..................30 Hình 3.3: Hình ảnh minh hoạ về Sandbox (Google Sandbox)....................................31 Hình 3.4: Sandbox là giải pháp cho cả doanh nghiệp lẫn quản lý...............................32 Hình 4.1. Mô hình hệ thống phân tích mã độc Cuckoo Sandbox................................37 Hình 4.2. Trang thanh toán của Locky phiên bản mới nhất........................................40 Hình 4.3. Địa chỉ ip máy ảo cuckoo1 (Window 7 OS)................................................40 Hình 4.4. Địa chỉ ip với interface của VirtualBox VM (vboxnet0) trên Ubuntu........41 Hình 4.5. Thiết lập chế độ Host-only cho vboxnet0 và uỷ quyền người dùng sử dụng Cuckoo.........................................................................................................................41 Hình 4.6. Giao diện phần mềm tạo máy ảo VirtualBox 5.2........................................42 Hình 4.7. Thực hiện lệnh khởi động Cuckoo Sandbox...............................................43 Hình 4.8. Thực hiện lệnh khởi động hệ thống phân tích mã độc Cuckoo Sandbox....43 5 Hình 4.9. Giao diện chính hệ thống phân tích mã độc Cuckoo Sandbox....................44 Hình 4.10. Chọn chương trình mã độc Locky thực hiện phân tích.............................45 Hình 4.11. Máy ảo cuckoo1 thực hiện chạy chương trình agent.py............................46 Hình 4.12. Thông tin cơ bản về mã độc Locky Ransomware.....................................47 Hình 4.13. Tổng quan phân tích tĩnh...........................................................................47 Hình 4.14. Thông tin về phần mềm Pack và một số section của PE file mã độc........48 Hình 4.15. Một số thư viện, hàm API của mã độc......................................................48 Hình 4.16. Tổng quan mục phân tích động.................................................................49 Hình 4.17. Các khoá Registry bị tác động...................................................................50 Hình 4.18. Hệ thống mạng bị mã độc tác động...........................................................50 Hình 4.19. Tệp PIPE\lsarpc bị sửa đổi........................................................................51 Hình 4.20. URLs được tìm thấy trong Process Memory của mã độc..........................52 6 LỜI CẢM ƠN Trước hết tôi xin cảm ơn sâu sắc tới Thầy Phạm Văn Hưởng, đã định hướng cho tôi trong việc lựa chọn đề tài, đưa ra những nhận xét quý giá và trực tiếp hướng dẫn nhóm tôi trong quá trình làm thực tập cơ sở chuyên ngành. Xin cảm ơn tất cả mọi người đã tạo những điều kiện tốt nhất để nhóm tôi hoàn thành thực tập cơ sở chuyên ngành. Hà Nội, tháng 10 năm 2018 Nhóm sinh viên Phạm Ngọc Vân Đỗ Thị Vân 7 LỜI MỞ ĐẦU Phát tán mã độc (Malware) đã thực sự trở thành một ngành “công nghiệp ” trong các hoạt động gián điệp và phá hoại hệ thống, phần mềm hiện nay. Theo thống kê từ các cơ quan, tổ chức, doanh nghiệp chuyên về An ninh, an toàn thông tin, hoạt động phát tán mã độc không chỉ tồn tại ở những nước phát triển mà ngay tại các nước đang phát triển như Việt Nam cũng trở thành mảnh đất màu mỡ cho các Hacker tấn công. Mã độc được phát tán tại hầu hết các cơ quan quan trọng từ các cơ quan Chính phủ, Quốc hội tới các cơ quan tài chính như ngân hàng, viện nghiên cứu, trường đại học,…. Các phần mềm chứa mã độc được tồn tại dưới rất nhiều hình thức và có khả năng lây lan vô cùng lớn. Không dừng lại ở đó, mã độc hiện tại đã lây lan đa nền tảng và hiện tại không chỉ giới hạn ở máy tính cá nhân mà còn lây lan sang các thiết bị thông minh như smartphone. Với tốc độ phát triển của nền kinh tế, hiện nay hầu hết mọi cá nhân đều sở hữu một thiết bị thông minh hay máy tính cá nhân, vì vậy môi trường hoạt động dành cho mã độc ngày càng rộng lớn và thiệt hại chúng gây ra cho chúng ta là vô cùng lớn. Theo thống kê của Trung tâm ứng cứu khẩn cấp máy tính Việt Nam (VNCERT) sự cố tấn công về mã độc đang có chiều hướng gia tăng với thủ đoạn ngày càng tinh vi. Nhằm góp phần hiểu rõ về hoạt động hành vi của mã độc cũng như tác hại của việc phát tán mã độc trên hệ thống, các thiết bị thông minh,… Báo cáo đã tìm hiểu và nghiên cứu về “Phát hiện mã độc dựa trên phân tích động sử dụng mã nguồn mở Cuckoo Sandbox”. Mục tiêu của Báo cáo gồm các nội dung chính: Chương 1. Tổng quan về mã độc: chương này giới thiệu những vấn đề cơ bản nhất về mã độc và vai trò của việc phân tích mã độc. Chương 2. Cơ chế hoạt động của mã độc: chương này mô tả khái quát về cấu trúc file PE của Windows; các hình thức tấn công, hành vi của mã độc và xu hướng phát triển của mã độc. Chương 3. Phương pháp phân tích động trong phát hiện mã độc trên môi trường Sandbox: chương này mô tả các bước trong quá trình phân tích mã độc và tìm hiểu về Sandbox. 8 Chương 4. Thực nghiệm: Giới thiệu hệ thống phân tích mã độc tự động Cuckoo Sandbox. Áp dụng lý thuyết đưa ra trong Chương 3 để phân tích mã độc. Phần Kết luận: trình bày tổng hợp các kết quả báo cáo. Bài báo cáo đã đạt được một số kết quả khả quan trong việc nghiên cứu kỹ thuât phân tích mã độc dựa trên phân tích động, đưa ra được quy trình phân tích. Tuy nhiên, báo cáo không thể tránh khỏi những thiếu sót, vì vậy nhóm rất mong nhận được những ý kiến đóng góp, nhận xét của thầy cô giáo để kết quả bài báo cáo được hoàn thiện hơn. 9 CHƯƠNG 1: TỔNG QUAN VỀ MÃ ĐỘC 1.1. Tổng quan về mã độc 1.1.1. Khái niệm về mã độc Theo quan điểm của Viện tiêu chuẩn – công nghệ quốc gia Hoa Kỳ (NISTNational Institute of Standard and Technology) về định nghĩa và phân loại trong lĩnh vực “Virus máy tính”, mã độc (Malware) hay còn gọi là malicious code đề cập đến một chương trình được chèn vào hệ thống một cách bí mật, với mục đích làm tổn hại, làm gián đoạn tính bí mật, tính toàn vẹn hoặc tính khả dụng của dữ liệu, ứng dụng hoặc hệ điều hành (OS) của nạn nhân [2]. Malware là thuật ngữ đại diện cho tất cả các phần mềm có mục đích là gây độc hại tự nhiên. Có nhiều loại Malware khác nhau. Một số loại phổ biến là virus, worms, trojans, backdoors, rootkits, bots và spyware. 1.1.2. Tình hình mã độc tại Việt Nam và trên thế giới Kể từ khi mã độc đầu tiên xuất hiện vào năm 1984 đến nay, theo viện nghiên cứu độc lập về an toàn thông tin AV-TEST (www.av-test.org), đã có khoảng hơn 150 triệu mã độc được phát tán. Đặc biệt, trong vòng 5 năm gần đây, số lượng mã độc phát triển nhanh chóng trên toàn thế giới đã đặt ra nhiều vấn đề về an ninh thông tin cho toàn bộ những người sử dụng Internet trên toàn cầu. 10 Hình 1.1. Số lượng mã độc trên toàn thế giới trong vòng 5 năm gần đây (Nguồn: AV-TEST) Chủng loại mã độc cũng đa dạng và phong phú hơn về cả hành vi và mục đích phát tán. Các lĩnh vực mà mã độc nhằm đến bao gồm kinh tế, chính trị, tôn giáo và nhiều lĩnh vực quan trọng khác. Trong năm 2017, thế giới bị rúng động bởi sự hoành hành của mã độc tống tiền WannaCry gây lây nhiễm trên 250.000 máy tính ở 150 quốc gia trên thế giới. Hình 1.2: Các vùng bị ảnh hưởng bởi mã độc WannaCry (Nguồn: VnExpress) Tại Việt Nam, xu hướng tấn công, phát tán phần mềm có mã độc vào các cơ quan, doanh nghiệp là hình thái mới của giới tội phạm mạng mang tính chất quốc gia 11 và đã xuất hiện tại Việt Nam. Bên cạnh các loại mã độc phổ biến thì cũng xuất hiện các dạng mã độc mới, như mã độc đính kèm trong tập tin văn bản. Hầu hết người nhận được email đã mở tập tin văn bản đính kèm và bị nhiễm mã độc khai thác lỗ hổng của phần mềm Microsoft Office (bao gồm cả Word, Excel và PowerPoint). Khi xâm nhập vào máy tính, mã độc này âm thầm kiểm soát toàn bộ máy tính nạn nhân, mở cổng hậu (Backdoor), cho phép tin tặc điều khiển máy tính nạn nhân từ xa. Chúng cũng nhận lệnh tin tặc tải các mã độc khác về máy tính để ghi lại thao tác bàn phím, chụp màn hình, lấy cắp tài liệu. Trong vòng 8 tháng đầu năm 2018, Việt Nam nằm trong số 20 quốc gia bị lây nhiễm mã độc nhiều nhất thế giới, đồng thời dẫn đầu Đông Nam Á với hơn 86 triệu email có nội dung đe dọa tấn công được phát hiện, theo hãng bảo mật Trend Micro. Hình 1.3. Số liệu thống kê virus phát tán qua email tính đến quý 2 năm 2018 trên trang statista.com Trước sự gia tăng mạnh mẽ về số lượng và mục đích tấn công của mã độc cũng có nhiều biện pháp nhằm ngăn chặn và phòng ngừa mã độc như sử dụng các chương trình diệt Virus, sử dụng các hệ thống tường lửa, IDS, IPS để bảo vệ hệ thống,.. Tuy nhiên các biện pháp này chỉ phần nào ngăn chặn được các loại Virus đã được biết đến rộng rãi, còn các biến thể mã độc hoặc các mã độc mới được sinh ra ngày càng nhiều thì hầu như vô hình trước các biện pháp bảo vệ trên. 12 Số liệu cho thấy, trong 5 tháng đầu năm 2018, có tới 735.000 máy tính tại Việt Nam bị nhiễm virus đào tiền ảo. Các virus này không xóa dữ liệu nhưng chiếm quyền điều khiển và biến máy tính thành máy đào. Với phần mềm gián điệp, khi máy tính bị lây nhiễm, nó sẽ ăn cắp dữ liệu cá nhân, cookie, tài khoản email và tài khoản ngân hàng. Các dữ liệu cá nhân bị đánh cắp sẽ được sử dụng với mục đích xấu hoặc bán cho các công ty quảng cáo. Không kém phần nguy hiểm là mã độc tấn công có chủ đích APT (thuật ngữ dùng để mô tổ một chiến dịch tấn công, thường do một nhóm các kẻ tấn công, sử dụng những kỹ thuật tấn công nâng cao để có thể hiện diện và tồn tại lâu dài trên mạng Internet nhằm khai thác dữ liệu có độ nhạy cảm cao). Đây là hình thức tấn công bằng email chứa file văn bản. Kẻ xấu giả làm người quen và gửi email kèm file văn bản. Khi người dùng mở file đính kèm, máy tính sẽ vô tình bị nhiễm mã độc. 1.2. Phân loại mã độc Có nhiều cách phân loại mã độc khác nhau, dựa vào các tiêu chí khác nhau. Tuy nhiên, định nghĩa đưa ra bởi NIST là cách định nghĩa phổ biến nhất trong ngành khoa học máy tính ngày nay [1]. 1.2.1. Virus Là một phần mềm độc hại có khả năng tự nhân bản và lây nhiễm chính nó vào các file, phần mềm hoặc máy tính. Virus thường được kích hoạt thông qua sự tương tác của người dùng, chẳng hạn như mở tệp hoặc chạy chương trình. Virus có thể được chia thành 2 loại sau: - Compiled Virus: Là virus mà mã thực thi của nó đã được dịch hoàn chỉnh bởi một trình biên dịch để nó có thể thực thi trực tiếp từ hệ điều hành. Các loại virus được biên dịch bao gồm file infector virus, chúng tự gắn vào các chương trình thực thi; boot sector virus, lây nhiễm vào bản ghi khởi động chính của ổ đĩa cứng hoặc các chương trình khởi động của thiết bị lưu trữ di động và multipartite virus, kết hợp các đặc tính của file infector và boot sector virus. - Interpreted Virus: Là virus được thực thi bởi một ứng dụng. Macro virus, scripting virus là các virus nằm trong dạng này. Macro virus rất phổ biến trong các ứng dụng Microsoft Office khi tận dụng khả năng kiểm soát việc 13 tạo và mở file để thực thi và lây nhiễm. Chúng ta phân biệt giữa macro virus và scripting virus như sau: macro virus là tập lệnh thực thi bởi một ứng dụng cụ thể, còn scripting virus là tập lệnh chạy bằng một service của hệ điều hành. 1.2.2. Worm Là một phần mềm có khả năng tự nhân bản và tự lây nhiễm trong hệ thống tuy nhiên nó có khả năng “tự đóng gói”, thường tự thực thi mà không cần sự can thiệp của người dùng. Worm có thể chia làm 2 loại sau: - Network Service Worm: Lan truyền bằng cách lợi dụng các lỗ hổng bảo mật trong một dịch vụ mạng để tự lan truyền và lây nhiễm sang các máy chủ khác. - Mass Mailing Worm: Là một dạng tấn công qua dịch vụ mail, tuy nhiên nó tự đóng gói để tấn công và lây nhiễm chứ không bám vào vật chủ là email. Khi sâu này lây nhiễm vào hệ thống, nó thường cố gắng tìm kiếm sổ địa chỉ và tự gửi bản thân nó đến các địa chỉ thu nhặt được. Việc gửi đồng thời cho toàn bộ các địa chỉ thường gây quá tải cho mạng hoặc cho máy chủ mail. 1.2.3. Trojan horse Trojan là một chương trình độc lập, không tự nhân bản. Nó lây vào hệ thống với biểu hiện ban đầu là lành tính nhưng thực chất bên trong có ẩn chứa các đoạn mã với mục đích gây hại. Thuật ngữ này bắt nguồn từ câu chuyện Hy Lạp cổ đại “ Ngựa thành Troy”. Trojan có thể lựa chọn một trong 3 phương thức để gây hại như sau: - Tiếp tục thực thi các chức năng của phần mềm mà nó bám vào, bên cạnh đó thực thi các hoạt động gây hại một cách riêng biệt. - Tiếp tục thực thi các chức năng của phần mềm mà nó bám vào, nhưng sửa đổi một số chức năng để gây tổn hoặc che giấu các hành động phá hoại khác. - Thực thi luôn một phần mềm gây hại bằng cách núp dưới danh một phần mềm không có hại. 1.2.4. Rootkits Rootkit là thuật ngữ được dùng để chỉ tập hợp các chương trình hay mã lệnh có khả năng kiểm soát hệ thống nhưng không bị phát hiện theo cách bình thường. Nói cách khác rootkit là những mã lệnh hay chương trình có khả năng kiểm soát ở cấp độ 14 quản trị phổ thông một hệ thống máy tính mà người dùng không bao giờ hoặc khó có thể phát hiện ra được. Tuy nhiên rootkit không thể tự lan truyền hay nhân bản được. 1.2.5. Spyware Spyware là phần mềm gián điệp chuyên thu thập các thông tin từ các máy chủ (thông thường vì mục đích thương mại) qua mạng Internet mà không có sự nhận biết và cho phép của chủ máy. Một cách điển hình, spyware được cài đặt một cách bí mật như là một bộ phận kèm theo của các phần mềm miễn phí (freeware) và phần mềm chia sẻ (shareware) mà người ta có thể tải về từ Internet. Một khi đã cài đặt, spyware điều phối các hoạt động của máy chủ trên Internet và lặng lẽ chuyển các dữ liệu thông tin đến một máy khác (thường là của những hãng chuyên bán quảng cáo hoặc của các tin tặc). Phần mềm gián điệp cũng thu thập tin tức về địa chỉ thư điện tử và ngay cả mật khẩu cũng như là số thẻ tín dụng. 15 1.2.6. Adware Adware là phần mềm quảng cáo thường hay có ở trong các chương trình cài đặt tải từ trên mạng. Một số phần mềm vô hại, nhưng một số có khả năng hiển thị thông tin lên màn hình, cưỡng chế người dùng. 1.2.7. Fileless Malware Fileless malware là một phần mềm độc hại không sao chép bất cứ tệp tin và thư mục nào vào ổ đĩa cứng khi thực thi, Thay vào đó, dữ liệu độc hại được đưa trực tiếp vào bộ nhớ của tiến trình đang chạy và mã độc thực thi ngay trên RAM. Việc điều tra số và lần vết mã độc trở nên khó khăn do bộ nhớ sẽ được giải phóng khi máy tính khởi động lại. 1.2.8. Ransomware Là mã độc tống tiền bao gồm nhiều lớp phần mềm với chức năng hạn chế truy cập đến hệ thống máy tính mà đã lây nhiễm, và đòi hỏi một khoản tiền cho người đã tạo ra mã độc đó nhằm mục đích xoá bỏ việc hạn chế truy cập mà nó đã tạo ra trước đó. Một vài dạng của ramsomware mã hoá tệp tin, dữ liệu trên ổ đĩa cứng (nhằm tống tiền), trong khi một vài dạng khác thì đơn giản hơn, chúng khoá hệ thống lại và hiển thị một thông báo để thuyết phục người bị hại trả tiền. 16 1.3. Vai trò của việc phân tích mã độc Với sự phát triển mạnh mẽ của Internet, vấn đề an ninh, bảo đảm an toàn cho các hệ thống thông tin ngày càng trở nên cấp thiết khi các hệ thống thông tin được kết nối với nhau và kết nối với mạng Internet, chúng ta phải đối diện với nhiều nguy cơ bị tấn công lấy cắp thông tin hoặc phá hoại hệ thống. Trong số các phương thức tấn công phá hoại hệ thống thông tin và mạng, các phần mềm độc hại là một trong các dạng gây nhiều thiệt hại nhất do khả năng lan truyền nhanh chóng. Câu hỏi đặt ra là liệu có cần phân tích mã độc không khi càng ngày những phần mềm đảm bảo an ninh máy tính càng phát triển. Câu trả lời luôn là có, vì các phần mềm độc hại được phát triển ngày càng tinh vi và rất khó phát hiện. Phần mềm đảm bảo an ninh mạnh nhất và được cập nhật cũng không thể loại bỏ được hết mã độc. Kết quả của quá trình phân tích mã độc sẽ phát hiện được những phương thức lây lan, phá hoại, đánh cắp dữ liệu mới; đồng thời hạn chế sự lây lan, giảm thiểu thiệt hại do mã độc gây ra bằng cách đưa các cảnh báo tới cộng đồng; là nguồn thông tin quan trọng để cập nhật mẫu cũng như chức năng cho phần mềm đảm bảo an ninh máy tính. 1.4. Kết luận chương 1 Trong chương này báo cáo đã nghiên cứu các kiến thức cơ bản về mã độc, tổng quan về tình hình mã độc hiện nay tại Việt Nam và trên thế giới. Nội dung báo cáo đã trình bày được các loại mã độc hiện nay và vai trò của việc phân tích mã độc. Trong chương tiếp theo, báo cáo sẽ nghiên cứu đến cơ chế hoạt động, hành vi của mã độc và xu hướng phát triển của mã độc hiện nay. 17 CHƯƠNG 2: CƠ CHẾ HOẠT ĐỘNG CỦA MÃ ĐỘC 2.1. Tìm hiểu về cấu trúc PE file Một bước rất quan trọng khi tìm hiểu về mã độc là tìm hiểu về file PE vì gần như mọi mã thực thi được nạp bởi Windows đều có định dạng PE. Đây là dạng phổ biến bậc nhất của mã độc và cũng là định dạng hay bị lây nhiễm mã độc nhất. Định dạng file PE được dùng cho những file thực thi, mã đối tượng và các DLL của Windows. Định dạng này là một cấu trúc dữ liệu bao gồm thông tin cần thiết để Windows OS Loader quản lý được mã thực thi trong nó. Để có thể thực thi trên máy tính, nội dung file PE được chia thành các thành phần và có mối liên hệ mật thiết với nhau. Nắm rõ cấu trúc PE sẽ giúp chúng ta hiểu được cơ chế thực thi của một phần mềm, từ việc tổ chức tới việc nạp lên bộ nhớ, các tài nguyên sử dụng… Hơn nữa, khi chúng ta muốn sửa đổi một file, ví dụ như thêm vào một số đoạn mã, chỉnh sửa một số thành phần nhưng vẫn muốn phần mềm thực thi bình thường, ví dụ trong trường hợp cần chỉnh sửa các công cụ phân tích để tránh bị phát hiện bởi mã độc thì chúng ta cần phải nắm rõ cấu trúc PE file cũng như mối liên hệ giữa các thành phần trong file để có thể nhanh chóng thay đổi file và thoả mãn yêu cầu đề ra mà không ảnh hưởng tới chức năng cũng như hoạt động của file. Mặt khác, đối với các mã sử dụng kỹ thuật tiêm mã vào các tiền trình đang có để che giấu sự tồn tại trên hệ thống, nếu chúng ta không hiểu rõ cấu trúc của file PE sẽ rất khó tìm ra tiến trình bị tiêm mã độc. 18 Hình 2.1. Cấu trúc cơ bản của PE Cấu trúc PE có thể gồm nhiều section, trong đó tối thiểu cần 2 section: data và code. Một số section thông dụng hay được gặp ở các phần mềm [3]: 1. Executable Code Section, có tên là .text (Microsoft). 2. Data Sections, có tên là .data, .rdata, .bss (Microsoft) hay DATA (Borland) 3. Resources Section, có tên là .rsrc 4. Export Data Section, có tên là .edata 5. Import Data Section. có tên là .idata 6. Debug Information Section, có tên là .debug Cấu trúc các section trên bộ nhớ và trên ổ đĩa là như nhau, tuy nhiên khi được nạp lên bộ nhớ, các Windows loader sẽ quyết định thứ tự và vị trí nạp các phần, do đó vị trí các phần trên ổ đĩa và trên bộ nhớ sẽ có sự khác biệt. 19 2.2. Các hình thức tấn công của mã độc [3][5] Hiện nay có rất nhiều hình thức phát tán mã độc hại, có thể thông qua email, thông qua các phần mềm và gắn mã độc vào bên trong, thông qua các đường link trang web, thông qua việc chia sẻ file USB… 2.2.1. Qua thiết bị lưu trữ Cách phát tán phổ biến nhất của mã độc trước đây là qua các thiết bị lưu trữ di động, dù là thời sử dụng đĩa mềm ngày xưa hay thẻ nhớ USB ngày nay. Hiện tại, thẻ nhớ trong các thiết bị di động thông minh, hay thiết bị ghi âm, ghi hình kỹ thuật số cũng là một vật trung gian hiệu quả cho việc lan truyền mã độc. Các thiết bị di động thông minh thì hay phải nạp pin và phương thức nạp pin qua cổng USB lại rất tiện dụng, điều này tiềm ẩn nguy cơ rất lớn cho việc lây truyền mã độc. Một số dạng phát tán điển hình qua USB: - Lợi dụng chức năng Autorun: Khi thiết bị lưu trữ có sử dụng giao tiếp USB được cắm vào máy tính đã nhiễm mã độc, mã độc sẽ phát hiện ra thiết bị có thể lây nhiễm được, sau đó tự sao chép bản thân mình vào một vị trí bí mật trên thiết bị đó. Tiếp theo, nó ghi một file autorun.inf có nội dung cơ bản như sau: [Autorun] OPEN = Đường dẫn virus trong đĩa USB Từ Windows Vista trở về trước, Windows sẽ mặc nhiên kiểm tra tập tin autorun.inf trong các thiết bị USB và thực thi các câu lệnh có trong đó. - Đánh lừa người dùng: Trong nhiều trường hợp, các lây nhiễm sử dụng tập tin Autorun không hiệu quả, ví dụ như từ hệ điều hành Windows 7 trở về sau, chức năng này không còn hoạt động nữa. Mã độc chuyển sang sử dụng cách đánh lừa người dùng để thực thi file mã độc đã lây nhiễm trên thẻ nhớ USB. Có thể kể đến như:  Ẩn thư mục trên USB và thay vào đó là các tập tin mã độc có hình thư mục với tên tương tự các thư mục tồn tại ban đầu. Với cách này, mã độc dễ dàng lừa được người dùng khởi chạy nó nếu trên hệ thống đang tắt chức năng hiển thị file ẩn và phần mở rộng file. 20
- Xem thêm -

Tài liệu liên quan