Nghiên cứu một số kỹ thuật sinh mã độc tự động và vượt qua phần mềm

52 903 8
Nghiên cứu một số kỹ thuật sinh mã độc tự động và vượt qua phần mềm

Đ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

Nghiên cứu một số kỹ thuật sinh mã độc tự động và vượt qua phần mềm

KHOA CÔNG NGHỆ THÔNG TIN – HỌC VIỆN KỸ THUẬT QUÂN SỰ BÁO CÁO NGHIÊN CỨU KHOA HỌC Nghiên cứu số kỹ thuật sinh mã độc tự động Vượt qua phần mềm phòng chống mã độc Cán hướng dẫn: Thượng tá, PGS Nguyễn Hiếu Minh Trung úy, KS Nguyễn Văn Cường Nhóm NộI dung I Tổng quan Mã độc II Tổng quan Phần mềm phòng chống mã độc III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc IV Kết luận I Tổng quan Mã độc Khái niệm – phân loại Cách thức lây nhiễm mã độc Các loại mã độc dự đoán xu hướng mã độc tương lai Các công cụ - kỹ thuật sinh mã độc tự động II Phần mềm phòng chống mã độc – Kỹ thuật phát mã độc Giới thiệu Nguyên lý phát mã độc Các kỹ thuật phát mã độc III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc Cấu trúc tệp tin thực thi Các kỹ thuật vượt qua phần mềm phòng chống mã độc Demo Các kỹ thuật vượt qua phần mềm phòng chống mã độc Kỹ thuật mã hóa Kỹ thuật chèn mã rác Kỹ thuật rẽ nhánh Sử dụng Stub để giải mã thực thi nhớ Kỹ thuật PRIDE (Pseudo-Random Index Decryption) Các kỹ thuật chống phân tích mã độc Kỹ thuật che giấu API (Application Programming Interface) Kỹ thuật sử dụng chữ ký số Khai thác lỗ hổng Hệ điều hành I Tổng quan Mã độc Khái niệm – phân loại Cách thức lây nhiễm mã độc Các loại mã độc dự đoán xu hướng mã độc tương lai I Tổng quan Mã độc Khái niệm, phân loại mục đích mã độc a) Khái niệm Mã độc thuật ngữ dùng để ám phần mềm cài đặt vào máy tính, thực nhiệm vụ không mong muốn người dùng, thường nhằm phục vụ lợi ích cho bên thứ ba b) Phân loại Virus, Worm, Trojan, Rootkit, Keylogger, Addware, Spyware, Browser Hijacker, Mobile Threats,… c) Mục đích • Trò đùa khẳng định thân • Phá hủy liệu, hệ thống máy tính • Học tập nghiên cứu • Theo dõi đánh cắp thông tin I Tổng quan Mã độc Cách thức lây nhiễm • Lây nhiễm theo cách cổ điển • Lây nhiễm qua thư điện tử • Lây nhiễm qua truy cập trang web • Lây nhiễm qua phần mềm cài đặt • Lây nhiễm qua khai thác lỗi bảo mật • Qua nhiều đường khác, Hình 1: Minh họa cách thức lây nhiễm mã độc qua thư điện tử I Tổng quan Mã độc Hình 2: Sự xuất loại mã độc theo năm – Thống kê AV-TEST Hình 3: Việt Nam đứng thứ lượng lây nhiễm mã độc công giao dịch ngân hàng trực tuyến (2013) - Theo TrendMicro III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 2.5 Kỹ thuật PRIDE (Pseudo-Random Index Decryption) pride_start = (size_of_data - 4) & random (); pride_step = (size_of_data - 8) & random (); pride_key = get_random_key (); size_of_data kích thước liệu mã hóa Đầu tiên thuật toán khởi tạo biến số MOV CR, pride_start MOV IR, val ; val = (size_of_data - 4) & random() MOV BR, val’ ; val’ = random() Sau khởi tạo ghi sử dụng trình giải mã: PUSH IR XOR IR, CR MOV BR, [IR + source] XOR BR, key ADD MOV POP ADD AND ADD AND CMP JNZ IR, dest [IR], BR IR CR, val CR, val’ ; or ADD BR, +/- key ; or nothing (no decryption) ; write the decrypted dword ; CR += [4;7] ; val’ = ((random() & ; ˜size_of_data) | (size_of_data-4)) & -4 ; (-> CR := (CR % size_of_code) & FFFFFFFCh) IR, pride_step IR, val’’ ; val’’ = ((random() & ; ˜size_of_data) | (size_of_data-1)) & -1 ; (-> IR := IR % size_of_code) CR, pride_start ; jump at a random branch III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 2.6 Các kỹ thuật chống phân tích mã độc Anti-Debugger: • Sử dụng hàm API  Hàm IsDebuggerPresent  Hàm CheckRemoteDebuggerPresent  Hàm NtQueryInformationProcess • Kiểm tra cấu trúc  Hàm NTGlobalFlag Hình 24: Chạy trực tiếp chương trình • Timing Check • Ngắt  Int3  Int2D Hình 25: Chạy chương trình thông qua Visual Studio 2012 34 III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 2.6 Các kỹ thuật chống phân tích mã độc Anti-Virtual Machine: Các phần mềm ảo hóa phổ biến: • Virtual-Machine  VMware Workstation  Oracle VirtualBox  Microsoft Virtual PC • Parallels Desktop • Sandboxie Hình 26: Một số giải pháp ảo hóa, Sandbox 35 III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 2.6 Các kỹ thuật chống phân tích mã độc Anti-Virtual Machine: Các kỹ thuật Anti-Virtual Machine • Timing Base • Artifacts Based Hình 27: Phát máy ảo dựa vào Timing Base Hình 28: Phát máy ảo dựa vào Artifacts Base 36 III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 2.7 Kỹ thuật che giấu API (Application Programming Interface) Mục đích kỹ thuật che giấu API gọi trình thực thi API liệt kê Import Directory Khiến AV không nghi ngờ chức thực hiện, chống Debug, chống dịch ngược phần mềm string DLLName= "abcxyz"; string APIName = “FileCreat"; LoadLibraryA(Decrypt(DLLName))-> GetProcAddress(Decrypt(APIName)) -> Call it void HidenAPI() { char* szMessage = "Hiden API"; char* szCaption = "Hello!"; HMODULE hModule = LoadLibraryA("user32.dll"); FARPROCfFuncProc = GetProcAddress(hModule, “MessageBoxA"); ((int(WINAPI*)(HWND, LPCSTR, LPCSTR, UINT))fFuncProc)(0, szMessage, szCaption, ); } int main() { HidenAPI(); } III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 2.7 Kỹ thuật che giấu API (Application Programming Interface) Hình 29: Thực thi hàm MessageBox() mà không gọi API III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 2.8 Kỹ thuật sử dụng chữ ký số Hình 30: Chữ ký thật Hình 31: Chữ ký giả III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 2.9 Khai thác lỗ hổng Hệ điều hành Lỗ hổng Hệ điều hành: Là lỗi lập trình từ chương trình hệ thống bên Hệ điều hành Những mã độc sử dụng lỗ hổng hệ điều hành thường khó phát so với mã độc thông thường, loại mã độc có thời gian hoạt động ngầm lâu trước chúng bị phát chuyên gia phân tích mã độc Những lỗ hổng Hệ điều hành không xuất HĐH Windows mà Linux, Android, MAC OS – Trước Apple tuyên bố có mã độc Hình 32: Sự lây lan Stuxnet III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 2.9 Khai thác lỗ hổng Hệ điều hành Các lỗ hổng Hệ điều hành điển hình năm 2014 - CVE-2014-414: Windows OLE Package Manager SandWorm Exploit - CVE-2014-4113: Windows TrackPopupMenu Win32k NULL Pointer Dereference - CVE-2014:6324: Windows Kerberos - Elevation of Privilege (MS14-068) Một số lỗ hổng Hệ điều hành công bố năm 2015 - CVE-2015-0004: Windows < 8.1 (32/64 bit) - Privilege Escalation (User Profile Service) (MS15-003) - Windows 8.1 - Local WebDAV NTLM Reflection Elevation of Privilege - McAfee Data Loss Prevention Endpoint - Arbitrary Write Privilege Escalation III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 2.9 Khai thác lỗ hổng Hệ điều hành Hình 33: Khai thác CVE-2014-4113 để leo thang đặc quyền NT AUTHORITY\SYSTEM III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc Demo DEMO Kết luận Các phần mềm phòng chống mã độc Không an toàn 100% Chỉ coi “Thuốc an thần” Tuy nhiên không mà loại bỏ hoàn toàn phần mềm phòng chống mã độc khỏi hệ thống Hệ thống cần phải thường xuyên bảo trì, theo dõi để giảm thiểu tối đa tác hại mã độc Cần xây dựng sách an ninh cho hệ thống, đảm bảo việc giảm thiếu tối đa rủi do mã độc gây ra, biện pháp phòng chống, khắc phục hậu mã độc Các mã độc muốn vượt qua phần mềm phòng chống mã độc kỹ thuật lập trình chính, chắn bảo vệ vỏ bọc bên ngoài, bị phát sớm Còn nhiều kỹ thuật vượt qua phần mềm phòng chống mã độc, giới hạn thời gian nghiên cứu, điều kiện thực tế tài liệu nên nhóm nghiên cứu chưa trình bày nội dung nghiên cứu Kết luận Q&A Tài liệu tham khảo [1] Aditya P Mathur and Nwokedi Idika, "A Survey of Malware Detection Techniques" [2] Joshua Tully, "Introduction into Windows Anti-Debugging", 9/2008 [3] Joshua Tully, "An Anti-Reverse Engineering Guide", 11/2008 [4] Mark Vincent Yason, "The Art of Unpacking" [5] Michael Sikorski and Andrew Honig, "Praise for Practical Malware Analysis" [6] Moritz Jodeit, "Exploiting CVE-2014-4113 on Windows 8.1" [7] N Rin, "VMDE - Virtual Machines Detection Enhanced" [8] Peter Szor, "The Art of Computer Virus Research and Defense" [9] Philippe Beaucamps, "Advanced Metamorphic Techniques in Computer Viruses“ [10] Richard Ford, "The future of virus detection" [11] Ronnie Johndas, "Analysis of CVE-2014-4113" [12] http://www.ducasec.com/an-ninh-mang-the-gioi-nhin-lai-2014-va-du-doan-2015/ [13] http://itsecuritylab.eu/index.php/2010/09/03/writing-crypter-bypassing-antivirus-how-to-for-beginners/ Cám ơn Thầy Cô Bạn ý lắng nghe! [...]... mềm phòng chống mã độc 2 Các kỹ thuật vượt qua phần mềm phòng chống mã độc 2.1 .Kỹ thuật mã hóa: là một cách thức phù hợp và hiệu quả, vừa làm thay đổi dấu hiệu đặc trưng của mã độc, vừa gây khó trong việc phân tích hoạt động của mã độc Các kỹ thuật mã hóa: • Mã hóa cơ bản • Mã hóa dựa trên phép hoán vị • Mã hóa dòng • Mã hóa phụ thuộc vào mã lệnh • Mã hóa với khóa ngẫu nhiên III Các kỹ thuật vượt qua. .. Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 1 Kỹ thuật mã hóa 2 Kỹ thuật chèn mã rác 3 Kỹ thuật rẽ nhánh 4 Sử dụng Stub để giải mã và thực thi trên bộ nhớ 5 Kỹ thuật PRIDE (Pseudo-Random Index Decryption) 6 Các kỹ thuật chống phân tích mã độc 7 Kỹ thuật che giấu API (Application Programming Interface) 8 Kỹ thuật sử dụng chữ ký số 9 Khai thác lỗ hổng trên Hệ điều hành III Các kỹ thuật vượt qua Phần. .. liệu mẫu khó khăn, phức tạp Mã độc có thể dễ dàng Hình 12: Tệp mã độc được quét trên trang virustotal.com vượt qua nếu nhận dạng bằng mã hash II Tổng quan về Phần mềm phòng chống mã độc 3 Các kỹ thuật phát hiện mã độc Fuzzy hashing: vẫn là nhận dạng mã độc qua mã hash nhưng đã được bổ sung thêm các phân tích và tính toán để từ một mã hash của mã độc, có thể nhận ra các mã hash “họ hàng”, nâng cao... thống) phân tích phải có tính chuyên môn cao Hình 17: Một khối ngăn chặn hành vi lừa đảo trên DOS • Có thể xảy ra cảnh báo giả (cảnh báo sai) III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 1 Cấu trúc tệp tin thực thi 2 Các kỹ thuật vượt qua phần mềm phòng chống mã độc 3 Demo chương trình III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 1 Cấu trúc tệp tin thực thi PE File Format (Portable... chương trình khi có và không rẽ nhánh III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc 2.4 Sử dụng Stub để giải mã và thực thi trên bộ nhớ Tệp tin nhị phân mới được tạo ra có hai phần, phần thứ nhất gọi là Stub, phần này sẽ chịu trách nhiệm cho việc giải mã và thực thi mã độc trên bộ nhớ Phần thứ hai là phần Payload, phần này chính là mã độc đã được mã hóa, có rất nhiều giải thuật có thể lựa chọn... Tạo ra một mã độc có đầy đủ các chức năng Bước 2: Xây dựng một công cụ Patcher để sửa đổi một số byte code trong tệp tin nhị phân của mã độc tương ứng với mỗi lựa chọn chức năng hay cấu hình cài đặt của mã độc được sinh ra Bước 3: Ghi tệp tin mã độc được sinh ra bằng Patcher Hình 7: Mô tả quá trình Patch II Phần mềm phòng chống mã độc – Kỹ thuật phát hiện mã độc 1 Giới thiệu  Flushot Plus và Anti4us... vượt qua Phần mềm phòng chống mã độc 2 Các kỹ thuật vượt qua phần mềm phòng chống mã độc 2.2 Kỹ thuật chèn mã rác: • Mã lệnh rác được thêm vào nhưng không ảnh hưởng đến tính logic của chương trình • Một số lệnh như: XCHG, NOP, “MOV ax, ax”, “SUB ax 0” … 2.3 .Kỹ thuật rẽ nhánh: • Chương trình được tạo ra với nhiều điểm kiểm tra ngẫu nhiên bằng các lệnh nhảy có điều kiện (JNE, JNZ…) Hình 21: Hoạt động chương... đảo hoạt động • Các cuộc tấn công mạng mang màu sắc chính trị gia tăng giữa hacker của các quốc gia • Doanh nghiệp đối đầu với các cuộc tấn công đánh cắp dữ liệu ngày càng tinh vi (APT) I Tổng quan về Mã độc 4 Các công cụ - kỹ thuật sinh mã độc tự động Hình 4: JPS (Virus Maker 3.0) Hình 5: TeraBIT Virus Maker 3.1 Hình 6: Sonic Bat I Tổng quan về Mã độc 4 Các công cụ - kỹ thuật sinh mã độc tự động Bước... quan về Phần mềm phòng chống mã độc 2 Nguyên lý phát hiện mã độc Ưu thế: • Là chìa khóa để có thể phát hiện ra các khai thác zero-day hay zero-attack Hạn chế: • Sai số giữa trạng thái bình thường và bất thường • Sự phức tạp, rắc rối khi xác định những trạng thái được phép học Hình 11: Phân loại hành vi dựa vào đặc điểm bất thường II Phần mềm phòng chống mã độc – Kỹ thuật phát hiện mã độc 3 Các kỹ thuật. ..I Tổng quan về Mã độc 3 Các loại mã độc mới và dự đoán xu hướng mã độc trong tương lai • Mã độc sẽ tiếp nhằm vào hạ tầng trọng yếu của các quốc gia để đánh cắp và phá huỷ dữ liệu • Các mã độc trên di động tăng nhanh và xuất hiện nhiều biến thể phần mềm mã hoá tống tiền (ransomware) trên di động • Quyền riêng tư của người sử dụng tiếp tục là mục tiêu ... mã độc III Các kỹ thuật vượt qua Phần mềm phòng chống mã độc Cấu trúc tệp tin thực thi Các kỹ thuật vượt qua phần mềm phòng chống mã độc Demo 2 Các kỹ thuật vượt qua phần mềm phòng chống mã độc. .. mã độc dự đoán xu hướng mã độc tương lai Các công cụ - kỹ thuật sinh mã độc tự động II Phần mềm phòng chống mã độc – Kỹ thuật phát mã độc Giới thiệu Nguyên lý phát mã độc Các kỹ thuật phát mã. .. Các kỹ thuật vượt qua Phần mềm phòng chống mã độc Cấu trúc tệp tin thực thi Các kỹ thuật vượt qua phần mềm phòng chống mã độc Demo chương trình III Các kỹ thuật vượt qua Phần mềm phòng chống mã

