Một tuần nữa, một BWAIN khác!
Như bạn sẽ biết nếu bạn nghe tuần trước Podcast (dấu, dấu!), BWAIN là viết tắt của Lỗi có tên ấn tượng:
Đó là biệt hiệu mà chúng tôi áp dụng khi những người tìm ra một cuộc tấn công an ninh mạng mới rất hào hứng với phát hiện của họ đến mức họ đặt cho nó một biệt danh thân thiện với PR, đăng ký một tên miền phù phiếm cho nó, xây dựng một trang web tùy chỉnh và thiết kế một logo đặc biệt cho nó.
Lần này, tên Va chạm + Sức mạnh bao gồm một ký tự dấu câu phiền phức, đây là điểm cộng trong cách đặt tên lỗi, nhưng lại là điểm trừ khi đăng ký miền internet. (Trớ trêu thay, tên miền được phép sử dụng -
, Nhưng không +
).
Vì vậy, tên miền phải được viết tắt một chút thành https://collidepower.com, nhưng dù sao thì trang web cũng sẽ cung cấp cho bạn cái nhìn tổng quan về vấn đề, ngay cả khi đã trừ dấu cộng.
Đối chiếu dữ liệu được lưu trong bộ nhớ cache và đo công suất cần thiết
Các nhà nghiên cứu đằng sau cái mới này giấy là Andreas Kogler, Jonas Juffinger, Lukas Giner, Martin Schwarzl, Daniel Gruss và Stefan Mangard từ Đại học Graz ở Áo, và Lukas Gerlach và Michael Schwarz của Trung tâm Bảo mật Thông tin CISPA Helmholtz ở Đức.
Chúng tôi sẽ không cố gắng giải thích chi tiết các hình thức khác nhau của cuộc tấn công này, bởi vì các chi tiết kỹ thuật về cách thực hiện các phép đo và mô hình toán học được sử dụng để đưa ra kết luận từ các phép đo đó rất phức tạp.
Nhưng cốt lõi của vấn đề, nếu bạn bỏ qua cho cách chơi chữ một phần, đó là bộ nhớ cache được chôn bên trong các chip xử lý hiện đại, nhằm cung cấp khả năng tăng hiệu suất vô hình và tự động…
…không phải lúc nào cũng vô hình như bạn nghĩ và đôi khi có thể làm rò rỉ một số hoặc tất cả nội dung của nó, ngay cả với các quy trình không thể nhìn thấy.
Như tên gợi ý, bộ nhớ cache (được phát âm là tiền mặt, như bằng đô la và xu, không phải tem, vì sự tôn trọng và uy tín, nếu bạn đã từng thắc mắc), giữ các bản sao đặc biệt của các giá trị dữ liệu từ RAM thông thường ở các vị trí ẩn bên trong chính chip CPU.
Nếu CPU theo dõi các địa chỉ RAM (vị trí bộ nhớ) mà bạn đã sử dụng gần đây và có thể đoán đủ chính xác địa chỉ nào bạn sẽ sớm sử dụng lại, thì CPU có thể tạm thời giữ chúng trong bộ nhớ đệm và do đó tăng tốc đáng kể quyền truy cập thứ hai của bạn vào các giá trị đó và quyền truy cập thứ ba, thứ tư, v.v.
Ví dụ: nếu bạn đang tra cứu một loạt giá trị dữ liệu trong bảng để chuyển đổi pixel hình ảnh từ định dạng màu này sang định dạng màu khác, bạn có thể thấy rằng hầu hết thời gian bảng tra cứu yêu cầu bạn truy cập địa chỉ RAM 0x06ABCC00 (có thể là nơi lưu trữ mã đặc biệt cho “pixel đen”) hoặc địa chỉ 0x3E00A040 (có thể là vị trí của mã “pixel trong suốt”).
Bằng cách tự động giữ các giá trị từ hai địa chỉ bộ nhớ thường cần đó trong bộ đệm của nó, CPU có thể làm đoản mạch (theo nghĩa bóng chứ không phải theo nghĩa đen!) các nỗ lực truy cập các địa chỉ đó trong tương lai, do đó không cần gửi tín hiệu điện ra bên ngoài bộ xử lý. trên bo mạch chủ và vào các chip RAM thực tế để đọc bản sao chính của dữ liệu được lưu trữ ở đó.
Vì vậy, dữ liệu được lưu trong bộ nhớ cache thường truy cập nhanh hơn nhiều so với dữ liệu trong RAM bo mạch chủ.
Tuy nhiên, nói chung, bạn không thể chọn thanh ghi bộ đệm nào sẽ được sử dụng để lưu trữ địa chỉ RAM nào và bạn không thể chọn thời điểm CPU quyết định dừng lưu vào bộ đệm giá trị “mã pixel trong suốt” của bạn và bắt đầu lưu vào bộ nhớ đệm chương trình khác. thay vào đó là “khóa mật mã siêu bí mật”.
Thật vậy, bộ đệm có thể chứa hỗn hợp các giá trị tự do, từ hỗn hợp tự do của các địa chỉ RAM, thuộc về hỗn hợp tự do của các tài khoản người dùng và cấp đặc quyền khác nhau, tất cả cùng một lúc.
Vì lý do này, cùng với các lý do về hiệu quả và hiệu suất, ngay cả các chương trình cấp quản trị viên cũng không thể xem trực tiếp danh sách các địa chỉ hiện đang được lưu trong bộ nhớ cache hoặc lấy giá trị của chúng để bảo vệ dữ liệu được lưu trong bộ nhớ cache khỏi bị theo dõi từ bên ngoài.
Là một lập trình viên, bạn vẫn sử dụng hướng dẫn mã máy “đọc mã pixel trong suốt từ địa chỉ 0x3E00A040”, và hệ điều hành vẫn quyết định xem bạn có quyền truy cập vào dữ liệu đó hay không dựa trên địa chỉ số 0x3E00A040, ngay cả khi dữ liệu cuối cùng đến trực tiếp từ bộ đệm thay vì từ địa chỉ RAM thực 0x3E00A040.
Giá của một bit-lật
Điều mà các nhà nghiên cứu của Collide+Power đã phát hiện ra, được đơn giản hóa rất nhiều, là mặc dù bạn không thể xem trực tiếp dữ liệu tạm thời trong bộ lưu trữ bộ đệm và do đó không thể bỏ qua biện pháp bảo vệ bộ nhớ sẽ được áp dụng nếu bạn truy cập địa chỉ RAM chính thức của nó …
…bạn có thể đoán khi nào các giá trị dữ liệu cụ thể sắp được ghi vào các thanh ghi lưu trữ bộ đệm cụ thể.
Và khi một số đã lưu trong bộ nhớ cache được thay thế bằng một số khác, bạn có thể suy luận về cả hai giá trị bằng cách đo lượng điện năng mà CPU sử dụng trong quá trình.
(Các bộ xử lý hiện đại thường bao gồm các thanh ghi nội bộ đặc biệt cung cấp các chỉ số sử dụng năng lượng cho bạn, vì vậy bạn không cần phải mở hộp máy tính và gắn dây thăm dò vật lý vào đâu đó trên bo mạch chủ.)
Thú vị thay, mức tiêu thụ năng lượng của chính CPU, khi nó ghi đè một giá trị bộ đệm bằng một giá trị mới, phụ thuộc vào số lượng bit thay đổi giữa các số.
Nếu chúng ta đơn giản hóa vấn đề thành từng byte riêng lẻ, thì ghi đè giá trị nhị phân 0b00000000
với 0b11111111
(thay đổi số thập phân 0 thành số thập phân 255) yêu cầu lật tất cả các bit trong byte, điều này sẽ tiêu thụ nhiều năng lượng nhất.
Ghi đè ký tự ASCII A
(65 ở dạng thập phân) với Z
(90 ở dạng thập phân) có nghĩa là thay đổi 0b01000001
trong 0b01011010
, trong đó bốn vị trí bit bị đảo lộn, do đó tiêu tốn một lượng điện năng trung bình
Và nếu các con số xảy ra giống nhau, thì không cần lật bit nào, điều này sẽ tiêu thụ ít năng lượng nhất.
Nói chung, nếu bạn XOR hai số với nhau và đếm số bit 1 trong câu trả lời, bạn sẽ tìm thấy số lần lật, bởi vì 0 XOR 0 = 0
và 1 XOR 1 = 0
(vì vậy số XNUMX biểu thị không lật), trong khi 0 XOR 1 = 1
và 1 XOR 0 = 1
(biểu thị một lật).
Nói cách khác, nếu bạn có thể truy cập vào một loạt các địa chỉ đã chọn của riêng mình theo cách bắt đầu một bộ thanh ghi bộ đệm cụ thể bên trong CPU, sau đó theo dõi mức tiêu thụ năng lượng đủ chính xác khi mã của người khác lấy dữ liệu của nó được gán cho các bộ đệm đó thay vào đó…
…sau đó bạn có thể suy luận về số lượng bit được lật giữa nội dung bộ đệm cũ và mới.
Tất nhiên, bạn có thể chọn các giá trị được lưu trữ trong các địa chỉ mà bạn đã khởi tạo các thanh ghi bộ đệm, vì vậy bạn không chỉ biết có bao nhiêu bit có thể được lật, mà còn biết giá trị ban đầu của các bit đó là gì trước khi các lần lật được thực hiện. địa điểm.
Điều đó cung cấp cho bạn nhiều dữ liệu thống kê hơn để dự đoán các giá trị mới có khả năng xảy ra trong bộ đệm, với điều kiện là bạn biết những gì đã có trước đây và số lượng bit có khả năng hiện đã khác.
Bạn có thể không tìm ra chính xác dữ liệu mà quy trình của nạn nhân đang sử dụng, nhưng ngay cả khi bạn có thể loại bỏ một số mẫu bit, thì bạn cũng vừa học được điều gì đó mà lẽ ra bạn không nên biết.
Và nếu dữ liệu đó là một loại khóa mã hóa nào đó, bạn có thể chuyển đổi một cuộc tấn công vũ phu không khả thi thành một cuộc tấn công mà bạn có thể thành công.
Ví dụ: nếu bạn có thể dự đoán 70 bit trong khóa mã hóa 128 bit, thì thay vì thử tất cả các tổ hợp 128 bit, đây sẽ là một nhiệm vụ bất khả thi, bạn cần thử 258 thay vào đó là các khóa khác nhau (128 – 70 = 58), điều này rất có thể khả thi.
Không cần phải hoảng sợ
May mắn thay, “lỗ hổng” này (nay được gọi là CVE-2023-20583) không chắc sẽ sớm được sử dụng để chống lại bạn.
Đó là một vấn đề lý thuyết mà các nhà sản xuất chip cần tính đến, trên cơ sở sự thật rằng các cuộc tấn công an ninh mạng “chỉ ngày càng tốt hơn và nhanh hơn”, hơn là một lỗ hổng có thể khai thác có thể được sử dụng ngày nay.
Trên thực tế, các nhà nghiên cứu thừa nhận, gần như ngượng ngùng, rằng “bạn không cần phải lo lắng".
Họ thực sự đã viết bạn in nghiêng, và dấu gạch chéo đừng lo lắng in đậm:
Trong phần kết luận của bài báo, các nhà nghiên cứu lưu ý một cách buồn bã rằng một số kết quả thực tế tốt nhất của họ với cuộc tấn công này, trong điều kiện phòng thí nghiệm lý tưởng, chỉ bị rò rỉ 5 bit một giờ.
Trên thực tế, đối với một trong các kịch bản tấn công của họ, họ thừa nhận rằng họ đã gặp phải “những hạn chế thực tế dẫn đến tỷ lệ rò rỉ hơn [một] năm cho mỗi bit”.
Vâng, bạn đã đọc chính xác - chúng tôi đã kiểm tra nó nhiều lần trên báo chỉ để đảm bảo rằng chúng tôi không tưởng tượng ra nó.
Và điều đó, tất nhiên, đặt ra câu hỏi, “Bạn phải để bộ sưu tập các bài kiểm tra truyền dữ liệu chạy trong bao lâu trước khi bạn có thể đo được tốc độ truyền thấp như vậy một cách đáng tin cậy?”
Theo tính toán của chúng tôi, một bit mỗi năm cung cấp cho bạn khoảng 125 byte mỗi thiên niên kỷ. Với tốc độ đó, hãy tải xuống bộ phim bom tấn dài ba giờ mới phát hành Oppenheimer ở chất lượng IMAX, dường như chiếm khoảng nửa terabyte, sẽ mất khoảng 4 tỷ năm. Để hiểu rõ thực tế kỳ lạ đó, bản thân Trái đất chỉ khoảng 4.54 tỷ năm tuổi, cho hoặc mất vài trăm triệu tháng.
Phải làm gì?
Cách đơn giản nhất để đối phó với CVE-2023-20538 ngay bây giờ là không làm gì cả, vì chính các nhà nghiên cứu đã khuyên bạn không nên lo lắng.
Nếu bạn cảm thấy cần phải làm gì đó, cả bộ xử lý Intel và AMD đều có cách để giảm độ chính xác của các công cụ đo điện năng của họ theo mục đích, bằng cách thêm tiếng ồn ngẫu nhiên vào số liệu điện năng.
Điều này làm cho số trung bình của bạn chính xác nhưng thay đổi các số đọc của từng cá nhân đủ để làm cho cuộc tấn công vốn đã không thực sự khả thi này thậm chí còn khó thực hiện hơn.
Giảm thiểu đo lường năng lượng của Intel được gọi là lọc giới hạn công suất trung bình (RAPL) đang chạy; AMD được gọi là chế độ xác định hiệu suất.
- Phân phối nội dung và PR được hỗ trợ bởi SEO. Được khuếch đại ngay hôm nay.
- PlatoData.Network Vertical Generative Ai. Trao quyền cho chính mình. Truy cập Tại đây.
- PlatoAiStream. Thông minh Web3. Kiến thức khuếch đại. Truy cập Tại đây.
- Trung tâmESG. Ô tô / Xe điện, Than đá, công nghệ sạch, Năng lượng, Môi trường Hệ mặt trời, Quản lý chất thải. Truy cập Tại đây.
- BlockOffsets. Hiện đại hóa quyền sở hữu bù đắp môi trường. Truy cập Tại đây.
- nguồn: https://nakedsecurity.sophos.com/2023/08/03/performance-and-security-clash-yet-again-in-collidepower-attack/
- :là
- :không phải
- :Ở đâu
- $ LÊN
- 1
- 15%
- 25
- 70
- 700
- a
- Có khả năng
- Giới thiệu
- Tuyệt đối
- truy cập
- Tài khoản
- Trợ Lý Giám Đốc
- chính xác
- chính xác
- ngang qua
- thực tế
- thêm
- Ngoài ra
- địa chỉ
- địa chỉ
- thừa nhận
- thừa nhận
- một lần nữa
- chống lại
- Tất cả
- cho phép
- dọc theo
- Đã
- Ngoài ra
- Mặc dù
- luôn luôn
- AMD
- số lượng
- an
- và
- Một
- trả lời
- bất kì
- áp dụng
- Đăng Nhập
- khoảng
- LÀ
- AS
- giao
- At
- đính kèm
- tấn công
- Các cuộc tấn công
- Nỗ lực
- Áo
- tác giả
- tự động
- Tự động
- tự động
- Trung bình cộng
- background-image
- dựa
- cơ sở
- BE
- bởi vì
- trước
- sau
- được
- BEST
- Hơn
- giữa
- Tỷ
- Một chút
- bom tấn
- đậm
- biên giới
- cả hai
- đáy
- bạo lực
- Bug
- xây dựng
- xăn lên
- nhưng
- by
- Bộ nhớ cache
- tính toán
- CAN
- trường hợp
- Trung tâm
- thay đổi
- thay đổi
- tính cách
- đã kiểm tra
- Chip
- Snacks
- Chọn
- lựa chọn
- Sự xung đột
- mã
- bộ sưu tập
- màu sắc
- COM
- kết hợp
- đến
- phức tạp
- máy tính
- phần kết luận
- điều kiện
- ăn
- tiêu thụ
- chứa
- nội dung
- nội dung
- thông thường
- chuyển đổi
- Trung tâm
- sửa chữa
- có thể
- Khóa học
- che
- nứt
- Hiện nay
- khách hàng
- An ninh mạng
- Daniel
- dữ liệu
- nhiều
- biểu thị
- phụ thuộc
- Thiết kế
- chi tiết
- ĐÃ LÀM
- khác nhau
- trực tiếp
- phát hiện
- phát hiện
- Giao diện
- do
- đô la
- miền
- Tên miền
- TÊN MIỀN
- dont
- được mệnh danh là
- trái đất
- hiệu quả
- hay
- loại bỏ
- Của người khác
- mã hóa
- đủ
- Ngay cả
- BAO GIỜ
- chính xác
- ví dụ
- kích thích
- Giải thích
- ngoài
- thực tế
- nhanh hơn
- khả thi
- cảm thấy
- vài
- Hình
- Tìm kiếm
- Lật
- Lật
- Trong
- Buộc
- định dạng
- các hình thức
- 4
- Thứ tư
- từ
- tương lai
- Tổng Quát
- Nước Đức
- được
- Cho
- được
- cho
- đi
- rất nhiều
- có
- Một nửa
- xảy ra
- khó hơn
- Có
- cao
- Thành viên ẩn danh
- Lô
- giờ
- di chuột
- Độ đáng tin của
- Hướng dẫn
- Tuy nhiên
- HTML
- HTTPS
- một trăm
- lý tưởng
- if
- hình ảnh
- không thể
- ấn tượng
- in
- bao gồm
- bao gồm
- hệ thống riêng biệt,
- thông tin
- bảo mật thông tin
- trong
- thay vì
- Intel
- dự định
- nội bộ
- Internet
- trong
- Trớ trêu thay
- IT
- ITS
- chính nó
- chỉ
- Giữ
- giữ
- Key
- phím
- Biết
- nổi tiếng
- phòng thí nghiệm
- Họ
- hàng đầu
- bị rò rỉ
- học
- ít nhất
- Rời bỏ
- trái
- Chiều dài
- niveaux
- Có khả năng
- LIMIT
- hạn chế
- Danh sách
- địa điểm thư viện nào
- . Các địa điểm
- Logo
- dài
- tìm kiếm
- tra cứu
- Thấp
- máy
- làm cho
- Các nhà sản xuất
- nhiều
- Lợi nhuận
- một giống én
- chủ
- toán học
- chất
- Vấn đề
- max-width
- Có thể..
- có nghĩa
- đo
- đo lường
- đo
- đo lường
- Bộ nhớ
- Michael
- Might
- Thiên niên kỷ
- triệu
- giảm nhẹ
- pha
- hỗn hợp
- mô hình hóa
- hiện đại
- Màn Hình
- tháng
- chi tiết
- hầu hết
- phim
- nhiều
- tên
- tên
- đặt tên
- Cần
- Mới
- Không
- Tiếng ồn
- Không áp dụng
- bình thường
- không
- tại
- con số
- số
- of
- off
- chính thức
- Xưa
- on
- ONE
- những
- có thể
- mở
- hoạt động
- hệ điều hành
- or
- Nền tảng khác
- vfoXNUMXfipXNUMXhfpiXNUMXufhpiXNUMXuf
- ra
- bên ngoài
- tổng quan
- riêng
- Giấy
- mô hình
- paul
- mỗi
- hiệu suất
- quan điểm
- vật lý
- điểm ảnh
- Nơi
- plato
- Thông tin dữ liệu Plato
- PlatoDữ liệu
- thêm
- vị trí
- bài viết
- quyền lực
- dự đoán
- Prestige
- giá
- đặc quyền
- có lẽ
- thăm dò
- Vấn đề
- quá trình
- Quy trình
- Bộ xử lý
- bộ vi xử lý
- Lập trình viên
- Khóa Học
- phát âm
- bảo vệ
- bảo vệ
- cho
- mục đích
- đặt
- chất lượng
- câu hỏi
- tăng giá
- RAM
- ngẫu nhiên
- Tỷ lệ
- Giá
- Đọc
- thế giới thực
- có thật không
- lý do
- lý do
- gần đây
- giảm
- gọi
- ghi danh
- đăng ký
- đăng ký
- tương đối
- phát hành
- thay thế
- đòi hỏi
- nhà nghiên cứu
- tôn trọng
- Kết quả
- ngay
- chạy
- tương tự
- nói
- kịch bản
- Đen
- Thứ hai
- an ninh
- xem
- gửi
- Loạt Sách
- định
- một số
- ngắn
- đăng ký
- tín hiệu
- đơn giản hóa
- đơn giản hóa
- website
- snooping
- So
- rắn
- một số
- Một người nào đó
- một cái gì đó
- một nơi nào đó
- sớm
- nói
- đặc biệt
- riêng
- tốc độ
- Bắt đầu
- Bắt đầu
- thống kê
- Vẫn còn
- Dừng
- là gắn
- hàng
- lưu trữ
- thành công
- Gợi ý
- phải
- chắc chắn
- SVG
- hệ thống
- bàn
- Hãy
- mất
- Nhiệm vụ
- Kỹ thuật
- nói
- tạm thời
- kiểm tra
- hơn
- việc này
- Sản phẩm
- cung cấp their dịch
- Them
- tự
- sau đó
- lý thuyết
- Đó
- vì thế
- họ
- nghĩ
- Thứ ba
- điều này
- những
- Như vậy
- thời gian
- đến
- bây giờ
- bên nhau
- mất
- công cụ
- hàng đầu
- theo dõi
- chuyển
- quá trình chuyển đổi
- minh bạch
- đúng
- thử
- hai
- Cuối cùng
- Dưới
- trường đại học
- không
- URL
- Sử dụng
- sử dụng
- đã sử dụng
- người sử dang
- sử dụng
- thường
- giá trị
- Các giá trị
- TỰ PHỤ
- khác nhau
- rất
- thông qua
- Truy cập
- là
- Đường..
- cách
- we
- Website
- tuần
- TỐT
- đi
- là
- Điều gì
- khi nào
- liệu
- cái nào
- trong khi
- chiều rộng
- sẽ
- Dây điện
- với
- từ
- lo
- sẽ
- viết
- viết
- năm
- năm
- nhưng
- Bạn
- trên màn hình
- zephyrnet
- không