Giao thức bảo mật SSLSecure Sockets Layer Được phát triển bởi Netscape Phiên bản đầu tiên SSL 1.0: không công bố SSL 2.0: Công bố năm 1994, chứa nhiều lỗi bảo mật... SSL Alert pr
Trang 1Secure Sockets Layer
Trang 2Bảo mật trong mô hình
SSL
Nhiều ứng dụng bảo mật ở lớp ứng dụng
Trang 3Giao thức bảo mật SSL
(Secure Sockets Layer)
Được phát triển bởi Netscape
Phiên bản đầu tiên (SSL 1.0): không công bố
SSL 2.0: Công bố năm 1994, chứa nhiều lỗi bảo mật
Trang 4ứng dụng như IPSec.
Trang 5Cấu trúc SSL
Trang 6 SSL Alert protocol: Giao thức cảnh báo.
SSL Record protocol: Giao thức chuyển
dữ liệu (thực hiện mã hóa và xác thực)
Trang 7Connection và session
Kết nối (connection): quan hệ truyền
dữ liệu giữa hai hệ thống ở lớp vận
chuyển
Phiên (session): Quan hệ bảo mật
giữa hai hệ thống Mỗi session có thể khởi tạo nhiều connection
Giữa hai hệ thống có thể tồn tại nhiều connection => có thể tồn tại nhiều
session theo lý thuyết
Trang 8Session state
Trạng thái của phiên làm việc được xác định bằng các thông số:
Session identifier: nhận dạng phiên
Peer Certificate: Chứng chỉ số của đối tác
Compression method: thuật tóan nén
Cipher spec: thông số mã hóa và xác thực
Master secret: khóa dùng chung
Is resumable: có phục hồi kết nối không
Trang 9Connection state
Trạng thái kết nối xác định với các thông số:
Server and client random: chuỗi byte ngẫu nhiên
Server write MAC secret: khóa dùng cho thao tác MAC phía server
Client write MAC secret: khóa dùng cho thao tác MAC phía client
Server write key: Khóa mã hóa phía server
Client write key: Khóa mã hóa phía client
IV và sequence number
Trang 10Giao thức SSL record
Cung cấp hai dịch vụ cơ bản:
Confidentiality
Message integrity
Trang 11Giao thức SSL record
Trang 12Giao thức SSL record
Phân đọan (fragmentation): mỗi khối
dữ liệu gốc được chia thành đọan,
kích thước mỗi đọan tối đa = 214 byte
Nén (compression): có thể sử dụng các thuật tóan nén để giảm kích
thước dữ liệu truyền đi, tuy nhiên
trong các phiên bản thực thi ít chấp nhận thao tác này
Trang 13Giao thức SSL record
Tạo mã xác thực (MAC)
hash(MAC_write_secret || pad_2 || hash (MAC_write_secret || pad_1 || seq_num || SSLCompressed.type ||
SSLCompressed.length ||
SSLCompressed.fragment)) Pad_1 = 0011 0110 (0x36)
Pad_2 = 0101 1100 (0x5C)
Lặp lại 48 lần
Trang 14Giao thức SSL record
Mã hóa
Trang 15Giao thức SSL record
Cấu trúc tiêu đề SSL record
Trang 16Giao thức SSL Change Cipher
Spec
Có chức năng cập nhật thông số mã hóa cho cho kết nối hiện tại
Chỉ gồm một message duy nhất có kích thước 1 byte được gởi đi dùng giao thức SSL record
Trang 17(thường hay nghiêm trọng)
Cảnh báo thường (warning): phiên làm việc vẫn duy trì nhưng không tạo thêm kết nối mới Cảnh báo nghiêm trọng (fatal): kết
thúc phiên làm việc hiện hành
Trang 18Giao thức SSL Alert
Một số bản tin cảnh báo trong SSL:
unexpected_message: bản tin không phù hợp
bad_record_mac: MAC không đúng
decompression_failure: Giải nén không thành
công
handshake_failure: Không thương lượng được
các thông số bảo mật.
illegal_parameter: Bản tin bắt tay không hợp lệ
close_notify: Thông báo kêt thúc kết nối.
Trang 19Giao thức SSL Alert
Một số bản tin cảnh báo trong SSL (tt):
no_certificate: Không có certificate để cung cấp
theo yêu cầu.
bad_certificate: Certificate không hợp lệ (chữ ký
Trang 20Giao thức SSL handshake
Là phần quan trọng nhất của SSL
Có chức năng thỏa thuận các thông
số bảo mật giữa hai thực thể
Thủ tục bắt tay phải thực hiện trước khi trao đổi dữ liệu
SSL handshake gồm 4 giai đọan
(phase)
Trang 22trao đổi khóa (***)
-Certificate_request: yêu cầu
client gởi chứng chỉ
-Server_hello_done: kết thúc
thương lượng phía server
Client Server
Trang 23Giao thức SSL handshake
-Certificate: Chứng chỉ của client
-Client_key_exchange:Thông số
trao đổi khóa (***)
-Certificate_verify: thông tin xác
minh chứng chỉ của client (xác
thực khóa PR của client)
Trang 25Giao thức SSL handshake
Trao đổi khóa trong SSL handshake:
Dùng RSA (certificate chứa PU)
Fixed Hellman: Dùng
Diffie-Hellman với khóa cố định.
Trang 26Tấn công kết nối SSL
Nếu chặn được các thông số của quá trình trao đổi khóa Diffie-Hellman, có thể thu được khóa bí mật bằng kỹ
thuật Man-in-the-middle
Dùng khóa bí mật để giải mã thông tin của giao thức SSL record
Trang 27Triển khai SSL với dịch vụ
Tạo và cài đặt certificate cho server
Ràng buộc SSL đối với tất cả các giao dịch.