Các cuộc tấn công vật lý mới đang nhanh chóng làm suy yếu hệ thống phòng thủ enclave an toàn từ Nvidia, AMD và Intel. Các TEE trên chip có thể chống lại hệ điều hành bị root nhưng lại sụp đổ ngay lập tức trước các cuộc tấn công vật lý giá rẻ.
Môi trường thực thi tin cậy, hay TEE, có mặt khắp nơi - trong kiến trúc blockchain, hầu như mọi dịch vụ đám mây, và các ứng dụng tính toán liên quan đến AI, tài chính và nhà thầu quốc phòng. Thật khó để phóng đại sự phụ thuộc mà toàn bộ các ngành công nghiệp có vào ba TEE cụ thể: Confidential Compute từ Nvidia, SEV-SNP từ AMD, và SGX cùng TDX từ Intel. Cả ba đều đi kèm với cam kết rằng dữ liệu bí mật và tính toán nhạy cảm không thể bị xem hoặc thay đổi, ngay cả khi máy chủ đã bị xâm phạm hoàn toàn ở kernel hệ điều hành.
Một bộ ba cuộc tấn công vật lý mới lạ đặt ra những câu hỏi mới về tính bảo mật thực sự mà các TEE này cung cấp và những lời hứa phóng đại cùng quan niệm sai lầm đến từ các công ty lớn nhỏ sử dụng chúng.
Cuộc tấn công gần đây nhất, được công bố vào thứ Ba, được gọi là TEE.fail. Nó đánh bại các biện pháp bảo vệ TEE mới nhất từ cả ba nhà sản xuất chip. Cuộc tấn công chi phí thấp, độ phức tạp thấp này hoạt động bằng cách đặt một mảnh phần cứng nhỏ giữa một chip bộ nhớ vật lý duy nhất và khe cắm bo mạch chủ mà nó được cắm vào. Nó cũng yêu cầu kẻ tấn công xâm phạm kernel hệ điều hành. Một khi cuộc tấn công ba phút này được hoàn thành, Confidential Compute, SEV-SNP và TDX/SDX không còn có thể tin cậy được. Không giống như các cuộc tấn công Battering RAM và Wiretap từ tháng trước - chỉ hoạt động với CPU sử dụng bộ nhớ DDR4 - TEE.fail hoạt động với DDR5, cho phép chúng hoạt động với các TEE mới nhất.
Một Số Điều Kiện Áp Dụng
Cả ba nhà sản xuất chip đều loại trừ các cuộc tấn công vật lý khỏi mô hình mối đe dọa cho TEE của họ, còn được gọi là secure enclave. Thay vào đó, các cam kết được giới hạn trong việc bảo vệ dữ liệu và thực thi khỏi việc xem hoặc can thiệp, ngay cả khi kernel OS chạy bộ xử lý đã bị xâm phạm. Không có nhà sản xuất chip nào làm nổi bật những ngoại lệ này, và đôi khi họ cung cấp những tuyên bố gây nhầm lẫn về các biện pháp bảo vệ TEE được cung cấp.
Nhiều người dùng các TEE này đưa ra những khẳng định công khai về các biện pháp bảo vệ hoàn toàn sai, gây hiểu lầm hoặc không rõ ràng. Cả ba nhà sản xuất chip và nhiều người dùng TEE đều tập trung vào tính phù hợp của các enclave để bảo vệ máy chủ trên edge mạng, thường được đặt ở các vị trí xa xôi, nơi truy cập vật lý là mối đe dọa hàng đầu.
"Những tính năng này liên tục bị phá vỡ, nhưng điều đó không ngăn các nhà cung cấp bán chúng cho những trường hợp sử dụng này - và mọi người vẫn tiếp tục tin tưởng và dành thời gian sử dụng chúng," HD Moore, một nhà nghiên cứu bảo mật và là người sáng lập kiêm CEO của runZero, cho biết.
Ông tiếp tục: Nhìn chung, khách hàng khó có thể biết họ đang nhận được gì khi mua confidential computing trên đám mây. Đối với các triển khai tại chỗ, có thể không rõ ràng rằng các cuộc tấn công vật lý (bao gồm cả side channel) đặc biệt nằm ngoài phạm vi. Nghiên cứu này cho thấy rằng các TEE phía máy chủ không hiệu quả chống lại các cuộc tấn công vật lý, và thậm chí còn đáng ngạc nhiên hơn, Intel và AMD coi những điều này nằm ngoài phạm vi. Nếu bạn mong đợi TEE cung cấp tính toán riêng tư trong các trung tâm dữ liệu không đáng tin cậy, những cuộc tấn công này sẽ khiến bạn thay đổi suy nghĩ.
Những người đưa ra những tuyên bố này bao gồm từ các nhà cung cấp đám mây đến công cụ AI, nền tảng blockchain, và thậm chí cả các nhà sản xuất chip. Dưới đây là một số ví dụ: Cloudflare nói rằng họ đang sử dụng Secure Memory Encryption - công cụ mã hóa điều khiển SEV - để bảo vệ dữ liệu bí mật khỏi bị trích xuất từ máy chủ nếu nó bị đánh cắp.
Trong một bài đăng phác thảo khả năng sử dụng TEE để bảo mật thông tin bí mật được thảo luận trong các phiên chat, Anthropic nói rằng enclave "bao gồm các biện pháp bảo vệ chống lại các cuộc tấn công vật lý."
Marketing của Microsoft (tại đây và tại đây) dành nhiều mực để thảo luận về các biện pháp bảo vệ TEE mà không bao giờ lưu ý đến việc loại trừ.
Meta, diễn giải lại Confidential Computing Consortium, nói rằng bảo mật TEE cung cấp các biện pháp bảo vệ chống lại "quản trị viên hệ thống độc hại, chủ sở hữu cơ sở hạ tầng, hoặc bất kỳ ai khác có quyền truy cập vật lý vào phần cứng." SEV-SNP là một biện pháp phòng thủ chính bảo mật việc tích hợp các tính năng AI vào WhatsApp Messenger của Meta.
Thậm chí Nvidia cũng tuyên bố rằng bảo mật TEE của họ bảo vệ chống lại "chủ sở hữu cơ sở hạ tầng như các nhà cung cấp đám mây, hoặc bất kỳ ai có quyền truy cập vật lý vào máy chủ."
Nhà sản xuất ứng dụng nhắn tin riêng tư Signal đảm bảo với người dùng rằng việc sử dụng SGX có nghĩa là "các khóa liên quan đến mã hóa này không bao giờ rời khỏi CPU cơ bản, vì vậy chúng không thể truy cập được đối với chủ sở hữu máy chủ hoặc bất kỳ ai khác có quyền truy cập vào cơ sở hạ tầng máy chủ." Signal từ lâu đã dựa vào SGX để bảo vệ dữ liệu khám phá liên hệ.
Tôi đã đếm được hơn một chục tổ chức khác cung cấp những đảm bảo tương tự gây nhầm lẫn, gây hiểu lầm hoặc sai lệch. Thậm chí Moore - một chuyên gia bảo mật kỳ cựu với hơn ba thập kỷ kinh nghiệm - đã nói với tôi: "Phần đáng ngạc nhiên đối với tôi là Intel/AMD lại tuyên bố một cách bao quát rằng truy cập vật lý bằng cách nào đó nằm ngoài phạm vi khi đó chính là toàn bộ vấn đề."
Để công bằng, một số người dùng TEE xây dựng các biện pháp bảo vệ bổ sung trên các TEE được cung cấp sẵn. Ví dụ, Meta cho biết trong một email rằng việc triển khai SEV-SNP của WhatsApp sử dụng các biện pháp bảo vệ sẽ chặn những kẻ tấn công TEE.fail mạo danh máy chủ của họ. Công ty không phủ nhận rằng TEE.fail vẫn có thể rút ra các bí mật từ AMD TEE.
Trong khi đó, biện pháp bảo vệ chống trộm cắp của Cloudflare dựa vào SME - công cụ điều khiển mã hóa SEV-SNP. Các nhà nghiên cứu không trực tiếp thử nghiệm SME với TEE.fail. Họ đã lưu ý rằng SME sử dụng mã hóa xác định, thuộc tính mật mã khiến cả ba TEE thất bại. (Thêm về vai trò của mã hóa xác định sau.)
Những người khác nêu sai các biện pháp bảo vệ của TEE cung cấp mô tả chính xác hơn ở nơi khác. Với tất cả thông tin mâu thuẫn, không có gì lạ khi có sự nhầm lẫn.
Làm Sao Bạn Biết Máy Chủ Ở Đâu?
Nhiều người dùng TEE chạy cơ sở hạ tầng của họ bên trong các nhà cung cấp đám mây như AWS, Azure hoặc Google, nơi các biện pháp bảo vệ chống lại chuỗi cung ứng và các cuộc tấn công vật lý cực kỳ mạnh mẽ. Điều đó làm tăng đáng kể rào cản cho một cuộc tấn công kiểu TEE.fail. (Liệu các dịch vụ có thể bị chính phủ với trát đòi hầu tòa hợp lệ buộc phải tấn công TEE của chính họ hay không thì chưa rõ ràng.)
Tất cả những cảnh báo này không ngăn cản, thường có (1) ít thảo luận về tính khả thi ngày càng tăng của các cuộc tấn công vật lý giá rẻ, (2) không có bằng chứng (chưa) rằng các triển khai không dễ bị tổn thương trước ba cuộc tấn công sẽ không sụp đổ trước nghiên cứu tiếp theo, hoặc (3) không có cách nào để các bên dựa vào TEE biết máy chủ đang chạy ở đâu và liệu chúng có thoát khỏi sự xâm phạm vật lý hay không.
"Chúng tôi không biết phần cứng ở đâu," Daniel Genkin, một trong những nhà nghiên cứu đứng sau cả TEE.fail và Wiretap, cho biết trong một cuộc phỏng vấn. "Từ góc độ người dùng, tôi thậm chí không có cách nào để xác minh máy chủ ở đâu. Do đó, tôi không có cách nào để xác minh liệu nó có ở trong một cơ sở có uy tín hay trong tầng hầm của kẻ tấn công."
Nói cách khác, các bên dựa vào chứng thực từ máy chủ trên đám mây một lần nữa bị rút xuống chỉ đơn giản là tin tưởng máy tính của người khác. Như Moore quan sát, giải quyết vấn đề đó chính xác là lý do TEE tồn tại.
Trong ít nhất hai trường hợp, liên quan đến các dịch vụ blockchain Secret Network và Crust, việc mất các biện pháp bảo vệ TEE khiến bất kỳ người dùng không đáng tin cậy nào cũng có thể trình bày chứng thực mật mã. Cả hai nền tảng đều sử dụng chứng thực để xác minh rằng một node blockchain được vận hành bởi một người dùng không thể can thiệp vào việc thực thi hoặc dữ liệu chuyển đến các node của người dùng khác. Hack Wiretap trên SGX khiến người dùng có thể chạy dữ liệu nhạy cảm và thực thi hoàn toàn bên ngoài TEE trong khi vẫn cung cấp chứng thực ngược lại. Trong cuộc tấn công AMD, kẻ tấn công có thể giải mã lưu lượng đi qua TEE.
Cả Secret Network và Crust đều bổ sung các biện pháp giảm thiểu sau khi biết về các cuộc tấn công vật lý có thể xảy ra với Wiretap và Battering RAM. Do thiếu thông điệp rõ ràng, các người dùng TEE khác có thể đang mắc những lỗi tương tự.
Một Điểm Yếu Được Định Trước
Nguyên nhân gốc rễ của cả ba cuộc tấn công vật lý là lựa chọn mã hóa xác định. Hình thức mã hóa này tạo ra cùng một ciphertext mỗi khi cùng một plaintext được mã hóa với cùng một khóa. Kẻ tấn công TEE.fail có thể sao chép các chuỗi ciphertext và sử dụng chúng trong các cuộc tấn công replay. (Ngược lại, mã hóa xác suất chống lại những cuộc tấn công như vậy vì cùng một plaintext có thể mã hóa thành một loạt các ciphertext được chọn ngẫu nhiên trong quá trình mã hóa.)
TEE.fail hoạt động không chỉ với SGX mà còn với một TEE Intel tiên tiến hơn được gọi là TDX. Cuộc tấn công cũng đánh bại các biện pháp bảo vệ được cung cấp bởi Nvidia Confidential Compute và AMD SEV-SNP TEE mới nhất. Các cuộc tấn công chống lại TDX và SGX có thể trích xuất Attestation Key, một bí mật ECDSA chứng nhận cho một bên từ xa rằng nó đang chạy phần mềm cập nhật và không thể để lộ dữ liệu hoặc thực thi chạy bên trong enclave. Attestation Key này lần lượt được ký bởi chứng chỉ số X.509 của Intel cung cấp đảm bảo mật mã rằng khóa ECDSA có thể được tin cậy. TEE.fail hoạt động với tất cả CPU Intel hiện đang hỗ trợ TDX và SDX.
Với việc sở hữu khóa, kẻ tấn công có thể sử dụng máy chủ bị xâm phạm để nhìn vào dữ liệu hoặc can thiệp vào mã chảy qua enclave và gửi cho bên phụ thuộc một đảm bảo rằng thiết bị an toàn. Với khóa này, ngay cả CPU được xây dựng bởi các nhà sản xuất chip khác cũng có thể gửi chứng thực rằng phần cứng được bảo vệ bởi Intel TEE.
GPU được trang bị Nvidia Confidential Compute không ràng buộc báo cáo chứng thực với máy ảo cụ thể được bảo vệ bởi GPU cụ thể. TEE.fail khai thác điểm yếu này bằng cách "mượn" báo cáo chứng thực hợp lệ từ GPU được điều hành bởi kẻ tấn công và sử dụng nó để mạo danh GPU chạy Confidential Compute. Biện pháp bảo vệ có sẵn trên GPU máy chủ H100/200 và B100/200 của Nvidia.
"Điều này có nghĩa là chúng ta có thể thuyết phục người dùng rằng ứng dụng của họ (nghĩ đến các cuộc trò chuyện riêng tư với LLM hoặc Mô hình Ngôn ngữ Lớn) đang được bảo vệ bên trong TEE của GPU trong khi thực tế nó đang chạy rõ ràng," các nhà nghiên cứu viết trên một trang web chi tiết cuộc tấn công. "Vì báo cáo chứng thực được 'mượn', chúng ta thậm chí không sở hữu GPU ngay từ đầu."
SEV-SNP (Secure Encrypted Virtualization-Secure Nested Paging) sử dụng ẩn giấu ciphertext trong CPU EPYC của AMD dựa trên kiến trúc Zen 5. AMD đã thêm nó để ngăn chặn một cuộc tấn công trước đó được gọi là Cipherleaks, cho phép các hypervisor độc hại trích xuất khóa mật mã được lưu trữ trong enclave của máy ảo. Tuy nhiên, Ciphertext không ngăn chặn các cuộc tấn công vật lý. Với khả năng mở lại side channel mà Cipherleaks dựa vào, TEE.fail có thể đánh cắp thông tin đăng nhập OpenSSL và tài liệu khóa khác dựa trên mã hóa thời gian không đổi.
Rẻ, Nhanh Và Có Kích Thước Bằng Một Chiếc Cặp
"Bây giờ chúng tôi đã can thiệp lưu lượng DDR5, công việc của chúng tôi cho thấy rằng ngay cả những TEE hiện đại nhất trên tất cả các nhà cung cấp với phần cứng có sẵn cũng dễ bị tổn thương trước các cuộc tấn công vật lý giá rẻ," Genkin nói.
Thiết bị cần thiết cho TEE.fail chạy thiết bị có sẵn trên thị trường có giá dưới 1.000 đô la. Một trong những thiết bị mà các nhà nghiên cứu chế tạo vừa với chiếc cặp 17 inch, vì vậy nó có thể được buôn lậu vào cơ sở chứa máy chủ được bảo vệ TEE. Một khi cuộc tấn công vật lý được thực hiện, thiết bị không cần phải được kết nối lại. Kẻ tấn công phá vỡ TEE trên các máy chủ họ vận hành không cần che giấu, cho phép họ sử dụng thiết bị lớn hơn, mà các nhà nghiên cứu cũng đã chế tạo.



