Chip OpenTitan mã nguồn mở sẽ thay thế nguồn gốc niềm tin độc quyền của Intel và ARM

Chip OpenTitan mã nguồn mở sẽ thay thế nguồn gốc niềm tin độc quyền của Intel và ARM

Làm thế nào để làm gì đó RISC thấp với Google và các nhà tài trợ khác ngày 5 tháng 2019 năm XNUMX trình bày dự án mởTitan, gọi là “dự án nguồn mở đầu tiên tạo ra kiến ​​trúc chip mở, chất lượng cao với gốc rễ của sự tin cậy (RoT) ở cấp độ phần cứng.”

OpenTitan dựa trên kiến ​​trúc RISC-V là chip chuyên dụng để cài đặt trên máy chủ trong trung tâm dữ liệu và trong bất kỳ thiết bị nào khác cần đảm bảo tính xác thực khi khởi động, bảo vệ chương trình cơ sở khỏi những thay đổi và loại bỏ khả năng có rootkit: đây là các bo mạch chủ, card mạng, bộ định tuyến, thiết bị IoT, thiết bị di động, v.v.

Tất nhiên, các mô-đun tương tự tồn tại trong các bộ xử lý hiện đại. Ví dụ: mô-đun Intel Hardware Boot Guard là nguồn gốc của sự tin cậy đối với bộ xử lý Intel. Nó xác minh tính xác thực của UEFI BIOS thông qua chuỗi tin cậy trước khi tải HĐH. Nhưng câu hỏi là, chúng ta có thể tin tưởng vào nguồn gốc niềm tin độc quyền đến mức nào, vì chúng ta không đảm bảo rằng sẽ không có lỗi trong thiết kế và không có cách nào để kiểm tra nó? Xem bài viết “Tải xuống đáng tin cậy của Schrödinger. Bộ bảo vệ khởi động Intel" với mô tả về “làm thế nào một lỗi đã được sao chép trong nhiều năm trong quá trình sản xuất của một số nhà cung cấp lại cho phép kẻ tấn công tiềm năng sử dụng công nghệ này để tạo ra một rootkit ẩn trong hệ thống mà không thể xóa được (ngay cả với một lập trình viên).

Mối đe dọa về sự xâm phạm thiết bị trong chuỗi cung ứng là thực tế một cách đáng ngạc nhiên: rõ ràng là bất kỳ kỹ sư điện tử nghiệp dư nào cũng có thể có thể hàn một lỗi vào bo mạch chủ máy chủsử dụng thiết bị có giá không quá 200 USD. Một số chuyên gia nghi ngờ rằng “các tổ chức có ngân sách hàng trăm triệu USD có thể làm việc này trong nhiều năm”. Mặc dù không có bằng chứng nhưng về mặt lý thuyết là có thể.

"Nếu bạn không thể tin tưởng vào bộ nạp khởi động phần cứng thì trò chơi sẽ kết thúc," nói Gavin Ferris, thành viên hội đồng quản trị của lowRISC. - Hệ điều hành làm gì không quan trọng - nếu vào thời điểm hệ điều hành tải mà bạn bị xâm phạm, thì phần còn lại là vấn đề kỹ thuật. Bạn đã hoàn thành rồi."

Vấn đề này cần được giải quyết bằng nền tảng phần cứng mở đầu tiên OpenTitan (Kho lưu trữ GitHub, документация, thông số phần cứng). Google cho biết việc loại bỏ các giải pháp độc quyền sẽ giúp thay đổi “ngành công nghiệp RoT chậm chạp và thiếu sót”.

Bản thân Google bắt đầu phát triển Titan sau khi phát hiện ra hệ điều hành Minix được tích hợp trong chip Intel Management Engine (ME). Hệ điều hành phức tạp này đã mở rộng bề mặt tấn công theo những cách không thể đoán trước và không thể kiểm soát được. Google đã cố gắng loại bỏ Công cụ quản lý Intel (ME), nhưng không thành công.

Gốc rễ của niềm tin là gì?

Mỗi giai đoạn của quá trình khởi động hệ thống sẽ kiểm tra tính xác thực của giai đoạn tiếp theo, từ đó tạo ra chuỗi tin cậy.

