Dùng âm thanh để phá khóa bảo mật - chuyện thật như đùa
(GenK.vn) - Một nhóm các nhà nghiên cứu đã thành công trong việc tận dụng âm thanh của CPU để giải mã chuỗi thông tin được mã hóa bằng 4096-bit RSA – một trong những phương pháp bảo mật mạnh nhất hiện nay.
Như tiêu đề bài viết đã nêu, nhiều người trong chúng ta chắc hẳn sẽ nghĩ mình nghe chuyện…đùa khi một số nhà nghiên cứu nêu lên ý tưởng vượt qua cơ chế mã hóa phổ biến nhất và được tin dùng nhiều nhất – RSA – chỉ bằng cách dùng microphone. Vâng, microphone! Và hơn thế nữa, mọi chuyện không hề dừng ở mức ý tưởng. Nhóm nghiên cứu bao gồm Daniel Genkin, Eran Tromer và…. Adi Shamir (người đồng sáng tạo cơ chế mã hóa RSA) sau một thời gian cộng tác đã thành công trong việc tận dụng âm thanh của CPU để giải mã chuỗi thông tin được mã hóa bằng 4096-bit RSA – một trong những phương pháp bảo mật mạnh nhất hiện nay. Đáng nể hơn nữa, những phần cứng cần thiết cho công việc này được mô tả là “hoàn toàn không khó kiếm”.
Thay vì sử dụng phương pháp tấn công vét cạn, brute-force mà ta thường nghe tới trong việc giải mã, nhóm nghiên cứu mang tên Tel Aviv đã tiếp cận vấn đề theo một hướng khác – side channel attack (tấn công kênh bên). Trong lĩnh vực mã hóa, thuật ngữ này nhằm chỉ các phương pháp tấn công dựa trên thông tin thu được từ các phần cứng thực thi quá trình mã hóa/giải mã, thay vì nghiên cứu lý thuyết để tìm ra điểm yếu của thuật toán. Cũng vì tính đa dạng của các kênh phần cứng có thể bị tận dụng cho việc thu thập thông tin, hầu như chưa có phương pháp nào có thể ngăn chặn triệt để hướng tấn công này. Lấy ví dụ, mật khẩu trên các smartphone có thể giúp chúng ta ngăn chặn người lạ sử dụng điện thoại của mình; nhưng nếu như kẻ xấu có thể sử dụng dấu vết ngón tay của bạn để lại trên màn hình để truy cập máy. Điều đó cũng đồng nghĩa với việc hắn chẳng phải vất vả nghiên cứu giải thuật nào cả - đây chính là một ví dụ đơn giản nhất của side channel attack.
Trong trường hợp này, kênh thông tin mà ba nhà nghiên cứu đã tận dụng là âm thanh cao tần (khoảng 10 đến 150 KHz) mà CPU phát ra trong quá trình giải mã. Họ cho biết “Đa số máy tính điện tử phát ra âm thanh cao tần trong quá trình hoạt động, xuất phát từ rung động của các cấu kiện điện tử” - họ cho biết. Về nguồn gốc của âm thanh từ CPU trong trường hợp cụ thể này, có thể giải thích một cách ngắn gọn rằng đây là âm thanh mà bộ điều áp trong CPU tạo ra khi bộ phận này thực hiện công việc giữ ổn định điện áp trong quá trình xử lí lượng lớn các luồng thông tin biến đổi liên tục. Việc tìm thiết bị thu âm phù hợp cho yêu cầu này mà vẫn tránh được tạp âm ban đầu có vẻ rất khó khăn. Tuy nhiên, nếu đã biết trước được dải tần cần thu, nhóm nghiên cứu cho biết ta có thể sử dụng các bộ lọc phù hợp để máy phân tích chỉ nhận được các âm thanh cần thiết từ CPU trong khi giải mã. Việc thu âm này vẫn chỉ là bước đơn giản nhất trong cả quy trình, bước tiếp theo – phân tích và rút ra kết luận từ các thông tin này – mới là phần cốt lõi khó nhằn của bài toán.
Công cụ mã hóa/giải mã mà nhóm đã chọn sử dụng là GnuPG (phiên bản mã nguồn mở/miễn phí của trình mã hóa PGP). Sau một thời gian dài thực hiện phân tích, họ đã tìm ra được cách phân loại các chỉ lệnh (instruction) mà CPU đó thực hiện dựa trên dạng âm thanh phát ra. Một khi đã thống kê được cách nhận biết khi nào CPU thực thi chỉ lệnh nào, công đoạn tiếp theo sẽ là phân tích chuỗi âm thanh liền kề ngay sau khi một chỉ lệnh được khởi động để dần tìm ra mã khóa. Tuy vậy cũng do quá trình từng phần mềm/hệ điều hành truyền lệnh và thông tin cho CPU là khác nhau, cũng như với từng kiến trúc CPU tập hợp các chỉ lệnh sẽ là rất khác nhau, kết quả phân tích mà nhóm thu được sẽ không thể tái sử dụng. Bất kể ta thay đổi trình mã hóa hay cấu hình phần cứng dùng để chạy chương trình (hay đơn giản là thay CPU), việc phân tích sẽ phải được thực hiện lại gần như là từ đầu.
Thành phần duy nhất bị giới hạn về vị trí và khoảng cách là micophone, mọi thứ khác đều có thể được ẩn đi
Sử dụng một microphone parabôn cao cấp, quá trình phá mã thử nghiệm đã được thực hiện từ khoảng cách lên tới….4 mét. Và có vẻ như vẫn còn chưa hài lòng với khoảng cách này, các nhà nghiên cứu còn tiếp tục thành công với việc phá mã bằng âm thanh thu được từ một....smartphone đặt cách máy “nạn nhân” khoảng 30cm. Vẫn sử dụng GnuPG, tỉ lệ thành công thay đổi khá nhiều khi thực hiện “nghe trộm” các máy laptop và desktop khác nhau. Tuy vậy, điểm đáng sợ nhất vẫn là kết luận rằng các dạng thức tấn công tương tự hoàn toàn có thể được thực hiện dựa trên các dữ liệu điện thu được từ nguồn điện trên tường, cáp Ethernet hay thậm chí là tín hiệu cơ thể của người có tiếp xúc trực tiếp với máy.
Ngay cả smartphone cũng có thể được sử dụng để tấn công.
Nói thêm về tiềm năng ứng dụng của phương pháp tấn công này, nhiều ý kiến cho rằng khả năng nó xuất hiện trong thực tế là không hề nhỏ. Nếu máy tính của bạn đang thực hiện giải mã dữ liệu tại nơi công cộng như quán café, hay lí tưởng hơn là những địa điểm yên tĩnh như thư viện – khả năng mã khóa cho dữ liệu của bạn bị đánh cắp chỉ bởi một chiếc smartphone đặt gần đó giờ đây không còn chỉ là chuyện trong game hay phim ảnh. Chưa đủ? Với tình trạng lượng lớn người dùng smartphone thờ ơ với hiểm họa malware, giới tin tặc chuyên nghiệp hoàn toàn có thể biến chính điện thoại của người dùng thành công cụ đánh cắp mã khóa của chính họ hay thậm chí là của người thân, bạn bè. Cũng đừng quên là các ứng dụng Flash hay HTML5 thường được cấp quyền truy cập webcam hay microphone của người dùng, đồng nghĩa với việc một website có thể được tận dụng để khiến máy tính truy cập vào đó âm thầm thực hiện đánh cắp mã khóa là điều hoàn toàn có thể xảy ra. Và tất cả đó mới chỉ được coi là các tình huống tấn công “cò con”, nhỏ lẻ. Kịch bản hoành tráng nhất mà các nhà nghiên cứu vạch ra là kẻ tấn công có thể bằng cách nào đó đưa thiết bị ghi âm của mình vào trong các datacenter, đặc biệt là các datacenter chuyên dùng để cho thuê như của ISP (chẳng hạn tích hợp nó vào trong các máy chủ mới chuẩn bị được chuyển vào). Kết quả thu được? Chúng sẽ có thể đánh cắp mã khóa từ hàng chục, hàng trăm các máy chủ đặt xung quanh, nhân lên với số lượng phiên kết nối tới người dùng mà mỗi máy chủ thực hiện hàng này. Hậu quả thật khó mà tưởng tượng.
Các kịch bản này một lần nữa nhắc nhở chúng ta, cả những thuộc giới CNTT lẫn người dùng bình dân về hai phương pháp cốt yếu nhất cho việc bảo vệ dữ liệu: sử dụng cơ chế mã hóa mạnh và bảo vệ truy cập vật lí tới thiết bị. Nếu người lạ không thể dễ dàng tiếp cận thiết bị chứa dữ liệu của bạn, hẳn nhiên việc đánh cắp sẽ khó khăn hơn rất nhiều. Ngược lại nếu hớ hênh về mặt này, bất kể mã hóa hay không mã hóa, các dữ liệu đó vẫn gặp nguy hiểm lớn hơn rất nhiều. Đừng quên, “âm thanh” mới chỉ là một kênh thông tin vật lí có thể bị tận dụng mà thôi. Trong thế giới hiện đại khi mà nhiều người ưa chuộng những âm thanh lặp lại, ngọt ngào, dễ nghe hơn là âm thanh đa dạng, dải tần rộng của các dàn nhạc – ý tưởng tận dụng “âm nhạc” làm tạp âm phòng tránh phương pháp này cũng nhanh chóng bị gạt bò.
Tham khảo: ExtremeTech, tổng hợp