Báo chí công nghệ liên tục viết về các khai thác “zero-day” mới và nguy hiểm. Nhưng chính xác thì khai thác zero-day là gì, điều gì khiến nó trở nên nguy hiểm và – quan trọng nhất – làm thế nào bạn có thể tự bảo vệ mình?

Các cuộc tấn công Zero-day xảy ra khi kẻ xấu vượt lên trước kẻ tốt, tấn công chúng ta bằng những lỗ hổng mà chúng ta thậm chí chưa bao giờ biết là tồn tại. Chúng là những gì xảy ra khi chúng tôi không có thời gian để chuẩn bị phòng thủ.

Phần mềm dễ bị tổn thương

Phần mềm không hoàn hảo. Trình duyệt bạn đang đọc này – cho dù đó là Chrome, Firefox, Internet Explorer hay bất kỳ thứ gì khác – đều được đảm bảo có lỗi trong đó. Một phần mềm phức tạp như vậy được viết bởi con người và có những vấn đề mà chúng ta chưa biết về nó. Nhiều lỗi trong số này không quá nguy hiểm – có thể chúng khiến trang web hoạt động sai hoặc trình duyệt của bạn gặp sự cố. Tuy nhiên, một số lỗi là lỗ hổng bảo mật. Kẻ tấn công biết về lỗi có thể tạo ra một khai thác sử dụng lỗi trong phần mềm để giành quyền truy cập vào hệ thống của bạn.

Tất nhiên, một số phần mềm dễ bị tấn công hơn những phần mềm khác. Ví dụ: Java có một luồng lỗ hổng không bao giờ kết thúc cho phép các trang web sử dụng trình cắm Java thoát khỏi hộp cát Java và có toàn quyền truy cập vào máy của bạn. Các vụ khai thác nhằm xâm phạm công nghệ hộp cát của Google Chrome hiếm gặp hơn nhiều, mặc dù ngay cả Chrome cũng chưa từng có ngày nào.

Tiết lộ có trách nhiệm

Đôi khi, một lỗ hổng được phát hiện bởi những người tốt. Có thể là nhà phát triển tự phát hiện ra lỗ hổng bảo mật hoặc tin tặc “mũ trắng” phát hiện ra lỗ hổng và tiết lộ nó một cách có trách nhiệm, có thể thông qua một cái gì đó như Pwn2Own hoặc chương trình thưởng lỗi của Google Chrome, phần thưởng cho các hacker phát hiện ra lỗ hổng và tiết lộ chúng một cách có trách nhiệm. Nhà phát triển sửa lỗi và phát hành một bản vá cho nó.

Những kẻ độc hại sau đó có thể cố gắng khai thác lỗ hổng sau khi nó được tiết lộ và vá, nhưng mọi người đã có thời gian để chuẩn bị.

Một số người không vá phần mềm của họ kịp thời, vì vậy những cuộc tấn công này vẫn có thể nguy hiểm. Tuy nhiên, nếu một cuộc tấn công nhắm vào một phần mềm bằng cách sử dụng lỗ hổng đã biết mà đã có sẵn bản vá thì đó không phải là một cuộc tấn công “zero-day”.

Các cuộc tấn công Zero-Day

Đôi khi, một lỗ hổng được phát hiện bởi kẻ xấu. Những người phát hiện ra lỗ hổng bảo mật có thể bán nó cho những người và tổ chức khác đang tìm cách khai thác (đây là một doanh nghiệp lớn – đây không chỉ là những thanh thiếu niên ở tầng hầm cố gắng gây rối với bạn nữa, đây là tội phạm có tổ chức đang hoạt động) hoặc sử dụng chính nó. Lỗ hổng có thể đã được nhà phát triển biết trước, nhưng nhà phát triển có thể đã không thể sửa chữa nó kịp thời.

Trong trường hợp này, cả nhà phát triển và những người sử dụng phần mềm đều không có cảnh báo trước rằng phần mềm của họ dễ bị tấn công. Mọi người chỉ biết rằng phần mềm dễ bị tấn công khi nó đã bị tấn công, thường bằng cách kiểm tra cuộc tấn công và tìm hiểu lỗi mà nó khai thác.

