Kỹ thuật và công cụ trong tấn công tiêm lỗi

09:24 | 05/06/2023
TS. Đỗ Quang Trung , Nguyễn Như Chiến , Trần Thị Hạnh (Học viện Kỹ thuật mật mã)

Tấn công tiêm lỗi (Fault Injection Attack - FIA) là loại tấn công chủ động, giúp tin tặc xâm nhập vào các thiết bị điện tử, mạch tích hợp cũng như các thiết bị mật mã nhằm thu được khóa bí mật và đánh cắp thông tin. Tiêm lỗi có thể được thực hiện trong cả phần cứng và phần mềm. Bài báo này nhóm tác giả sẽ trình bày về các kỹ thuật, công cụ được thực hiện trong FIA.

TẤN CÔNG TIÊM LỖI

FIA là tấn công được thực hiện một cách cố ý lên thiết bị mật mã với mục đích làm cho thiết bị rò rỉ khóa bí mật [1]. Các lỗi được đưa vào sẽ gây trục trặc tạm thời cho thiết bị dưới dạng nhiễu loạn (do lỗi lật 1 hay vài bit bộ nhớ). Vì thiết bị vẫn tiếp tục hoạt động nên sự nhiễu loạn được lan truyền đến các vị trí nhớ khác, rồi dần gây lỗi và làm sai lệch kết quả đầu ra (còn gọi là các bản mã lỗi). Nếu lỗi được tiêm vào chính xác và có những thuộc tính xác định, tin tặc có thể sử dụng bản mã lỗi đó để tìm ra khóa bí mật.

Nhiều nghiên cứu chỉ ra rằng, các thuật toán mật mã đối xứng và bất đối xứng đều dễ bị tấn công trước FIA. Năm 1997, Boneh, DeMillo và Lipton đã chỉ ra rằng việc triển khai RSA sử dụng định lý phần dư Trung Hoa (Chinese Remainder Theorem - CRT) có thể dễ dàng bị phá vỡ bằng cách sử dụng các lỗi [2]. Cũng trong năm đó, Biham và Shamir đã công bố một tấn công được biết đến là phân tích lỗi vi sai (Differential Fault Analysis - DFA), tấn công này có thể phá vỡ hầu hết các hệ thống mật mã đối xứng [3]. DFA có thể tìm được khóa của thuật toán mật mã bằng cách kiểm tra sự khác biệt giữa một bản mã đúng và một bản mã bị lỗi. Tấn công DFA có thể thực hiện thành công trên một số thuật toán mật mã như AES, TWOFISH, PRESENT [4]. Ngày nay, sau khi các cuộc tấn công này được công bố, bên cạnh tấn công kênh kề (Side Channel Attack - SCA) thì FIA cũng là cách tấn công được quan tâm nhiều trong bảo mật phần cứng. Ngoài DFA còn có nhiều phương pháp phân tích đã được công bố như tấn công phân tích lỗi không hiệu quả theo thống kê (Statistical Ineffective Fault Analysis - SIFA), phân tích độ nhạy lỗi (Fault Sensitivity Analysis - FSA), tấn công lỗi mẫu (Fault Template Attacks - FTA) và sự kết hợp giữa FIA và SCA.

Quý độc giả quan tâm vui lòng đọc tiếp tại đây.

TÀI LIỆU THAM KHẢO

[1]. Barenghi, L. Breveglieri, I. Koren, D. Naccache, Fault Injection Attacks on Cryptographic Devices: Theory, Practice, and Countermeasures, Proceedings of the IEEE, page 3056-3076, 2012.

[2]. Bozzato, R. Focardi, and F. Palmarini. Shaping the glitch: optimizing voltage fault injection attacks. IACR Transactions on Cryptographic Hardware and Embedded Systems, pages 199-224, 2019.

[3]. Boneh, R. A. DeMillo, and R. J. Lipton. On the importance of checking cryptographic protocols for faults. In International conference on the theory and applications of cryptographic techniques, pages 37-.51. Springer, 1997. [4]. Samyde, S. Skorobogatov, R. Anderson, and J.-J. Quisquater. On a New Way to Read Data from Memory. In First International IEEE Security in Storage Workshop, pages 65-69. IEEE Computer Society, 2002