Họ đã phát hiện lỗ hổng trong bộ xử lý Intel dẫn đến rò rỉ dữ liệu

dễ bị tổn thương

Nếu bị khai thác, những lỗ hổng này có thể cho phép kẻ tấn công truy cập trái phép vào thông tin nhạy cảm hoặc thường gây ra sự cố

Một nhóm Các nhà nghiên cứu từ các trường đại học ở Trung Quốc và Hoa Kỳ đã xác định được một lỗ hổng mới trong bộ vi xử lý Intel dẫn đến rò rỉ thông tin dựa trên kết quả của các hoạt động đầu cơ thông qua các kênh của bên thứ ba, chẳng hạn như kênh này có thể được sử dụng để tổ chức một kênh liên lạc ẩn giữa các quy trình hoặc phát hiện rò rỉ trong các cuộc tấn công Meltdown.

Bản chất của lỗ hổng là một sự thay đổi trong sổ đăng ký bộ xử lý EFLAGS, xảy ra do thực hiện các lệnh theo suy đoán, ảnh hưởng đến thời gian thực hiện tiếp theo của các lệnh JCC (nhảy khi các điều kiện cụ thể được đáp ứng).

Hoạt động đầu cơ không được hoàn thành và kết quả bị loại bỏ, nhưng thay đổi EFLAGS bị loại bỏ có thể được xác định bằng cách phân tích thời gian thực hiện của các lệnh JCC. Các hoạt động so sánh trước khi nhảy được thực hiện một cách suy đoán, nếu so sánh thành công, sẽ dẫn đến độ trễ nhỏ có thể được đo và sử dụng làm tính năng khớp nội dung.

Tấn công thực thi tạm thời là một kiểu tấn công khai thác lỗ hổng của các công nghệ tối ưu hóa CPU. Các cuộc tấn công mới xuất hiện nhanh chóng. Kênh bên là một phần quan trọng của các cuộc tấn công thực thi tạm thời để lấy dữ liệu.

Trong công việc này, chúng tôi đã phát hiện ra một lỗ hổng làm thay đổi thanh ghi EFLAGS trong quá trình thực thi nhất thời có thể có tác dụng phụ đối với lệnh Jcc (Mã điều kiện nhảy) trên CPU Intel. Dựa trên khám phá của chúng tôi, chúng tôi đề xuất một cuộc tấn công kênh bên mới khai thác thời gian thực hiện tạm thời và các hướng dẫn Jcc để phân phối dữ liệu.

Cuộc tấn công này mã hóa dữ liệu bí mật bằng cách thay đổi sổ đăng ký khiến thời gian thực hiện chậm hơn một chút và kẻ tấn công có thể đo được để giải mã dữ liệu. Cuộc tấn công này không phụ thuộc vào hệ thống bộ đệm.

Không giống như các cuộc tấn công khác tương tự thông qua các kênh của bên thứ ba, phương pháp mới không phân tích sự thay đổi về thời gian truy cập vào dữ liệu được lưu trong bộ nhớ cache và không được lưu vào bộ nhớ cache và không yêu cầu bước đặt lại bản ghi EFLAGS về trạng thái ban đầu, điều này gây khó khăn cho việc phát hiện và ngăn chặn cuộc tấn công.

cho bản trình diễn, các nhà nghiên cứu đã triển khai một biến thể của cuộc tấn công Meltdown, sử dụng trong đó một phương pháp mới để lấy thông tin về kết quả của một hoạt động đầu cơ. Hoạt động của phương pháp tổ chức rò rỉ thông tin trong một cuộc tấn công Meltdown đã được trình diễn thành công trên các hệ thống có CPU Intel Core i7-6700 và i7-7700 trong môi trường có nhân Ubuntu 22.04 và Linux 5.15. Trên hệ thống có CPU Intel i9-10980XE, cuộc tấn công chỉ thành công một phần.

Lỗ hổng Meltdown dựa trên thực tế là trong quá trình thực thi các lệnh theo suy đoán, bộ xử lý có thể truy cập vào vùng dữ liệu riêng tư và sau đó loại bỏ kết quả, vì các đặc quyền đã đặt cấm truy cập như vậy từ quy trình người dùng.

Trong một chương trình, một khối được thực thi theo suy đoán được tách ra khỏi mã chính bằng một bước nhảy có điều kiện, trong điều kiện thực luôn được kích hoạt, nhưng do thực tế là câu lệnh có điều kiện sử dụng một giá trị được tính toán mà bộ xử lý không biết trong mã ưu tiên . thực hiện, tất cả các tùy chọn nhánh được thực hiện một cách suy đoán.

Trong Meltdown cổ điển, vì cùng một bộ đệm được sử dụng cho các hoạt động được thực thi theo cách suy đoán như đối với các lệnh được thực hiện thông thường, nên trong quá trình thực thi theo cách suy đoán, có thể đặt các điểm đánh dấu trong bộ đệm phản ánh nội dung của các bit riêng lẻ trong vùng bộ nhớ đã đóng, sau đó được thực thi bình thường mã để xác định ý nghĩa của nó thông qua phân tích thời gian truy cập vào dữ liệu được lưu trong bộ nhớ cache và không lưu trong bộ nhớ cache.

Biến thể mới sử dụng thay đổi trong sổ đăng ký EFLAGS như một dấu hiệu của một rò rỉ. Trong bản trình diễn Covert Channel, một quy trình đã điều chỉnh dữ liệu được gửi để thay đổi nội dung của bản ghi EFLAGS và một quy trình khác đã phân tích cú pháp thay đổi trong thời gian chạy JCC để tạo lại dữ liệu do quy trình đầu tiên gửi.

Cuối cùng, nếu bạn muốn biết thêm về nó, bạn có thể tham khảo chi tiết trong 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.