Ngày đăng: 25/04/2016, 00:38

Từ khóa liên quan

Mục lục

  • Slide 1

  • NộI dung

  • I. Tổng quan về Mã độc

  • II. Phần mềm phòng chống mã độc – Kỹ thuật phát hiện mã độc

  • III. Các kỹ thuật vượt qua Phần mềm phòng chống mã độc

  • 2. Các kỹ thuật vượt qua phần mềm phòng chống mã độc

  • I. Tổng quan về Mã độc

  • I. Tổng quan về Mã độc

  • I. Tổng quan về Mã độc

  • I. Tổng quan về Mã độc

  • I. Tổng quan về Mã độc

  • I. Tổng quan về Mã độc

  • I. Tổng quan về Mã độc

  • II. Phần mềm phòng chống mã độc – Kỹ thuật phát hiện mã độc.

  • II. Tổng quan về Phần mềm phòng chống mã độc

  • II. Tổng quan về Phần mềm phòng chống mã độc

  • II. Tổng quan về Phần mềm phòng chống mã độc

  • II. Phần mềm phòng chống mã độc – Kỹ thuật phát hiện mã độc.

  • II. Tổng quan về Phần mềm phòng chống mã độc

  • II. Tổng quan về Phần mềm phòng chống mã độc

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

Tài liệu liên quan