Microcode Decryptor, một công cụ cho phép bạn giải mã vi mã của bộ xử lý Intel

Một nhóm Các nhà nghiên cứu bảo mật từ nhóm uCode đã phát hành phát hành mã nguồn dự án bộ giải mã vi mã và điều đó cho phép thực hiện chính xác những gì tên gợi ý: nó là một công cụ, bao gồm ba tập lệnh Python và có sẵn trên GitHub.

Bộ giải mã vi mã cho phép giải mã vi mã của một số bộ xử lý Intel chẳng hạn như Atom, Pentium và Celeron dựa trên vi kiến ​​trúc Goldmont và Goldmont Plus, mở ra cánh cửa cho các tình huống khác nhau, chẳng hạn như hiểu cách Intel đã triển khai các tính năng bộ xử lý nhất định hoặc triển khai các tính năng và bản sửa lỗi bảo mật khác nhau.

Kỹ thuật mở khóa màu đỏ được phát triển bởi cùng các nhà nghiên cứu vào năm 2020 có thể được sử dụng để trích xuất vi mã đã được mã hóa. Khả năng giải mã vi mã được đề xuất cho phép khám phá cấu trúc bên trong của vi mã và các phương pháp thực hiện các lệnh máy x86. Ngoài ra, các nhà nghiên cứu đã khôi phục định dạng cập nhật chương trình cơ sở, thuật toán mã hóa và khóa được sử dụng để bảo vệ vi mã (RC4).

Để xác định khóa mã hóa nào sẽ sử dụng, một lỗ hổng trong Intel TXE đã được sử dụng để kích hoạt chế độ gỡ lỗi không có tài liệu, được các nhà nghiên cứu đặt tên mã là “Red Unlock”. Trong chế độ gỡ lỗi, chúng tôi đã quản lý để tải một kết xuất với một vi mã đang hoạt động trực tiếp từ CPU và trích xuất thuật toán và các khóa từ đó.

Bộ giải mã vi mã nó chỉ cho phép giải mã vi mã, nhưng nó không cho phép thay đổi nó, vì tính toàn vẹn của vi mã được xác minh thêm bằng chữ ký điện tử dựa trên thuật toán RSA.

Về cách thức phát triển của Microcode Decryptor, họ đề cập rằng nó đã xảy ra ba năm trước khi Goryachy và Ermolov tìm thấy một lỗ hổng nghiêm trọng, được lập chỉ mục là Intel SA-00086, cho phép họ thực thi mã mà họ lựa chọn bên trong không phụ thuộc vào chip kernel. bao gồm một hệ thống con được gọi là Intel Management Engine.

Intel đã sửa lỗi và phát hành bản vá, nhưng vì chip luôn có thể được quay trở lại phiên bản phần sụn trước đó và sau đó bị khai thác, nên không có cách nào để loại bỏ lỗ hổng một cách hiệu quả.

Sau đó (năm tháng trước), bộ ba nhà khoa học đã có thể sử dụng lỗ hổng để truy cập vào một chế độ dịch vụ được tích hợp trong chip Intel, trong một cái gật đầu với bộ phim The Matrix, các nhà nghiên cứu đã đặt tên cho công cụ của họ để truy cập trình gỡ lỗi này trước đây là Chip Red. Pill, bởi vì nó cho phép các nhà nghiên cứu trải nghiệm hoạt động bên trong của một con chip thường không có giới hạn.

Người phát ngôn của Intel nói rằng:

"Không nên có rủi ro bảo mật" do tính khả dụng của công cụ. Trên thực tế, công ty cho biết việc cho phép nhiều người hơn xem xét vi mã của Intel có thể giúp nhà sản xuất chip xác định nhiều lỗ hổng hơn trong tương lai. Đối với bất kỳ ai thành công trong việc này, điều đó có nghĩa là có thể kiếm được một số tiền thông qua chương trình tiền thưởng lỗi của Intel.

“Khả năng phân tích vi mã của các nhà nghiên cứu có thể cho phép phát hiện ra các lỗ hổng mới. Vì vi mã này đã bị lộ, Intel mời các nhà nghiên cứu tham gia vào chương trình thưởng lỗi vi mã trong trường hợp phát hiện ra bất kỳ vấn đề nào, ”họ nói với chúng tôi.

Về phần mình, các nhà phát triển của công cụ này đã nhận xét rằng

"Cơ hội đọc vi mã CPU có thể giúp hiểu cách Intel triển khai các công nghệ như Intel Trusted Execution Technology (TXT) hoặc giảm thiểu các lỗ hổng nghiêm trọng như Meltdown và Spectre."

Yermolov, một trong những nhà khoa học khác, nói thêm rằng tính khả dụng của công cụ có nghĩa là rằng mọi người bây giờ bạn có thể khám phá XuCode, một biến thể mã x86 ở chế độ 64 bit được sử dụng để triển khai các phần của Intel SGX được tải xuống dưới dạng bản cập nhật vi mã. SGX là công nghệ của Intel để tạo vùng nhớ bảo mật: Đây là những vùng được bảo vệ mà các chương trình và người dùng khác, bao gồm cả hệ điều hành hoặc hypervisor, không thể can thiệp vào.

XuCode khá thú vị: các hướng dẫn dành riêng cho x86 để quản lý các mã SGX phức tạp đến mức chúng được chia thành các chuỗi lệnh XuCode thực hiện các thao tác cần thiết.

Các hướng dẫn XuCode này là tiêu chuẩn cho kiến ​​trúc x86 64-bit với một số phần mở rộng và được bộ xử lý chia nhỏ thành các vi hoạt động x86 thông thường. Khi một ứng dụng sử dụng lệnh SGX mức cao, bộ xử lý có thể chuyển đến XuCode của nó để hoạt động.

Các chuỗi XuCode này được lưu trữ trong vi mã và hiện có thể được trích xuất bằng các tập lệnh Python ở trên và được phân tích bằng bộ công cụ kỹ thuật đảo ngược x86 tiêu chuẩn.

Cuối cùng nếu bạn muốn biết thêm về nó Về công cụ, bạn có thể kiểm tra chi tiết tại liên kết sau.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.