Root of Trust (RoT) là một xác thực dựa trên phần cứng nhằm đảm bảo rằng nguồn của lệnh thực thi đầu tiên trong chuỗi tin cậy không thể bị thay đổi. RoT là biện pháp bảo vệ cơ bản chống lại rootkit. Đây là giai đoạn quan trọng của quá trình khởi động, liên quan đến quá trình khởi động hệ thống tiếp theo - từ BIOS đến hệ điều hành và các ứng dụng. Nó phải xác minh tính xác thực của từng bước tải xuống tiếp theo. Để thực hiện việc này, một bộ khóa được ký điện tử sẽ được sử dụng ở mỗi giai đoạn. Một trong những tiêu chuẩn phổ biến nhất để bảo vệ khóa phần cứng là TPM (Mô-đun nền tảng đáng tin cậy).

Chip OpenTitan mã nguồn mở sẽ thay thế nguồn gốc niềm tin độc quyền của Intel và ARM
Thiết lập một gốc rễ của niềm tin. Trên đây là quy trình khởi động gồm năm bước tạo ra một chuỗi tin cậy, bắt đầu từ bộ nạp khởi động trong bộ nhớ bất biến. Mỗi bước sử dụng khóa chung để xác minh danh tính của thành phần tiếp theo sẽ được tải. Minh họa từ cuốn sách của Perry Lee "Kiến trúc Internet vạn vật"

RoT có thể được khởi chạy theo nhiều cách khác nhau:

  • tải hình ảnh và khóa gốc từ phần sụn hoặc bộ nhớ bất biến;
  • lưu trữ khóa gốc trong bộ nhớ lập trình một lần bằng cách sử dụng các bit cầu chì;
  • Đang tải mã từ vùng nhớ được bảo vệ vào bộ lưu trữ được bảo vệ.

Các bộ xử lý khác nhau triển khai gốc của sự tin cậy một cách khác nhau. Intel và ARM
hỗ trợ các công nghệ sau:

  • Vùng tin cậy ARM. ARM bán khối silicon độc quyền cho các nhà sản xuất chip để cung cấp nguồn gốc của sự tin cậy và các cơ chế bảo mật khác. Điều này tách bộ vi xử lý khỏi lõi không an toàn; nó chạy Trusted OS, một hệ điều hành an toàn với giao diện được xác định rõ ràng để tương tác với các thành phần không an toàn. Các tài nguyên được bảo vệ nằm trong lõi đáng tin cậy và phải càng nhẹ càng tốt. Việc chuyển đổi giữa các thành phần thuộc các loại khác nhau được thực hiện bằng cách sử dụng chuyển đổi ngữ cảnh phần cứng, loại bỏ nhu cầu về phần mềm giám sát an toàn.
  • Bảo vệ khởi động Intel là một cơ chế phần cứng để xác minh tính xác thực của khối khởi động ban đầu bằng phương tiện mật mã hoặc thông qua quy trình đo lường. Để xác minh khối ban đầu, nhà sản xuất phải tạo khóa 2048 bit, bao gồm hai phần: công khai và riêng tư. Khóa công khai được in trên bảng bằng cách “kích nổ” các bit cầu chì trong quá trình sản xuất. Các bit này được sử dụng một lần và không thể thay đổi. Phần riêng tư của khóa tạo chữ ký số để xác thực giai đoạn tải xuống tiếp theo.

Nền tảng OpenTitan hiển thị các bộ phận chính của hệ thống phần cứng/phần mềm như vậy, như được hiển thị trong sơ đồ bên dưới.

Chip OpenTitan mã nguồn mở sẽ thay thế nguồn gốc niềm tin độc quyền của Intel và ARM

Nền tảng OpenTitan

Việc phát triển nền tảng OpenTitan được quản lý bởi tổ chức phi lợi nhuận lowRISC. Đội ngũ kỹ thuật có trụ sở tại Cambridge (Anh) và nhà tài trợ chính là Google. Các đối tác sáng lập bao gồm ETH Zurich, G+D Mobile Security, Nuvoton Technology và Western Digital.

Google đã công bố một thông báo dự án trên blog của công ty Nguồn mở Google. Công ty cho biết OpenTitan cam kết "cung cấp hướng dẫn chất lượng cao về thiết kế và tích hợp RoT để sử dụng trong các máy chủ trung tâm dữ liệu, bộ lưu trữ, thiết bị biên và hơn thế nữa."