Các nhà nghiên cứu đã chứng minh các cuộc tấn công chống lại một loạt dịch vụ dựa vào các biện pháp bảo vệ TEE của các nhà sản xuất chip. (Vì lý do đạo đức, các cuộc tấn công được thực hiện chống lại cơ sở hạ tầng giống hệt nhưng tách biệt khỏi mạng của các mục tiêu.) Một số cuộc tấn công bao gồm BuilderNet, dstack và Secret Network.
BuilderNet là một mạng lưới các trình xây dựng khối Ethereum sử dụng TDX để ngăn các bên do thám dữ liệu của người khác và đảm bảo tính công bằng và tiền chứng minh được phân phối lại một cách trung thực. Mạng xây dựng các khối trị giá hàng triệu đô la mỗi tháng.
"Chúng tôi đã chứng minh rằng một nhà điều hành độc hại với khóa chứng thực có thể tham gia BuilderNet và có được bí mật cấu hình, bao gồm khả năng giải mã orderflow bí mật và truy cập ví Ethereum để trả cho validators," trang web TEE.fail giải thích. "Ngoài ra, một nhà điều hành độc hại có thể xây dựng các khối tùy ý hoặc frontrun (tức là, xây dựng giao dịch mới với phí cao hơn để đảm bảo của họ được thực hiện trước) các giao dịch bí mật để kiếm lợi nhuận trong khi vẫn cung cấp khả năng phủ nhận."
Cho đến nay, các nhà nghiên cứu cho biết, BuilderNet chưa cung cấp các biện pháp giảm thiểu. Nỗ lực liên hệ với các quan chức BuilderNet không thành công.
dstack là một công cụ để xây dựng các ứng dụng bí mật chạy trên máy ảo được bảo vệ bởi Nvidia Confidential Compute. Các nhà nghiên cứu đã sử dụng TEE.fail để giả mạo chứng thực chứng nhận rằng khối lượng công việc được thực hiện bởi TDX sử dụng biện pháp bảo vệ Nvidia. Nó cũng sử dụng chứng thực "mượn" để giả mạo quyền sở hữu GPU mà bên phụ thuộc tin tưởng.
Secret Network là một nền tảng tự quảng cáo là "blockchain mainnet đầu tiên với hợp đồng thông minh bảo vệ quyền riêng tư," một phần bằng cách mã hóa dữ liệu và thực thi on-chain với SGX. Các nhà nghiên cứu cho thấy rằng TEE.fail có thể trích xuất "Concensus Seed," khóa riêng chính phía mạng mã hóa các giao dịch bí mật trên Secret Network. Như đã lưu ý, sau khi biết về Wiretap, Secret Network đã loại bỏ khả năng này bằng cách thiết lập danh sách cho phép "được tuyển chọn" của các node đã biết, đáng tin cậy được phép trên mạng và tạm dừng việc chấp nhận các node mới. Dù mang tính học thuật hay không, khả năng tái tạo cuộc tấn công bằng TEE.fail cho thấy rằng Wiretap không phải là thành công một lần.
Một Quả Hạt Khó Nứt
Như đã giải thích trước đó, nguyên nhân gốc rễ của tất cả các cuộc tấn công TEE.fail là mã hóa xác định, tạo thành cơ sở cho các biện pháp bảo vệ trong TEE của cả ba nhà sản xuất chip. Hình thức mã hóa yếu hơn này không phải lúc nào cũng được sử dụng trong TEE. Khi Intel ban đầu triển khai SGX, tính năng này được đặt trong CPU client, không phải máy chủ, để ngăn người dùng xây dựng thiết bị có thể trích xuất nội dung có bản quyền như video độ nét cao.
Những phiên bản đầu đó mã hóa không quá 256MB RAM, một không gian đủ nhỏ để sử dụng hình thức mã hóa xác suất mạnh mẽ hơn nhiều. Ngược lại, các TEE được tích hợp vào chip máy chủ thường phải mã hóa hàng terabyte RAM. Mã hóa xác suất không mở rộng đến kích thước đó mà không có hình phạt hiệu suất nghiêm trọng. Tìm giải pháp phù hợp với chi phí này sẽ không dễ dàng.
Một biện pháp giảm thiểu trong thời gian ngắn là đảm bảo rằng mỗi khối ciphertext 128-bit có đủ entropy. Thêm plaintext ngẫu nhiên vào các khối ngăn chặn lặp lại ciphertext. Các nhà nghiên cứu nói rằng entropy có thể được thêm bằng cách xây dựng bố cục bộ nhớ tùy chỉnh chèn bộ đếm 64-bit với giá trị ban đầu ngẫu nhiên vào mỗi khối 64-bit trước khi mã hóa nó.
Biện pháp đối phó cuối cùng mà các nhà nghiên cứu đề xuất là thêm xác minh vị trí vào cơ chế chứng thực. Trong khi các cuộc tấn công nội bộ và chuỗi cung ứng vẫn là khả năng bên trong ngay cả các dịch vụ đám mây có uy tín nhất, các chính sách nghiêm ngặt khiến chúng ít khả thi hơn nhiều. Tuy nhiên, ngay cả những biện pháp giảm thiểu đó cũng không loại bỏ mối đe dọa của một cơ quan chính phủ với trát đòi hầu tòa hợp lệ ra lệnh cho một tổ chức chạy cuộc tấn công như vậy bên trong mạng của họ.
Trong một tuyên bố, Nvidia cho biết:
NVIDIA biết về nghiên cứu này. Các biện pháp kiểm soát vật lý ngoài các biện pháp kiểm soát tin cậy như những biện pháp được cung cấp bởi Intel TDX giảm rủi ro cho GPU đối với kiểu tấn công này, dựa trên các cuộc thảo luận của chúng tôi với các nhà nghiên cứu. Chúng tôi sẽ cung cấp thêm chi tiết khi nghiên cứu được công bố.
Phát ngôn viên Intel Jerry Bryant cho biết:
Giải quyết hoàn toàn các cuộc tấn công vật lý vào bộ nhớ bằng cách thêm bảo vệ tính bí mật, tính toàn vẹn và chống replay toàn diện hơn dẫn đến những đánh đổi đáng kể về Tổng Chi phí Sở hữu. Intel tiếp tục đổi mới trong lĩnh vực này để tìm các giải pháp chấp nhận được cung cấp sự cân bằng tốt hơn giữa các biện pháp bảo vệ và đánh đổi TCO.
Công ty đã công bố phản hồi tại đây và tại đây nhắc lại rằng các cuộc tấn công vật lý nằm ngoài phạm vi cho cả TDX và SGX. AMD không phản hồi yêu cầu bình luận.
Mắc Kẹt Với Băng Dán
Hiện tại, TEE.fail, Wiretap và Battering RAM vẫn là mối đe dọa dai dẳng không được giải quyết với việc sử dụng các triển khai mặc định của secure enclave của các nhà sản xuất chip. Biện pháp giảm thiểu hiệu quả nhất hiện tại là để người dùng TEE hiểu các hạn chế và hạn chế các cách sử dụng mà các nhà sản xuất chip nói không phải là một phần của mô hình mối đe dọa TEE. Secret Network thắt chặt yêu cầu cho các nhà điều hành tham gia mạng là một ví dụ về biện pháp giảm thiểu như vậy.
Moore, người sáng lập và CEO của RunZero, cho biết rằng các công ty có ngân sách lớn có thể dựa vào các giải pháp tùy chỉnh được xây dựng bởi các dịch vụ đám mây lớn hơn. Ví dụ, AWS sử dụng Nitro Card, được xây dựng bằng chip ASIC tăng tốc xử lý bằng TEE. Câu trả lời độc quyền của Google là Titanium.
"Đó là một vấn đề thực sự khó khăn," Moore nói. "Tôi không chắc trạng thái hiện tại của nghệ thuật là gì, nhưng nếu bạn không đủ khả năng mua phần cứng tùy chỉnh, điều tốt nhất bạn có thể làm là dựa vào TEE của nhà cung cấp CPU, và nghiên cứu này cho thấy điều này yếu như thế nào từ góc độ của kẻ tấn công có quyền truy cập vật lý. Enclave thực sự là một băng dán hoặc cơ chế tăng cường trên một vấn đề thực sự khó khăn, và nó vừa không hoàn hảo vừa nguy hiểm nếu bị xâm phạm, vì tất cả các lý do."







