Hồ sơ Meltdown Spectre
Bài viết này dành cho ai:
Về lỗ hổng Meltdown, Spectre
Đầu tháng 1 năm 2018, giới công nghệ toàn thế giới chấn động khi thông tin về các lỗ hổng trong bộ vi xử lý của Intel, AMD , ARM và cả Apple được công bố ảnh hưởng đến hàng tỉ thiết bị của các cá nhân, tổ chức.
Theo một số báo cáo ban đầu, chỉ các chip Intel bị lỗ hổng rò rỉ thông tin (Meltdown + Spectre). Tuy nhiên, giờ đây các hãng chip AMD, ARM, Apple cũng phải xác nhận lỗ hổng tồn tại trên chip của họ và gần như ảnh hưởng đến mọi chip xử lý sản xuất từ năm 1995 tới nay (nhắc lại để các bạn nhớ, năm nay là năm 2018, nghĩa là lỗ hổng đã tồn tại 23 năm ).
Khi các nhóm nghiên cứu của Đại học Công nghệ Graz hay CERT (bộ phận chuyên làm việc cho cục An ninh Nội địa Mỹ)… báo cáo vấn đề đến Intel đầu tháng 12/2017, các chuyên gia mới biết thực tế là lỗ hổng đã được phát hiện từ 6 tháng trước. Theo những nhận định đầu tiên, do lỗ hổng thuộc về thiết kế của bộ vi xử lý nên để khắc phục hoàn toàn, cần phải tiến hành thay thế toàn bộ CPU trên hàng tỉ thiết bị đang hoạt động, điều này là không thể thực hiện được, vì vậy các nhà sản xuất đã quyết định phát hành các bản vá lỗi phần mềm.
Một cách tổng quan, các bộ vi xử lý được Intel, AMD, ARM chuyển đến các nhà sản xuất thiết bị như Acer, Asus, Apple, Dell, HP, Google… và sau đó cài đặt các hệ điều hành Windows, Linux, Android, Chrome OS hay iOS, Mac, tvOS… khác nhau nên vấn đề cập nhật lỗ hổng trên các thiết bị cho người dùng cuối đang phụ thuộc nhiều bên và gặp rất nhiều khó khăn. Cùng với việc các thiết bị sau khi cập nhật có thể bị giảm hiệu năng từ 5 – 30% đang gây ra một vụ bê bối lớn trong giới công nghệ nói chung và bảo mật nói riêng.
Do là lỗ hổng trong chip xử lý, nên nó ảnh hướng đến gần như mọi hệ điều hành: iOS, Mac, tvOS, Microsoft Windows (Windows 7 → Windows 10, Windows Server), Windows Phone, Linux (Ubuntu, Cent OS, FreeBSD,…), Android và Chrome OS...
Các lỗ hổng được phân thành 2 loại là Meltdown (CVE-2017-5754) và Spectre (CVE-2017-5753 và CVE-2017-5715), cho phép kẻ tấn công đọc các thông tin nhạy cảm trên máy người dùng.
Cả Meltdown và Spectre đều cho phép người dùng quyền thấp (không có quyền quản trị/root, chỉ cần chạy được file thực thi trên hệ thống), đọc được các thông tin nhạy cảm trong bộ nhớ, thông qua lỗ hổng trong tính năng Speculative Execution của CPU.
Meltdown: các chip Intel và Apple bị dính lỗ hổng này. Đây là lỗ hổng leo thang đặc quyền, cho phép user space có thể đọc được dữ liệu trong kernel space, khiến kẻ tấn công (với điều kiện có thể chạy mã thực thi trên hệ thống) có thể đọc được các thông tin nhạy cảm lưu trong vùng nhớ của HĐH và các tiến trình khác.
Spectre: tất cả các chip Intel, Apple, ARM, và AMD đều bị ảnh hưởng bởi lỗ hổng này. Kẻ tấn công có thể lợi dụng lỗ hổng để lấy cắp dữ liệu nhạy cảm từ các ứng dụng. Spectre khó khai thác hơn so với Meltdown, nhưng cũng khó vá hơn.
Nguy cơ bị khai thác
Nghiêm trọng hơn, các lỗ hổng này có thể bị khai thác bằng mã javascript. Có nghĩa là khi người dùng lướt web, nếu duyệt các trang web có chứa mã khai thác thì dữ liệu trên máy tính của họ có thể bị ăn cắp! Các bản vá tạm thời đã được cập nhật trên hầu hết các trình duyệt phổ biến (Chrome, Firefox, Safari,...).
Update ngày 01/02/2018: Các nhà nghiên cứu vừa phát hiện hơn 130 mẫu mã độc được thiết kế để khai thác các lỗ hổng CPU Spectre và Meltdown. Phần lớn các mã độc này đang trong giai đoạn thử nghiệm nhưng có thể không lâu nữa chúng ta sẽ chứng kiến những đợt tấn công trong thực tế.
Tool check lỗ hổng trên Windows
Trên Windows, để kiểm tra xem các bản vá đã được cài đặt chưa, ta chạy PowerShell với quyền quản trị:
========================================================================
Để chạy được lệnh trên, yêu cầu cần phải cài PowerShell 5.0 trở lên. Link tải file cài đặt Powershell 5.1, nằm trong gói Windows Management Framework 5.1: https://docs.microsoft.com/en-us/powershell/wmf/5.1/install-configure
Đối với máy chưa cài đặt update, kết quả sẽ như sau:
Các option phải là “True” thì mới là đã cài đặt bản vá. Hiện tại, Microsoft đang thực hiện cập nhật tiếp các bản vá. Do vậy người dùng nên thường xuyên update HĐH để có thể cập nhật kịp thời các bản vá mới.
Update bản vá trên Windows
Microsoft đã cập nhật bản vá cho Meltdown và Spectre và nhiều lỗ hổng nghiêm trọng khác trong bản vá Tuesday (9/1/2018), cho mọi phiên bản HĐH (Windows 10/8.1/7, Server 2016/2012/2008). Windows XP và Vista dường như sẽ không được update. Người dùng nên bật chế độ tự động update và thực hiện kiểm tra và cài đặt các bản vá cho Windows.
Tuy nhiên, để update bản vá cho Windows, trước hết cần phải đảm bảo phần mềm diệt virus cài trên máy tính tương thích với các bản vá này. Chỉ khi phần mềm diệt virus xác nhận tính tương thích bằng cách tạo key sau trong registry thì Microsoft mới cho update:
========================================================================
Do đó, trước khi update, ta cần phải update phần mềm diệt virus và kiểm tra xem đã tồn lại key trên chưa.
Tuyệt đối không tự tạo key này bằng tay, vì nếu phần mềm diệt virus không tương thích bản vá, máy tính có thể bị lỗi màn hình xanh, hoặc thậm chí không thể khởi động lên được.
Hiện tại, hầu hết phần mềm diệt virus đã tương thích với bản vá, như Avast, Avira, AVG, ESET, F-Secure, BitDefender… Bản Bkav 2018 đã cập nhật key, người dùng nên update Bkav lên bản mới nhất 2018 để được vá lỗ hổng.
Sau khi update, ta khởi động lại máy và sử dụng tool kiểm tra xem đã được bảo vệ chưa.
Update ngày 29/1: Nếu người dùng gặp lỗi khởi động lại hoặc màn hình xanh sau khi update bản vá Tuesday ngày 9/1/2018, hãy cài đặt bản patch KB4078130 để khắc phục.
Update bản vá trên Ubuntu
Lỗ hổng Meltdown đã được vá trên các bản Ubuntu 17.10, 16.04, 14.04 và 12.04. Người dùng nên nhanh chóng update bản vá cho các HĐH này.
Còn Spectre vẫn chưa có bản vá, mà mới đang được thử nghiệm trên một số bản nhân Linux. Người dùng nên theo dõi thường xuyên các thông tin cập nhật trên trang sau: https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/SpectreAndMeltdown
Cập nhật bản vá trên Apple
Apple đã cập nhật bản vá cho Meltdown và Spectre trên macOS High Sierra (10.13.2) và iOS (11.2.2).
Cập nhật bản vá trên Android
Google đã tung ra bản vá cho điện thoại Android của họ trong bản update security ngày 5/1/2018. Do đó, người dùng điện thoại Nexus, Pixel đã được bảo vệ. Tuy nhiên, đối với những sản phẩm Android của các hãng khác dường như vẫn chưa có thông tin chính thức về việc vá cho các lỗ hổng này.
Cập nhật bản vá cho các trình duyệt.
Như đã trình bày, Meltdown và Spectre có khả năng bị khai thác qua trình duyệt, tức là chỉ cần lướt web, người dùng cũng có thể bị ăn cắp dữ liệu cá nhân, các thông tin nhạy cảm trong máy tính của họ. Do đó, các trình duyệt đã tung ra bản update cho 2 lỗi
này.
Firefox, Safari
Mozilla đã phát hành bản Firefox 57.0.4 để bảo vệ người dùng trước Meltdown và Spectre. Còn trên iOS và macOS, Safari cũng đã có bản vá.
Google Chrome
Đối với người dùng Google Chrome, bản vá chính thức sẽ được phát hành vào 23/1/2018 với Chrome 64. Hiện tại, để tự vệ trước các cuộc tấn công Meltdown/Spectre qua web, người dùng có thể kích hoạt tính năng Site Isolation, giúp việc khai thác các lỗ hổng này trở lên khó hơn:
Để được bảo vệ toàn diện, người dùng còn cần cài đặt các bản vá firmware từ các nhà sản xuất thiết bị. Các lỗi Metldown và Spectre là lỗi của chip xử lý, nên các giải pháp phần mềm như update HĐH, trình duyệt chỉ là tình thế giải pháp tạm thời. Người dùng nên theo dõi trên các trang sau của các nhà sản xuất tương ứng để update khi có bản vá:
========================================================================
Vấn đề giảm hiệu năng CPU khi update các bản vá tạm thời
Theo đánh giá các chuyên gia, việc vá lỗi sẽ ít nhiều làm giảm hiệu năng của CPU, đặc biệt là trên Linux, CPU có thể giảm hiệu năng từ 5 đến 30%, tùy thuộc vào từng loại chip xử lý. Còn trên Windows, một số bài test cho thấy hiệu năng không bị giảm nhiều.
Để không bị giảm hiệu năng xử lý, các nhà sản xuất CPU cần phải hành động và chấp nhận thiết kế lại kiến trúc của CPU.
Khuyến cáo
- Với người dùng bình thường: đọc để biết thông tin và cách update bản vá cho thiết bị cá nhân của mình.
- Với các quản trị hệ thống: sẽ mệt hơn đấy, cần khẩn trương update bản vá cho các hệ thống và người dùng trong đơn vị.
- Giới thiệu về 2 lỗ hổng Meltdown, Spectre
- Nguy cơ bị khai thác
- Cách kiểm tra lỗ hổng
- Cách update lỗ hổng cho trình duyệt web, hệ điều hành và phần cứng
- Một số khuyến cáo
Về lỗ hổng Meltdown, Spectre
Đầu tháng 1 năm 2018, giới công nghệ toàn thế giới chấn động khi thông tin về các lỗ hổng trong bộ vi xử lý của Intel, AMD , ARM và cả Apple được công bố ảnh hưởng đến hàng tỉ thiết bị của các cá nhân, tổ chức.
Theo một số báo cáo ban đầu, chỉ các chip Intel bị lỗ hổng rò rỉ thông tin (Meltdown + Spectre). Tuy nhiên, giờ đây các hãng chip AMD, ARM, Apple cũng phải xác nhận lỗ hổng tồn tại trên chip của họ và gần như ảnh hưởng đến mọi chip xử lý sản xuất từ năm 1995 tới nay (nhắc lại để các bạn nhớ, năm nay là năm 2018, nghĩa là lỗ hổng đã tồn tại 23 năm ).
Khi các nhóm nghiên cứu của Đại học Công nghệ Graz hay CERT (bộ phận chuyên làm việc cho cục An ninh Nội địa Mỹ)… báo cáo vấn đề đến Intel đầu tháng 12/2017, các chuyên gia mới biết thực tế là lỗ hổng đã được phát hiện từ 6 tháng trước. Theo những nhận định đầu tiên, do lỗ hổng thuộc về thiết kế của bộ vi xử lý nên để khắc phục hoàn toàn, cần phải tiến hành thay thế toàn bộ CPU trên hàng tỉ thiết bị đang hoạt động, điều này là không thể thực hiện được, vì vậy các nhà sản xuất đã quyết định phát hành các bản vá lỗi phần mềm.
Một cách tổng quan, các bộ vi xử lý được Intel, AMD, ARM chuyển đến các nhà sản xuất thiết bị như Acer, Asus, Apple, Dell, HP, Google… và sau đó cài đặt các hệ điều hành Windows, Linux, Android, Chrome OS hay iOS, Mac, tvOS… khác nhau nên vấn đề cập nhật lỗ hổng trên các thiết bị cho người dùng cuối đang phụ thuộc nhiều bên và gặp rất nhiều khó khăn. Cùng với việc các thiết bị sau khi cập nhật có thể bị giảm hiệu năng từ 5 – 30% đang gây ra một vụ bê bối lớn trong giới công nghệ nói chung và bảo mật nói riêng.
Do là lỗ hổng trong chip xử lý, nên nó ảnh hướng đến gần như mọi hệ điều hành: iOS, Mac, tvOS, Microsoft Windows (Windows 7 → Windows 10, Windows Server), Windows Phone, Linux (Ubuntu, Cent OS, FreeBSD,…), Android và Chrome OS...
Các lỗ hổng được phân thành 2 loại là Meltdown (CVE-2017-5754) và Spectre (CVE-2017-5753 và CVE-2017-5715), cho phép kẻ tấn công đọc các thông tin nhạy cảm trên máy người dùng.
Cả Meltdown và Spectre đều cho phép người dùng quyền thấp (không có quyền quản trị/root, chỉ cần chạy được file thực thi trên hệ thống), đọc được các thông tin nhạy cảm trong bộ nhớ, thông qua lỗ hổng trong tính năng Speculative Execution của CPU.
Spectre: tất cả các chip Intel, Apple, ARM, và AMD đều bị ảnh hưởng bởi lỗ hổng này. Kẻ tấn công có thể lợi dụng lỗ hổng để lấy cắp dữ liệu nhạy cảm từ các ứng dụng. Spectre khó khai thác hơn so với Meltdown, nhưng cũng khó vá hơn.
Nguy cơ bị khai thác
Nghiêm trọng hơn, các lỗ hổng này có thể bị khai thác bằng mã javascript. Có nghĩa là khi người dùng lướt web, nếu duyệt các trang web có chứa mã khai thác thì dữ liệu trên máy tính của họ có thể bị ăn cắp! Các bản vá tạm thời đã được cập nhật trên hầu hết các trình duyệt phổ biến (Chrome, Firefox, Safari,...).
Update ngày 01/02/2018: Các nhà nghiên cứu vừa phát hiện hơn 130 mẫu mã độc được thiết kế để khai thác các lỗ hổng CPU Spectre và Meltdown. Phần lớn các mã độc này đang trong giai đoạn thử nghiệm nhưng có thể không lâu nữa chúng ta sẽ chứng kiến những đợt tấn công trong thực tế.
Tool check lỗ hổng trên Windows
Trên Windows, để kiểm tra xem các bản vá đã được cài đặt chưa, ta chạy PowerShell với quyền quản trị:
========================================================================
# Cài module SpeculationControl cho Power Shell
PS > Install-Module SpeculationControl
# Cho phép chạy script
Set-ExecutionPolicy RemoteSigned
# Import module
Import-Module SpeculationControl
# Chạy lệnh kiểm tra
PS > Get-SpeculationControlSettings
========================================================================Để chạy được lệnh trên, yêu cầu cần phải cài PowerShell 5.0 trở lên. Link tải file cài đặt Powershell 5.1, nằm trong gói Windows Management Framework 5.1: https://docs.microsoft.com/en-us/powershell/wmf/5.1/install-configure
Đối với máy chưa cài đặt update, kết quả sẽ như sau:
Các option phải là “True” thì mới là đã cài đặt bản vá. Hiện tại, Microsoft đang thực hiện cập nhật tiếp các bản vá. Do vậy người dùng nên thường xuyên update HĐH để có thể cập nhật kịp thời các bản vá mới.
Update bản vá trên Windows
Microsoft đã cập nhật bản vá cho Meltdown và Spectre và nhiều lỗ hổng nghiêm trọng khác trong bản vá Tuesday (9/1/2018), cho mọi phiên bản HĐH (Windows 10/8.1/7, Server 2016/2012/2008). Windows XP và Vista dường như sẽ không được update. Người dùng nên bật chế độ tự động update và thực hiện kiểm tra và cài đặt các bản vá cho Windows.
Tuy nhiên, để update bản vá cho Windows, trước hết cần phải đảm bảo phần mềm diệt virus cài trên máy tính tương thích với các bản vá này. Chỉ khi phần mềm diệt virus xác nhận tính tương thích bằng cách tạo key sau trong registry thì Microsoft mới cho update:
========================================================================
Đường dẫn key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\QualityCompat
Tên: cadca5fe-87d3-4b96-b7fb-a231484277cc
Kiểu: REG_DWORD
Giá trị: 0x00
========================================================================
Tuyệt đối không tự tạo key này bằng tay, vì nếu phần mềm diệt virus không tương thích bản vá, máy tính có thể bị lỗi màn hình xanh, hoặc thậm chí không thể khởi động lên được.
Hiện tại, hầu hết phần mềm diệt virus đã tương thích với bản vá, như Avast, Avira, AVG, ESET, F-Secure, BitDefender… Bản Bkav 2018 đã cập nhật key, người dùng nên update Bkav lên bản mới nhất 2018 để được vá lỗ hổng.
Sau khi update, ta khởi động lại máy và sử dụng tool kiểm tra xem đã được bảo vệ chưa.
Update ngày 29/1: Nếu người dùng gặp lỗi khởi động lại hoặc màn hình xanh sau khi update bản vá Tuesday ngày 9/1/2018, hãy cài đặt bản patch KB4078130 để khắc phục.
Update bản vá trên Ubuntu
Lỗ hổng Meltdown đã được vá trên các bản Ubuntu 17.10, 16.04, 14.04 và 12.04. Người dùng nên nhanh chóng update bản vá cho các HĐH này.
Còn Spectre vẫn chưa có bản vá, mà mới đang được thử nghiệm trên một số bản nhân Linux. Người dùng nên theo dõi thường xuyên các thông tin cập nhật trên trang sau: https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/SpectreAndMeltdown
Cập nhật bản vá trên Apple
Apple đã cập nhật bản vá cho Meltdown và Spectre trên macOS High Sierra (10.13.2) và iOS (11.2.2).
Cập nhật bản vá trên Android
Google đã tung ra bản vá cho điện thoại Android của họ trong bản update security ngày 5/1/2018. Do đó, người dùng điện thoại Nexus, Pixel đã được bảo vệ. Tuy nhiên, đối với những sản phẩm Android của các hãng khác dường như vẫn chưa có thông tin chính thức về việc vá cho các lỗ hổng này.
Cập nhật bản vá cho các trình duyệt.
Như đã trình bày, Meltdown và Spectre có khả năng bị khai thác qua trình duyệt, tức là chỉ cần lướt web, người dùng cũng có thể bị ăn cắp dữ liệu cá nhân, các thông tin nhạy cảm trong máy tính của họ. Do đó, các trình duyệt đã tung ra bản update cho 2 lỗi
này.
Firefox, Safari
Mozilla đã phát hành bản Firefox 57.0.4 để bảo vệ người dùng trước Meltdown và Spectre. Còn trên iOS và macOS, Safari cũng đã có bản vá.
Google Chrome
Đối với người dùng Google Chrome, bản vá chính thức sẽ được phát hành vào 23/1/2018 với Chrome 64. Hiện tại, để tự vệ trước các cuộc tấn công Meltdown/Spectre qua web, người dùng có thể kích hoạt tính năng Site Isolation, giúp việc khai thác các lỗ hổng này trở lên khó hơn:
- Copy chrome://flags/#enable-site-per-process vào thanh URL và nhấn Enter.
- Tìm dòng Strict Site Isolation và chọn Enable.
- Sau đó chọn Relauch để khởi động lại trình duyệt.
Để được bảo vệ toàn diện, người dùng còn cần cài đặt các bản vá firmware từ các nhà sản xuất thiết bị. Các lỗi Metldown và Spectre là lỗi của chip xử lý, nên các giải pháp phần mềm như update HĐH, trình duyệt chỉ là tình thế giải pháp tạm thời. Người dùng nên theo dõi trên các trang sau của các nhà sản xuất tương ứng để update khi có bản vá:
========================================================================
Fujitsu: https://www.fujitsu.com/global/support/products/software/security/products-f/jvn-93823979e.html
Toshiba: http://go.toshiba.com/intel-side-channel
========================================================================Vấn đề giảm hiệu năng CPU khi update các bản vá tạm thời
Theo đánh giá các chuyên gia, việc vá lỗi sẽ ít nhiều làm giảm hiệu năng của CPU, đặc biệt là trên Linux, CPU có thể giảm hiệu năng từ 5 đến 30%, tùy thuộc vào từng loại chip xử lý. Còn trên Windows, một số bài test cho thấy hiệu năng không bị giảm nhiều.
Để không bị giảm hiệu năng xử lý, các nhà sản xuất CPU cần phải hành động và chấp nhận thiết kế lại kiến trúc của CPU.
Khuyến cáo
- Người dùng nên ưu tiên Update trình duyệt trước, phòng tránh các tấn công qua web.
- Không nên vào các trang web lạ, chạy các chương trình không đáng tin cậy, và cài đặt phần mềm diệt virus.
- Cập nhật bản vá cho HĐH; đối với các phiên bản chưa có bản vá, cần phải theo dõi thường xuyên để cập nhật kịp thời.
- https://whitehat.vn/?threads/10225 (Microsoft tung bản vá khẩn cấp KB4078130 để sửa lỗi reboot/blue screen sau bản vá Tuesday ngày 9/1/2018)
- https://thehackernews.com/2018/01/meltdown-spectre-vulnerability.html (giải thích về lỗ hổng)
- https://danielmiessler.com/blog/simple-explanation-difference-meltdown-spectre/ (giải thích về lỗ hổng)
- https://www.react-etc.net/entry/exploiting-speculative-execution-meltdown-spectre-via-javascript (lỗ hổng có thể khai thác qua trình duyệt)
- http://www.tomshardware.com/news/meltdown-spectre-exploit-browser-javascript,36221.html (lỗ hổng có thể khai thác qua trình duyệt)
- https://www.bloomberg.com/news/arti...s-all-macs-iphones-ipads-exposed-to-chip-flaw (Apple vá lỗ hổng)
- http://neosmart.net/blog/2018/windows-vulnerable-to-meltdown-spectre-until-january-9/ (có danh sách các bản vá)
- https://www.macworld.com/article/3245778/apple-phone/apple-meltdown-spectre-cpu-flaws-statement.html (Apple vá lỗ hổng)
- https://www.techspot.com/article/1554-meltdown-flaw-cpu-performance-windows/ (ảnh hưởng về hiệu năng CPU khi vá)
- https://www.techworm.net/2018/01/mi...ndows-updates-antivirus-not-set-properly.html
- https://www.techrepublic.com/article/windows-meltdown-patch-find-out-/your-pc-is-compatible/ (danh sách các AV tương thích)
- https://support.microsoft.com/en-us...your-windows-devices-against-spectre-meltdown
Chỉnh sửa lần cuối bởi người điều hành: