Làm thế nào các Oracle mật mã có thể dễ bị tấn công bởi các cuộc tấn công đệm của Oracle?

Làm thế nào các Oracle mật mã có thể dễ bị tấn công bởi các cuộc tấn công đệm của Oracle?
Những độc giả như bạn giúp ủng hộ MUO. Khi bạn mua hàng bằng các liên kết trên trang web của chúng tôi, chúng tôi có thể kiếm được hoa hồng liên kết. Đọc thêm.

Kẻ tấn công có thể giải mã và mã hóa dữ liệu trên ứng dụng của bạn mà không biết khóa giải mã không? Câu trả lời là có, và nó nằm trong một lỗ hổng mật mã được gọi là oracle mã hóa.





Video MUO trong ngày CUỘN ĐỂ TIẾP TỤC VỚI NỘI DUNG

Oracle mã hóa đóng vai trò là cửa ngõ tiềm năng để kẻ tấn công thu thập thông tin về dữ liệu được mã hóa mà không cần truy cập trực tiếp vào khóa mã hóa. Vì vậy, làm thế nào những kẻ tấn công có thể khai thác các oracle mật mã thông qua các kỹ thuật như tấn công oracle đệm? Làm thế nào bạn có thể ngăn chặn những lỗ hổng như vậy ảnh hưởng đến bạn?





Oracle mật mã là gì?

Mã hóa là một giao thức bảo mật trong đó văn bản hoặc dữ liệu thuần túy được chuyển đổi thành định dạng mã hóa không thể đọc được, còn được gọi là văn bản mật mã, để bảo vệ tính bảo mật của nó và đảm bảo rằng chỉ những bên được ủy quyền mới có thể truy cập được bằng khóa giải mã. Có hai loại mã hóa: bất đối xứng và đối xứng.





Mã hóa bất đối xứng sử dụng một cặp khóa riêng biệt (công khai và riêng tư) để mã hóa và giải mã, trong khi mã hóa đối xứng sử dụng một khóa chung duy nhất cho cả mã hóa và giải mã. Bạn có thể mã hóa hầu hết mọi thứ, tin nhắn văn bản, email, tập tin, lưu lượng truy cập web, v.v.

Mặt khác, nhà tiên tri là một phương tiện mà qua đó một người thường thu được thông tin mà thông thường đàn ông không thể tiếp cận được. Hãy coi nhà tiên tri giống như một chiếc hộp đặc biệt khi bạn chuyển thứ gì đó qua và nó mang lại cho bạn kết quả. Bạn không biết nội dung của chiếc hộp, nhưng bạn biết nó có tác dụng.



Nhà tiên tri mật mã, còn được gọi là nhà tiên tri đệm, là một khái niệm trong mật mã dùng để chỉ một hệ thống hoặc thực thể có thể cung cấp thông tin về dữ liệu được mã hóa mà không tiết lộ khóa mã hóa. Về cơ bản, đó là một cách tương tác với hệ thống mã hóa để thu thập kiến ​​thức về dữ liệu được mã hóa mà không cần truy cập trực tiếp vào khóa mã hóa.

Một oracle mật mã được tạo thành từ hai phần: truy vấn và phản hồi. Truy vấn đề cập đến hành động cung cấp cho oracle văn bản mã hóa (dữ liệu được mã hóa) và phản hồi là phản hồi hoặc thông tin do oracle cung cấp dựa trên phân tích văn bản mã hóa của nó. Điều này có thể bao gồm việc xác minh tính hợp lệ của nó hoặc tiết lộ chi tiết về văn bản thuần túy tương ứng, có khả năng hỗ trợ kẻ tấn công giải mã dữ liệu được mã hóa và ngược lại.





Cuộc tấn công Padding Oracle hoạt động như thế nào?

  người đội mũ trùm đầu nhìn mã xanh trên màn hình máy tính

Một cách chính mà kẻ tấn công khai thác các oracle mật mã là thông qua một cuộc tấn công oracle đệm. Tấn công oracle đệm là một cuộc tấn công mật mã khai thác hành vi của một hệ thống hoặc dịch vụ mã hóa khi nó tiết lộ thông tin về tính chính xác của phần đệm trong văn bản mã hóa.

Để điều này xảy ra, kẻ tấn công phải phát hiện ra một lỗ hổng làm lộ ra một oracle mật mã, sau đó gửi văn bản mã hóa đã sửa đổi tới nó và quan sát phản hồi của oracle. Bằng cách phân tích các phản hồi này, kẻ tấn công có thể suy ra thông tin về văn bản thuần túy, chẳng hạn như nội dung hoặc độ dài của nó, ngay cả khi không có quyền truy cập vào khóa mã hóa. Kẻ tấn công sẽ liên tục đoán và sửa đổi các phần của bản mã cho đến khi khôi phục được toàn bộ văn bản thuần túy.