Đây là một cuộc tấn công zero-day – có nghĩa là các nhà phát triển không có ngày nào để giải quyết vấn đề trước khi nó được khai thác trong tự nhiên. Tuy nhiên, những kẻ xấu đã biết về nó đủ lâu để tạo ra một khai thác và bắt đầu tấn công. Phần mềm vẫn dễ bị tấn công cho đến khi người dùng phát hành và áp dụng bản vá, quá trình này có thể mất vài ngày.

Cách bảo vệ bản thân

Ngày số không thật đáng sợ bởi vì chúng tôi không có bất kỳ thông báo trước nào về chúng. Chúng tôi không thể ngăn chặn các cuộc tấn công zero-day bằng cách giữ cho phần mềm của chúng tôi được vá. Theo định nghĩa, không có bản vá nào có sẵn cho một cuộc tấn công zero-day.

Vì vậy, chúng ta có thể làm gì để bảo vệ mình khỏi bị khai thác zero-day?

  • Tránh phần mềm dễ bị tổn thương: Chúng tôi không biết chắc chắn rằng sẽ có một lỗ hổng zero-day khác trong Java trong tương lai, nhưng lịch sử lâu dài của các cuộc tấn công zero-day của Java có nghĩa là rất có thể sẽ có. (Trên thực tế, Java hiện dễ bị tấn công bởi một số cuộc tấn công zero-day chưa được vá.) Gỡ cài đặt Java (hoặc vô hiệu hóa trình cắm nếu bạn cần cài đặt Java) và bạn sẽ ít có nguy cơ bị tấn công zero-day hơn . Trình đọc PDF và Flash Player của Adobe trước đây cũng từng có khá nhiều cuộc tấn công zero-day, mặc dù chúng đã được cải thiện gần đây.
  • Giảm bề mặt tấn công của bạn: Bạn càng ít phần mềm dễ bị tấn công zero-day thì càng tốt. Đây là lý do tại sao bạn nên gỡ cài đặt các plug-in của trình duyệt mà bạn không sử dụng và tránh để phần mềm máy chủ không cần thiết tiếp xúc trực tiếp với Internet. Ngay cả khi phần mềm máy chủ được vá hoàn toàn, một cuộc tấn công zero-day cuối cùng có thể xảy ra.
  • Chạy phần mềm chống vi-rút: Thuốc chống vi-rút có thể giúp chống lại các cuộc tấn công zero-day. Một cuộc tấn công cố gắng cài đặt phần mềm độc hại trên máy tính của bạn có thể tìm thấy phần mềm chống vi-rút cài đặt phần mềm độc hại. Kinh nghiệm của phần mềm chống vi-rút (phát hiện hoạt động đáng ngờ) cũng có thể chặn một cuộc tấn công zero-day. Sau đó, các antivirus có thể được cập nhật để bảo vệ chống lại cuộc tấn công zero-day sớm hơn so với bản vá có sẵn cho chính phần mềm dễ bị tấn công. Đây là lý do tại sao việc sử dụng phần mềm chống vi-rút trên Windows là thông minh, cho dù bạn có cẩn thận đến đâu.
  • Luôn cập nhật phần mềm của bạn: Cập nhật phần mềm của bạn thường xuyên sẽ không bảo vệ bạn trước zero-days, nhưng nó sẽ đảm bảo bạn có bản sửa lỗi sớm nhất có thể sau khi nó được phát hành. Đây cũng là lý do tại sao điều quan trọng là phải giảm bề mặt tấn công của bạn và loại bỏ phần mềm có khả năng dễ bị tấn công mà bạn không sử dụng – đó là phần mềm ít hơn bạn cần đảm bảo được cập nhật.


Chúng tôi đã giải thích khai thác zero day là gì, nhưng lỗ hổng bảo mật vĩnh viễn và chưa được vá được gọi là gì? Hãy xem liệu bạn có thể tìm ra câu trả lời qua phần Geek Trivia của chúng tôi không!

Tham khảo (HowToGeek)