5. Phương pháp nghiên cứu
2.2 Mộtsố công nghệ giám sát, phát hiện và bảo vệ
a. Tự bảo vệ - Self Defense
Virus ngày càng nguy hiểm, ngoài việc tự ẩn mình trước các Antivirus, nó cũng thực hiện tấn công trực tiếp các phần mềm diệt virus, khiến cho hệ thống mất khả năng bảo vệ. Một số hành vi tấn công anti-virus:
- Ngăn chặn khả năng cập nhập mẫu nhận diện mới của Antivirus.
- Xóa tiến trình hoạt động của Antivirus (process killer) khiến hệ thống không còn Antivirus nữa.
- Thay đổi mọi thông tin của phần mềm Antivirus như file hệ thống, file Database, registry, thư viện, hàm diệt.
- Tấn công Antivirus thông qua lỗ hổng phần mềm của chính Antivirus.
Vì vậy, Antivirus ngày nay đều trang bị cho mình công nghệ tự bảo vệ (Self Defense). Điều này đảm bảo, ngay cả khi những biến thể virus đã lây lan vào hệ thống, Antivirus vẫn có còn khả năng phát hiện và tiêu diệt khi được cập nhật mẫu nhận diện mới nhất.
b. Môi trường ảo hoá - Sandbox
Sandbox là một dạng phần mềmảo hóa, cho phép các phần mềm và process chạy trong môi trường ảo đã được cách ly của nó.Về mặt cơ bản, những phần mềm chạy bên trong sandbox bị hạn chế quyền truy cập vào các file và hệ thống và nó không thể tạo thay đổi lâu dài.Điều này có nghĩa là tất cả những gì xảy ra trong sandbox sẽ chỉ ở trong sandbox.
Chạy tự động hoặc thủ công một số phần mềm không an toàn trong sandbox trong trường hợp chúng có chứa virus, spyware hoặc các mẫu malware khác.
Chạy trình duyệt web trong sandbox để tránh những thiệt hại do lây nhiễm xuất hiện khi đang lướt web, một trong những nguồn gốc phổ biến nhất của malware. Chạy trình duyệt trong sandbox để ngăn chặn những mẫu malware đã có trên máy tính khỏi việc nắm bắt được thông tin đăng nhập quan trọng hoặc thông tin thanh toán khi mua sắm trực tuyến.
2.2.2 Công nghệ phát hiện mã độc a.Phòng vệ chủ động a.Phòng vệ chủ động
Đây là một khái niệm chung cho việc sử dụng các công nghệ thông minh (heuristic, hips, behaviour…) để phát hiện các chủng virus mới.
Ngược lại với Proactive Detection là Reactive Reaction, đây là phương pháp nhận diện virus đã biết thông qua mẫu nhận diện.
- Công nghệ thông minh (Heuristic):
Công nghệ nhận dạng virus sử dụng trí tuệ nhân tạo.Công nghệ này giả lập hệ thống máy ảo và thực thi file (chương trình, script) trên hệ thống đó. Toàn bộ các hành vi thực hiện sẽ được xem xét một cách thông minh để quyết định một file thực thi có chứa Virus hay không. Bất cứ hành vi nào giống virus như xóa file, thay thế, ẩn các tiến trình file, lưu thông tin bất thường đều sẽ bị phát hiện, file đó sẽ bị đánh dấu nguy hiểm và cảnh báo đến người dùng và đội ngũ chuyên gia.
Một cách hoạt động khác của hệ thống Heuristic là giải mã (decompile) một file, phân tích mã nguồn (phân tích tĩnh). Dựa vào cách hành vi thực hiện trong mã nguồn, công nghệ này sẽ tự quyết định nó có hành vi bất thường và đánh giá khả năng nó là virus hay không.
Với cách làm trên, rõ ràng công nghệ này giúp cho việc phát hiện những virus chưa được biết đến. Tuy nhiên, với tính chất có tính ước lượng, công nghệ này có rủi ro cao trong việc nhận nhầm các file sạch là virus.
- Công nghệ phát hiện hành vi và giám sát truy cập (HIPS):
Hệ thống ngăn chặn xâm nhập (HIPS) là một dạng công nghệ thông minh, một lớp bảo vệ hệ thống của Antivirus. HIPS thường theo dõi mọi hành vi liên quan đến tiến trình, file, ứng dụng, registry, network cụ thể nào đó.
Trong quá trình theo dõi, HIPS sẽ dựa theo luật (rule-based) để định nghĩa đâu là hành vi tốt, đâu là hành vi xấu, những hành vi không có trong luật có thể đánh dấu chú ý hoặc đề nghị công nghệ nhận diện khác.
So với việc phân tích và phát hiện theo mẫu nhận diện, HIPS sử dụng luật nên phù hợp với việc phát hiện Virus có khả năng khai thác lỗ hổng phần mềm của hệ thống, từ đó bảo vệ hệ thống khỏi các cuộc tấn công zero-day (cuộc tấn công vào hệ thống đang tồn tại lỗ hổng bảo mật).
Giải pháp HIPS cho Antivirus là một mô hình nhỏ cho giải pháp Intrusion Prevention System (IPS) cho toàn bộ hệ thống mạng máy tính.
b.Bảo vệ thời gian thực - Real-time protection
Hệ thống bảo vệ theo thời gian thực là thành phần bảo vệ hệ thống quan trọng nhất của phần mềm Antivirus. Thành phần này thực hiện theo dõi tất cả các hành vi của của người dùng và hệ thống như: mở email, lướt web, đọc ghi dữ liệu, mở CD, USB, nghe nhạc. Bất cứ hành vi hoặc dữ liệu bất thường nào chứa dấu hiệu của virus sẽ được phát hiện và tiêu diệt tức thời.
Đây là thành phần yêu cầu công nghệ phức tạp, để đạt hiệu năng cao, nó đòi hỏi can thiệp sâu vào nhân hệ điều hành (kernel mode) để bẫy được đầy đủ hành vi của hệ thống mà không làm chậm hệ thống.
c. Ngăn chặn website chứa mã độc – Site Advisor
Site Advisor là dịch vụ cảnh báo cho người sử dụng mức độ an toàn của website. Dịch vụ này kết hợp giữa công nghệ phát hiện virus và công nghệ thu thập thông tin website (web crawler). Thông tin về những website chứa virus sẽ được lưu trữ và cập nhật trong database. Ngay khi người dùng truy cập vào website, Antivirus sẽ ngăn chặn và cảnh báo.
Công nghệ này được giới thiệu đầu tiên bởi McAfee năm 2006.Đến nay, hầu hết các Antivirus đều tích hợp.Thậm chí, các trình duyệt Firefox và Chrome cũng đã tích hợp công nghệ này để bảo vệ người dùng.
2.2.3 Các công nghệ bảo vệ a.Bảo vệ chat – IM Protection a.Bảo vệ chat – IM Protection
Việc các phần mềm chat IM ngày càng phổ biến như hiện nay, Hacker chắc chắn tận dụng để phát tán virus. Các phương thức phát tán có thể là như sau:
- Hacker gửi nạn nhân link virus, người dùng click vào link và lây nhiễm virus. - Hacker tấn công lỗ hổng xử lý giao thức của các phần mềm IM.
- Lừa đảo (phishing).
Công nghệ này đòi hỏi Antivirus phải theo dõi (monitor) được nội dung IM của người dùng, phân tích nội dung và đưa ra quyết định tìm diệt Virus.
Các phần mềm IM nổi tiếng hiện này đều đã từng bị lợi dụng để tấn công người dùng và phát tán Virus:ICQ, MSN, AIM, Yahoo! Messenger, Jabber, Google Talk, Mail.Ru Agent, và IRC.
b.Bảo vệ email
Thành phần này triển khai công nghệ diệt virus lây lan qua Email. Nó theo dõi tất cả các thông tin vào (inbound) và ra (outbound) hệ thống Email. Cơ bản thì công nghệ này sẽ gồm 4 bước bảo vệ:
- Giới hạn file đính kèm: Antivirus không chấp nhận các file đính kèm có nguy cao chứa Virus (.exe, .com, .js, .lnk, .vbs…).
- Phân tích định dạng và cấu trúc định dạng Email. Định dạng Email có thể chứa Virus khai thác lỗ hổng của các phần mềm xử lý Email.
- Giải nén các file đính kèm.
- Với nội dung phân tích được ở 3 bước trên, Antivirus sẽ thực hiện quét file để phân tích, phát hiện và cảnh báo virus.
c. Bảo vệ sử dụng USB và thiết bị nhớ
Do tính chất phổ biến của thiết bị nhớ USB, virus lây lan qua USB rất phổ biến. Công nghệ lây lan của virus qua USB ngày nay cũng rất phổ biến và dễ dàng, người dùng đơn giản chỉ cắm USB có virus vào máy tính, virus ngay lập tức lây nhiễm vào hệ thống. Ngược lại, khi cắm USB sạch vào hệ thống có virus, USB sẽ bị lây nhiễm. Cứ như vậy, tốt độ lây nhiễm virus rất nhanh.
USB Protect là công nghệ theo dõi hành vi thao tác với thiết bị nhớ. Ngay khi người dùng cắm usb vào hệ thống, Antivirus sẽ phân tích nội dung và các dấu hiệu của virus để phát hiện, tiêu diệt virus và cảnh báo người dùng.
2.3Công nghệ diệt mã độc
2.3.1 Sử dụng mã nhận diện (Signature-based)
Công nghệ này gồm các bước như sau:
- Chuyên gia phân tích mã độc đã biết, quyết định nó là chủng loại virus nào, cách diệt ra sao.
- Tạo mẫu nhận diện và lưu vào Database. - Viết hàm diệt mã độc.
- Log, cảnh báo cho người dùng.
Phương pháp này kinh điển và là lớp phòng vệ có tính chính xác cao nhất.Hiện nay, có hàng chục triệu mã độc, tương ứng với hàng chục triệu mẫu nhận diện.
2.3.2 Sử dụng máy trạng thái và công nghệ giả lập
Diệt virus sử dụng máy trạng thái và công nghệ giả lập thực chất cũng vẫn phải có sự tham gia phân tích và viết hàm diệt từ chuyên gia, tuy nhiên khác với việc sử dụng mã nhận diện truyền thống, một mẫu nhận diện trong máy trạng thái và công nghệ giả lập cho phép phát hiện ra một lớp, một dòng virus thay vì chỉ phát hiện ra một con virus cụ thể.
Trong công nghệ này, các bước được tiến hành như sau:
- Mẫu Virus được chuyên gia phân tích để tìm ra cách diệt và các trạng thái đặc trưng.
- Mỗi file cần kiểm tra sẽ được đi qua một hệ thống giả lập để ghi nhận lại các trạng thái và hành vi.
- Nếu file kiểm tra được nhận diện đầy đủ các trạng thái thì nó được đánh dấu là bị nhiễm virus.
- File bị nhiễm virus được đi qua trình khôi phục file gốc. Chương trình ghi log và cảnh báo cho người dùng.
2.4Một số công nghệ khác
2.4.1 Công nghệ điện toàn đám mây - Cloud Antivirus
Hệ thống Antivirustheo mô hình điện toán đám mây. Sự khác biệt của mô hình Antivirus truyền thống và mô hình điện toán đám mây là ở CSDL mẫu nhận diện.
- Mô hình truyền thông thường lưu trữ tất cả các mẫu nhận diện trên hệ thống cá nhân (Window, PC). Antivirus phải cập nhật mẫu nhận diện thường xuyên, tốn dung lượng bộ nhớ. Bù lại, tốc độ phát hiện và tìm diệt với đa phần các loại virus là nhanh.
- Mô hình điện toán đám mây lưu trữ tất cả các mẫu nhận diện, giải pháp tìm diệt trên đám mây (hệ thống máy chủ). Mọi yêu cầu phân tích, phát hiện và đưa giải pháp diệt đều được lên Server xử lý. Việc này giúp Antivirus Client (trên máy người dùng) giảm bớt dung lượng bộ nhớ, hoạt động không ảnh hưởng nhiều đến hiệu năng hệ thống. Tuy nhiên, mô hình này có những yếu điểm là tốc độc phát hiện, tìm diệt chậm, luôn phải kết nối internet.
Các Antivirus hiện nay kết hợp cả 2 mô hình này nhằm tận dụng mọi ưu điểm của hai mô hình.
2.4.2 Tường lửa - Firewall
Ngoài tính năng tường lửa thông thường (cấu hình chặn, mở cổng), firewall cho Antivirus là sự kết hợp của nhiều công nghệ Antivirus.
Tưởng lửa bao gồm các tính năng trong công nghệ Behaviour Antivirus, tức là theo dõi các hành vi kết nối mạng, cảnh báo đối với các hành vi được cho là của Virus.
Ví dụ: Khi phát hiện truy cập mạng bất thường đến các website có chứa Virus, Firewall sẽ chặn và cấm hành vi truy cập đối với tiến trình thực thi. Ngoài ra, Firewall cảnh báo Antivirus phân tích file thực thi để ra quyết định tìm diệt virus.
2.4.3 Giám sát và điều khiển truy cập - Parental Control
Chức năng này giúp kiểm soát việc sử dụng máy tính và truy cập web. Thực ra thì chức năng này cũng giúp giới hạn việc sử dụng máy tính với những người đang sử dụng chung hệ thống máy tính của mình.
Thông thường, Parental Control chủ yếu chặn việc truy cập web đen. Hoặc hệ thống hoặc người sử dụng sẽ định nghĩa các website bị nghi ngờ là web đen, một người dùng
truy cập vào các website này đề bị chặn lại, nếu muốn truy cập thực sự, người đó phải có mật khẩu. Mật khẩu sẽ chỉ được cấp cho chủ sở hữu Antivirus.
2.4.4 Hệ thống thu thập virus và hành vi - Honey pot
Honeypots (hũ mật) là một hệ thống tài nguyên thông tin được xây dựng với mục đích giả lập các môi trường thật để đánh lừa những kẻ sử dụng và xâm nhập không hợp pháp, thu hút sự chú ý của chúng, ngăn không cho chúng tiếp xúc với hệ thống thật, đồng thời thu thập mẫu và cách thức tấn công.
Ta có thể hiểu hệ thống tự phơi bày điểm yếu trên mạng và muốn bị tấn công để thu thập mọi thông tin có thể về các cuộc tấn công thực tế trên mạng.
Trong trường hợp Antivirus, hệ thống này nhằm thu thập các loại virus mới, cho phép cập nhật thêm mẫu nhận diện của Antivirus.
2.5 Lựa chọn phương pháp để xây dựng hệ thống
Mục tiêu của luận văn là xây dựng một hệ thống phân tích mã độc tự động, do vậy chúng ta sẽ sử dụng phương pháp phân tích động, kết hợp với kiến thức về mã độc đã tìm hiểu được để xây dựng hệ thống.
Trong phần tiếp theo, tôi sẽ trình bày tổng quan về một hệ thống tự động phân tích mã độc và cách thức xây dựng hệ thống này.
CHƯƠNG III: XÂY DỰNG HỆ THỐNG PHÂN TÍCH MÃ ĐỘC TỰ ĐỘNG
4.1 Lý thuyết cơ bản về Sanbox
Vì mã độc ngày càng phức tạp, cho nên chúng ta cần thêm các công nghệ mà cho phép phân tích mã độc được dễ dàng mà không làm ảnh hưởng tới hệ thống hiện có của chúng ta. Một trong các công nghệ được sử dụng có tên là sanbox. Sanbox là khái niệm được những người làm về kỹ thuật nắm rõ.Về mặt kỹ thuật (an toàn thông tin), sanbox là cơ chế cho phép cô lập một chương trình ( ở đây là mã độc ) bằng việc cung cấp một môi trường thực thi hạn chế, môi trường này được sử dụng để thực thi những chương trình nghi ngờ chứa mã độc từ môi trường chính. Bằng việc sử dụng Sanbox, chúng ta có thể thực thi những chương trình chứa mã độc và quan sát hành vi của chúng.
Nhờ có Sanbox, chúng ta có thể phân tích mã độc an toàn và bảo mật mà không cần quan tâm tới sự thay đổi có thể xảy ra với hệ thống của mình. Có một vài malware sanboxes chúng ta có thể sử dụng để xây dựng môi trường tự động phân tích mã độc cho riêng mình như: Buster Sandbox Analyzer, Zero Wine, Malheur, Cuckoo Sandbox và một vài hệ thống khác nữa. Ở đây chúng ta sẽ chọn Cukoo Sandbox vì nó là hệ thống có đầy đủ các tính năng cần thiết, mã nguồn mở hoàn toàn và có một cộng đồng cùng phát triển.
4.2 Môi trường phân tích mã độc
Môi trường phân tích mã độc là một môi trường an toàn để phân tích các loại mã độc. Về cơ bản, nó là một môi trường cô lập, trong đó có nhiều công cụ hữu ích cho các chuyên gia phân tích mã độc, giúp họ trong việc phân tích các loại mã độc này một cách nhanh chóng và thuận tiện. Nếu có thể, chúng ta nên xây dựng một phòng thí nghiệm phần mềm độc hại để chủ động hơn mối đe dọa mới và hiện đại, có thể bất ngờ tấn công tổ chức của chúng ta. Nó cũng là một hình thức phát hiện tiên tiến trước khi các tổ chức chống virus cập nhật một mẫu mã độc hại mới vào cơ sở dữ liệu của họ. Kết quả cuối cùng của các phòng thí nghiệm phân tích phần mềm độc hại sẽ được xử lý bởi các chuyên gia phân tích mã độc.
Phân tích tĩnh liên quan đến việc phân tách và dịch ngược mã độc. Điều này có thể được thực hiện trong trạng thái tĩnh, khi mà đoạn mã độc đó còn chưa được thực thi.
Không có cấu hình phức tạp là cần được thiết lập trong môi trường phân tích mã độc, bởi vì thực ra chúng ta còn chưa thực thi nó. Môi trường phân tích này sẽ cung cấp cho chúng ta một môi trường an toàn nếu như chúng ta chẳng may thực thi mã độc này khi đang phân tích. Đối với phân tích động, ta cần phải thiết lập phức tạp hơn, vì chúng ta cần phải thực thi mã độc ở pha này. Malware đôi khi còn hành xử khác nhau tùy thuộc vào môi trường hệ điều hành, nơi họ đang được thực thi.
Chúng ta còn phải chú ý tới vị trí của máy chủ phân tích mã độctrong mạng của mình. Trojan, worms, và một số loại mã độc có thể có tính năng lây lan, vì vậy việc thực thi một file mã độc có thể dẫn đến các máy tính khác trên cùng một mạng bị lây nhiễm. Xây dựng một môi trường phân tích mã độc không quá khó và đòi hỏi rất ít chi phí về phần cứng. Cô lập môi trường phân tích mã độc khỏi các máy khác trong mạng là chưa