Trong tình huống thực tế, kẻ tấn công có thể nghi ngờ rằng một ứng dụng ngân hàng trực tuyến mã hóa dữ liệu người dùng có thể có lỗ hổng đệm oracle. Kẻ tấn công chặn yêu cầu giao dịch được mã hóa của người dùng hợp pháp, sửa đổi nó và gửi nó đến máy chủ của ứng dụng. Nếu máy chủ phản hồi khác nhau—do lỗi hoặc thời gian cần thiết để xử lý yêu cầu—đối với văn bản mã hóa đã sửa đổi, thì điều này có thể cho thấy có lỗ hổng bảo mật.

Sau đó, kẻ tấn công khai thác nó bằng các truy vấn được tạo cẩn thận, cuối cùng giải mã chi tiết giao dịch của người dùng và có khả năng giành được quyền truy cập trái phép vào tài khoản của họ.

  Kẻ tấn công đang cố gắng truy cập vào hệ thống máy tính

Một ví dụ khác là sử dụng oracle mã hóa để bỏ qua xác thực. Nếu kẻ tấn công phát hiện ra lời tiên tri mã hóa trong các yêu cầu của ứng dụng web mã hóa và giải mã dữ liệu, kẻ tấn công có thể sử dụng nó để giành quyền truy cập vào tài khoản của người dùng hợp lệ. Anh ta có thể giải mã mã thông báo phiên của tài khoản, thông qua oracle, sửa đổi văn bản đơn giản bằng cách sử dụng cùng một oracle và thay thế mã thông báo phiên bằng mã thông báo được mã hóa thủ công sẽ cấp cho anh ta quyền truy cập vào tài khoản của người dùng khác.

Làm thế nào để tránh các cuộc tấn công bằng mật mã của Oracle

Các cuộc tấn công oracle mật mã là kết quả của các lỗ hổng trong thiết kế hoặc triển khai hệ thống mật mã. Điều quan trọng là phải đảm bảo rằng bạn triển khai các hệ thống mật mã này một cách an toàn để ngăn chặn các cuộc tấn công. Các biện pháp khác để ngăn chặn các oracle mã hóa bao gồm:

sao chép các tập tin từ mac sang pc
  1. Chế độ mã hóa được xác thực : Sử dụng các giao thức mã hóa được xác thực như AES-GCM (Chế độ Galois/Bộ đếm) hoặc AES-CCM (Bộ đếm với CBC-MAC) không chỉ cung cấp tính bảo mật mà còn bảo vệ tính toàn vẹn, khiến kẻ tấn công khó giả mạo hoặc giải mã văn bản mật mã.
  2. Xử lý lỗi nhất quán: Đảm bảo rằng quá trình mã hóa hoặc giải mã luôn trả về cùng một phản hồi lỗi, bất kể phần đệm có hợp lệ hay không. Điều này giúp loại bỏ sự khác biệt trong hành vi mà kẻ tấn công có thể khai thác.
  3. Kiểm tra bảo mật: Thường xuyên tiến hành đánh giá an ninh, bao gồm kiểm tra thâm nhập và đánh giá mã , để xác định và giảm thiểu các lỗ hổng tiềm ẩn, bao gồm các vấn đề về mã hóa oracle.
  4. Giới hạn tỷ lệ: Triển khai giới hạn tốc độ cho các yêu cầu mã hóa và giải mã để phát hiện và ngăn chặn các cuộc tấn công vũ phu.
  5. Xác thực đầu vào: Xác thực và vệ sinh kỹ lưỡng thông tin đầu vào của người dùng trước khi mã hóa hoặc giải mã. Đảm bảo rằng các đầu vào tuân thủ định dạng và độ dài dự kiến ​​để ngăn chặn các cuộc tấn công oracle đệm thông qua các đầu vào bị thao túng.
  6. Giáo dục và nhận thức về an ninh : Đào tạo các nhà phát triển, quản trị viên và người dùng về các phương pháp hay nhất về mã hóa và bảo mật nhằm thúc đẩy văn hóa nhận thức về bảo mật.
  7. Cập nhật thường xuyên: Luôn cập nhật tất cả các thành phần phần mềm, bao gồm cả thư viện và hệ thống mật mã, với các bản vá và bản cập nhật bảo mật mới nhất.

Cải thiện tình trạng bảo mật của bạn

Hiểu và bảo vệ chống lại các cuộc tấn công như oracle mã hóa là điều bắt buộc. Bằng cách thực hiện các biện pháp bảo mật, các tổ chức và cá nhân có thể tăng cường khả năng phòng vệ của mình trước những mối đe dọa ngấm ngầm này.

Giáo dục và nhận thức cũng đóng một vai trò quan trọng trong việc thúc đẩy văn hóa bảo mật mở rộng từ các nhà phát triển và quản trị viên đến người dùng cuối. Trong cuộc chiến đang diễn ra này nhằm bảo vệ dữ liệu nhạy cảm, việc luôn cảnh giác, cập nhật thông tin và đi trước những kẻ tấn công tiềm năng một bước là chìa khóa để bảo vệ tính toàn vẹn của tài sản kỹ thuật số và dữ liệu bạn yêu quý.