Gốc của sự tin cậy là mắt xích đầu tiên trong chuỗi tin cậy ở mức thấp nhất trong một mô-đun điện toán đáng tin cậy, luôn được hệ thống tin cậy hoàn toàn.

RoT rất quan trọng đối với các ứng dụng bao gồm cơ sở hạ tầng khóa công khai (PKI). Nó là nền tảng của hệ thống bảo mật mà một hệ thống phức tạp như ứng dụng IoT hoặc trung tâm dữ liệu dựa trên đó. Vì vậy, rõ ràng tại sao Google hỗ trợ dự án này. Nó hiện có 19 trung tâm dữ liệu trên năm châu lục. Các trung tâm dữ liệu, bộ lưu trữ và các ứng dụng quan trọng có bề mặt tấn công rộng lớn và để bảo vệ cơ sở hạ tầng này, Google ban đầu đã phát triển nguồn gốc tin cậy của riêng mình trên chip Titan.

Chip Titan độc quyền dành cho trung tâm dữ liệu của Google lần đầu tiên được giới thiệu vào tháng 2017 năm XNUMX tại hội nghị Google Cloud Next. “Máy tính của chúng tôi thực hiện kiểm tra mật mã trên từng gói phần mềm và sau đó quyết định xem có cấp cho nó quyền truy cập vào tài nguyên mạng hay không. Titan tích hợp vào quá trình này và cung cấp các lớp bảo vệ bổ sung”, đại diện Google cho biết tại buổi thuyết trình đó.

Chip OpenTitan mã nguồn mở sẽ thay thế nguồn gốc niềm tin độc quyền của Intel và ARM
Chip Titan trong máy chủ Google

Kiến trúc Titan trước đây thuộc sở hữu của Google nhưng hiện được đưa vào phạm vi công cộng như một dự án nguồn mở.

Giai đoạn đầu tiên của dự án là tạo ra thiết kế RoT hợp lý ở cấp độ chip, bao gồm bộ vi xử lý nguồn mở ibex RISC thấp, bộ xử lý mật mã, bộ tạo số ngẫu nhiên phần cứng, hệ thống phân cấp khóa và bộ nhớ để lưu trữ cố định và không thay đổi, cơ chế bảo mật, thiết bị ngoại vi I/O và quy trình khởi động an toàn.

Google cho biết OpenTitan dựa trên ba nguyên tắc chính:

  • mọi người đều có cơ hội kiểm tra nền tảng và đóng góp;
  • tăng tính linh hoạt bằng cách mở ra thiết kế an toàn về mặt logic không bị chặn bởi các hạn chế của nhà cung cấp độc quyền;
  • chất lượng được đảm bảo không chỉ bởi bản thân thiết kế mà còn bởi phần sụn và tài liệu tham khảo.

“Các chip hiện tại có nguồn gốc từ sự tin cậy là rất độc quyền. Dominic Rizzo, chuyên gia bảo mật chính của dự án Google Titan, cho biết họ tuyên bố là an toàn nhưng trên thực tế, bạn coi đó là điều hiển nhiên và không thể tự mình xác minh. “Giờ đây, lần đầu tiên, có thể cung cấp bảo mật mà không cần phải tin tưởng mù quáng vào các nhà phát triển thiết kế niềm tin gốc độc quyền. Cho nên nền móng không những vững chắc, còn có thể kiểm chứng được.”

Rizzo nói thêm rằng OpenTitan có thể được coi là "một thiết kế hoàn toàn minh bạch so với tình trạng hiện tại."

Theo các nhà phát triển, OpenTitan không nên được coi là một sản phẩm hoàn chỉnh vì quá trình phát triển vẫn chưa kết thúc. Họ cố tình công khai các thông số kỹ thuật và thiết kế trong quá trình phát triển để mọi người có thể xem xét, cung cấp đầu vào và cải tiến hệ thống trước khi bắt đầu sản xuất.

Để bắt đầu sản xuất chip OpenTitan, bạn cần đăng ký và được chứng nhận. Rõ ràng là không cần tiền bản quyền.

Nguồn: www.habr.com

Thêm một lời nhận xét