Side-Channel Attacks
Trang 1Side Channels Attack
Trang 2Thành viên
Trang 5Ví dụ
Các thông tin có th khai thác t m t máy cá nhân: ể qua ừ khoá két sắt ộ ra trong quá trình thực
Th i gian ời gian/năng lượng,… để qua
Nhi t đ ệu ộ ra trong quá trình thực
Trang 6Định nghĩa Side-channels attack
Wiki: side channel attack is any attack based
on information gained from the
Trang 7Phân tích mật mã bằng Side Channel
S mã hoá:ực
Plaintex t
Ciphe r
Cipherte xt
Ke y
Trang 8Phân tích mật mã bằng Side Channel
S mã hoá trong th c t :ực ực ế:
Plainte xt
Ciphe r
Cipherte xt
Ke
y
Side Chann els
Trang 9Phân tích mật mã bằng Side Channel
Side Channel Cryptanalysis: quan sát các “s n ph m” ảo mật, các hacker quan sát ẩm” phát ra t h th ng mã hoá trong quá trình ho t đ ng ừ khoá két sắt ệu ống mã hoá trong quá trình hoạt động ạm Minh Thành ộ ra trong quá trình thực
Các “k ch b n” t n công: ị lộ ra trong quá trình thực ảo mật, các hacker quan sát ất trong việc phân tích mật
Trang 10Timing Attack
Nguy n Văn Quân ễn Văn Quân
Trang 11Timing Attacks
S d ng thông tin v th i gian th c thi c a h ử dụng nhiều nhất trong việc phân tích mật ụ: Các tên trộm phá khoá bằng cách nghe ề thời gian/năng lượng,… để qua ời gian/năng lượng,… để qua ực ủa hệ ệu
th ng đ phân tích.ống mã hoá trong quá trình hoạt động ể qua
Timing Attacks d a trên vi c đo th i gian c n ực ệu ời gian/năng lượng,… để qua ần Thái Sơncho m t đ n v đ th c thi Thông tin này có ộ ra trong quá trình thực ơn ị lộ ra trong quá trình thực ể qua ực
th d n đ n thông tin v các d li u bí m t.ể qua ẫn đến thông tin về các dữ liệu bí mật ế: ề thời gian/năng lượng,… để qua ững thông tin bị lộ ra trong quá trình thực ệu ật, các hacker quan sát
Trang 12Password verification
Gi s ta có hàm pcmp dùng đ ki m tra password nh sau: ảo mật, các hacker quan sát ử dụng nhiều nhất trong việc phân tích mật ể qua ể qua ư
Func pcmp(string pass,string input)
if pass.length != input.length return False
Trang 131. Th l n lử dụng nhiều nhất trong việc phân tích mật ần Thái Sơn ượng,… để qua t nhi u password, v i đ dài khác ề thời gian/năng lượng,… để qua ới thiệu ộ ra trong quá trình thực
đ xác đ nh đ dài password.ể qua ị lộ ra trong quá trình thực ộ ra trong quá trình thực
2. Th v i t ng kí t đ xác đ nh pass nh đo ử dụng nhiều nhất trong việc phân tích mật ới thiệu ừ khoá két sắt ực ể qua ị lộ ra trong quá trình thực ời gian/năng lượng,… để qua
th i gian th c thi.ời gian/năng lượng,… để qua ực
HOW????
Trang 14How to fix it?
Func pcmp(string ori_pass,string input)
result = True
int i = 0
if input.length == 0 : return False
if (input.length > ori_pass.length) or (input.length) < ori_pass.length): input = ori_pass
Trang 15Power Analysis
Ph m Minh Thành ạm Minh Thành
Trang 16Power analysis
Là m t d ng side channel attackộ ra trong quá trình thực ạm Minh Thành
D a vào s tiêu th năng lực ực ụ: Các tên trộm phá khoá bằng cách nghe ượng,… để qua ng c a ph n c ngủa hệ ần Thái Sơn ứng
Không xâm ph m vào thi t bạm Minh Thành ế: ị lộ ra trong quá trình thực
Trích xu t nh ng khóa đã mã hóa, các thông tin ất trong việc phân tích mật ững thông tin bị lộ ra trong quá trình thực
bí m t khác t thi t bật, các hacker quan sát ừ khoá két sắt ế: ị lộ ra trong quá trình thực
Trang 17Lịch sử
Đượng,… để qua c gi i thi u vào năm 1998ới thiệu ệu
B i Paul Kocher, Joshua Jaffe và Benjamin Junởi Paul Kocher, Joshua Jaffe và Benjamin Jun
Trang 19Ví dụ
M t khóa nh phân ch a trong m ng e.ộ ra trong quá trình thực ị lộ ra trong quá trình thực ứng ảo mật, các hacker quan sát
M t đo n code c a m t ch c năng nào đó x lý ộ ra trong quá trình thực ạm Minh Thành ủa hệ ộ ra trong quá trình thực ứng ứngtrên khóa nh phân nh sau:ị lộ ra trong quá trình thực ư
Tín hi u đo đệu ượng,… để qua c:
Trang 20Phân loại
Simple power analysis (SPA)
Differential power analysis (DPA)
Trang 21• H th ng không ệu khác nhau ống không
nh n bi t đ ận biết được ết được ượng khác nhau c
Trang 22Information Leaking
Đinh Tr n Thái S n ần Thái Sơn ơn
Trang 23Giới thiệu
X y ra khi m t h th ng đ l thông tin bí m t ảo mật, các hacker quan sát ộ ra trong quá trình thực ệu ống mã hoá trong quá trình hoạt động ể qua ộ ra trong quá trình thực ật, các hacker quan sát nào đó
Thười gian/năng lượng,… để qua ng b ngị lộ ra trong quá trình thực ười gian/năng lượng,… để qua i thi t k h th ng b qua.ế: ế: ệu ống mã hoá trong quá trình hoạt động ỏ qua
Là nguyên nhân ch y u d n t i side-channel ủa hệ ế: ẫn đến thông tin về các dữ liệu bí mật ới thiệuattack
Trang 24Nguyên nhân
Khách quan (h th ng)ệu ống mã hoá trong quá trình hoạt động
Th i gian x lý (timing) ời gian/năng lượng,… để qua ử dụng nhiều nhất trong việc phân tích mật
Thông báo l i (error messages) ỗi (error messages)
Ch quan (con ngủa hệ ười gian/năng lượng,… để qua i)
Public thông tin m t ật, các hacker quan sát
L u thông tin vào nh ng môi tr ư ững thông tin bị lộ ra trong quá trình thực ười gian/năng lượng,… để qua ng không an toàn (đi n tho i, usb, máy tính cá nhân,…) ệu ạm Minh Thành
L thông tin có ch ý ộ ra trong quá trình thực ủa hệ
Trang 25Ví dụ 1
"System 97 Printing Machine for European Characters” or "Type B Cipher Machine”
Trang 26Ví dụ 2 : Timing attack
Trang 27Ví dụ 3 : Error messages
Trang 28Ví dụ 3 : Error messages
Trang 29Giải pháp
ERM (Enterprise Right Management)
DLP (Data Loss Prevention)
Hi n th c: K t h p u đi m c a ERM và DLP ệu khác nhau ực: Kết hợp ưu điểm của ERM và DLP ết được ợng khác nhau ư ểm của ERM và DLP ủa ERM và DLP
Trang 30Cache Attacks
Nguy n Duy Tài ễn Văn Quân
Trang 31 Percival (attack on RSA)
Osvik Shamir and Tromer (full attack on AES)
Trang 32Cache attacks
Kỹ thu t t n công thu n softwareật, các hacker quan sát ất trong việc phân tích mật ần Thái Sơn
Kỹ thu t t n công r t hi u quật, các hacker quan sát ất trong việc phân tích mật ất trong việc phân tích mật ệu ảo mật, các hacker quan sát
Vd: Có th l y để qua ất trong việc phân tích mật ượng,… để qua c toàn b khóa c a file ộ ra trong quá trình thực ủa hệ
h th ng linux trong mã hóa b ng gi i thu t ệu ống mã hoá trong quá trình hoạt động ằng cách nghe ảo mật, các hacker quan sát ật, các hacker quan sát AES trong vòng 65ms
Có th t n công vào nh ng h th ng có ch c ể qua ất trong việc phân tích mật ững thông tin bị lộ ra trong quá trình thực ệu ống mã hoá trong quá trình hoạt động ứngnăng b o m t t tảo mật, các hacker quan sát ật, các hacker quan sát ống mã hoá trong quá trình hoạt động
Vd: VPN s d ng mã hóa AESử dụng nhiều nhất trong việc phân tích mật ụ: Các tên trộm phá khoá bằng cách nghe
Trang 33- RAM: 50-150ns
- CACHE: 0.3ns
Basic Cache Technology
Trang 34Cache observation attacks
Mô hình : Phân tích mã AES
Attacker c g ng l y nh ng thông tin quan ống mã hoá trong quá trình hoạt động ắt ất trong việc phân tích mật ững thông tin bị lộ ra trong quá trình thực
tr ng thông qua quan sát b nh cache.ọng thông qua quan sát bộ nhớ cache ộ ra trong quá trình thực ới thiệu
Kỹ thu t đật, các hacker quan sát ượng,… để qua c phát tri n b i Osvik, Shamir, ể qua ởi Paul Kocher, Joshua Jaffe và Benjamin JunTromer năm 2005
Trang 35Cache observation attacks
Ban đ u:ần Thái Sơn
Attacker ki m soát 1 process n m c p đ user ể qua ằng cách nghe ởi Paul Kocher, Joshua Jaffe và Benjamin Jun ất trong việc phân tích mật ộ ra trong quá trình thực
Attacker có th gây ra process có quy n th c ể qua ề thời gian/năng lượng,… để qua ực
hi n ch c năng mã hóa văn b n ệu ứng ảo mật, các hacker quan sát
Khóa đ ượng,… để qua c b o m t trong b nh ảo mật, các hacker quan sát ật, các hacker quan sát ộ ra trong quá trình thực ới thiệu
Goal:
Xác đ nh thao tác mã hóa E(p, k) tìm ki m t i ị lộ ra trong quá trình thực ế: ạm Minh Thành
b ng có index y ảo mật, các hacker quan sát
Trang 36Cache observation attacks
Kỹ thuật tấn công “Prime and Probe”:
AE
S
Attacke r
Trang 37Cache observation attacks
Kỹ thuật tấn công “Prime and Probe” :
1. Attacker điền vào cache với dữ chính dữ liệu
Trang 38Cache observation attacks
Kỹ thuật tấn công “Prime and Probe” :
1. Attacker điền vào cache với dữ chính
dữ liệu của mình.
2. Quá trình mã hóa load một vài giá trị
tại AES table.
AE
S
Attacker
Trang 39Cache observation attacks
mình.
2 Quá trình mã hóa load một vài giá trị tại AES table.
3 Attacker đọc lại dữ liệu của mình Giá trị bị ghi đè bởi quá trình mã hóa sẽ tốn nhiều thời gian hơn.
AE
S
Attacker
Trang 40Phòng tránh
Trang 41Phòng tránh
Ý tưởi Paul Kocher, Joshua Jaffe và Benjamin Junng:
Thi t k h th ng b o m t có tính toán đ n t t ế: ế: ệu ống mã hoá trong quá trình hoạt động ảo mật, các hacker quan sát ật, các hacker quan sát ế: ất trong việc phân tích mật
c các thông tin có th b l ảo mật, các hacker quan sát ể qua ị lộ ra trong quá trình thực ộ ra trong quá trình thực
Khó khăn:
Nhi u thông s , hàm ề thời gian/năng lượng,… để qua ống mã hoá trong quá trình hoạt động
Nhi u lo i “v t tích” khác nhau ề thời gian/năng lượng,… để qua ạm Minh Thành ế:
Trang 42Phòng tránh
Software:
S l n l nh ch y không đ i (constants) ống mã hoá trong quá trình hoạt động ần Thái Sơn ệu ạm Minh Thành ổi (constants)
H n ch các rẽ nhánh có đi u ki n ạm Minh Thành ế: ề thời gian/năng lượng,… để qua ệu
Hash giá tr tr ị lộ ra trong quá trình thực ưới thiệu c khi s d ng ử dụng nhiều nhất trong việc phân tích mật ụ: Các tên trộm phá khoá bằng cách nghe
=> V n đ hi u su t ất trong việc phân tích mật ề thời gian/năng lượng,… để qua ệu ất trong việc phân tích mật
Hardware:
Cân b ng m c năng l ằng cách nghe ứng ượng,… để qua ng
=> V n đ đi n năng, hi u su t ất trong việc phân tích mật ề thời gian/năng lượng,… để qua ệu ệu ất trong việc phân tích mật
=> S c n thi t ph i đ ng nh t s làm vi c c a ph n c ng, ực ần Thái Sơn ế: ảo mật, các hacker quan sát ồng thời vào năm 2005 ất trong việc phân tích mật ực ệu ủa hệ ần Thái Sơn ứng
ph n m m, thu t toán và giao th c ần Thái Sơn ề thời gian/năng lượng,… để qua ật, các hacker quan sát ứng
Trang 43The End