• Tấn công chuyển tiếp các gói VoIP (VoIP packet relay Attack): bắt và gửi lại các gói VoIP đến điểm cuối, cộng thêm việc trì hoãn tiến trình cuộc gọi sẽ làm giảm chất lượng cuộc gọi.
• Tấn công thay đổi chất lượng dịch vụ (QoS Modification Attack): thay đổi các trường thông tin điều khiển các giao thức VoIP riêng biệt trong gói dữ liệu VoIP và từ điểm cuối làm giảm hoặc từ chối dịch vụ thoại. Ví dụ, nếu một người tấn công đổi thẻ 802.1Q VLAN hoặc bit To Strong trong gói IP, cũng giống như là người đứng giữa (man-in-the-middle) hay sự thỏa hiệp trong cấu hình thiết bị đầu cuối, người tấn công có thể sẽ phá vỡ chất lượng dịch vụ của mạng VoIP. Do lưu lượng thoại phụ thuộc vào lưu lượng dữ liệu nên về căn bản, kẻ tấn công có thể trì hoãn việc phân phát các gói thoại.
• Tấn công bằng các gói VoIP giả mạo (VoIP packet Injection): tức là gửi các gói VoIP giả mạo đến điểm cuối, thêm vào đoạn thoại hay nhiễu hay khoảng lặng vào hoạt động thoại. Ví dụ khi RTP được dùng mà không có sự xác thực của gói RTCP (và cả không có sự lấy mẫu của SSRC), kẻ tấn công có thể tiêm thêm các gói RTCP vào nhóm multicast với SSCR khác, mà điều này có thể làm tăng số lượng nhóm theo hàm mũ.
• Tấn công DoS vào các dịch vụ bổ xung (DoS against supplementary services): khởi đầu tấn công DoS là chống lại các dịch vụ mạng khác mà dịch vụ VoIP có mối liên hệ ( ví dụ: DHCP, DNS, BOOTP). Ví dụ trong mạng mà đầu cuối VoIP dựa vào địa chỉ đăng ký DHCP, làm mất khả năng của DHCP server ngăn chặn điểm cuối lấy được địa chỉ và các thông tin định tuyến cần thiết dùng cho dịch vụ VoIP.
• Thông điệp giả (Bogus Message DoS): gửi đến VoIP server và các điểm cuối các giao thức VoIP giả mạo nhằm hủy kết nối hoặc tình trạng bận ở đầu cuối. Kiểu tấn công này làm cho các phone phải xử lý các message giả và các đầu cuối phải thiết lập những kết nối ảo hoặc làm cho người tham gia cuộc gọi lầm rằng đường dây đang bận.
• Tràn ngập các gói điều khiển: (Control Packet Flood) : làm tràn ngập VoIP server hoặc đầu cuối với những gói điều khiển cuộc gọi không rõ nguồn gốc (ví dụ trong H.323, các gói GRQ, RRQ, URQ sẽ được gửi đến UDP/1719). Mục đích của kẻ tấn công là làm suy yếu thiết bị hệ thống hoặc tài nguyên mạng. Do đó không thể dung các dịch vụ VoIP. Bất kể các port mở trong tiến trình cuộc gọi và VoIP server lien quan có thể trở thành mục tiêu của kiểu tấn công DoS này.
34 trang |
Chia sẻ: lethao | Lượt xem: 2839 | Lượt tải: 3
Bạn đang xem trước 20 trang tài liệu Đồ án Nghiên cứu về VoIP, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
gọi không mong muốn. Nguyên nhân của hiện tượng này giống các như e-mail spam, hầu hết đều với mục đích bán sản phẩm, quảng cáo,…Phương pháp Spam là dùng các đoạn script tự động để thực hiện các cuộc gọi tới nhiều người. Nó cũng có thể thực hiện với mục đích giả dạng các cơ quan tài chính hay thương mại điện tử để lấy thông tin cá nhân.
Khác với email-spam, các cuộc gọi SPIT sẽ được nhận hoặc chuyển sang hộp thư thoại. Nhận SPIT tốn thời gian và có thể gây nghẽn. Cũng như email-spam, ta cần chặn voice spam. Tuy nhiên, chặn SPIT khó khăn hơn rất nhiều vì rất khó phân biệt được cuộc gọi bình thường và cuộc gọi SPIT vì thông tin về người gọi chỉ được tiết lộ một khi cuộc gọi đã được thiết lập và bắt đầu gửi thư thoại.
Lỗ Hổng Đối Với SIP.
SIP là một giao thức mới lại không có tích hợp công cụ bảo mật nào trong nó nên nó có một số vấn đề về bảo mật. Tuy nhiên, theo khuyến nghị khuyên nên dùng các lớp dưới để bổ sung tính bảo mật cho SIP. Mặt khác là giao thức text-based nên cần dùng TLS để mã hóa.
Chiếm quyền đăng kí (Registration Hijacking).
Bản tin đăng ký thường được vận chuyển bằng giao thức UDP (không được tin cậy), hơn nữa các yêu cầu đăng ký không cần phải được chứng thực bởi SIP registrars, hoặc nếu có chứng thực thì cũng chỉ bằng MD5 để mã hóa user name và password (MD5 là một thuật toán mã hóa yếu).
Cách tấn công:
Tìm một địa chỉ IP đã được đăng kí. (Đối với các user trong mạng dễ dàng biết được cấu trúc địa chỉ trong mạng, còn với những user ngoài mạng thì dùng kĩ thuật social engineering hay tool để quét ra địa chỉ của toàn mạng). Nếu có yêu cầu chứng thực thì có thể đoán password hoặc dùng kiểu từ điển. Đối với tấn công kiểu từ điển thì mất thời gian do phải thử nhiều lần.
Gửi một yêu cầu đăng kí đặc biệt có kí tự “*” để xóa hết ràng buộc cho các địa chỉ SIP bị gọi.
Gửi bản tin yêu cầu đăng kí thứ hai chứa địa chỉ SIP của kẻ tấn công.
Hình 3.7 : Tấn công bằng bản tin đăng ký
Một kiểu cướp quyền đăng kí khác là dùng tool chặn và thêm vào yêu cầu đăng kí khi nó được gửi từ một UA và server đăng ký. Kiểu tấn công này ít phổ biến hơn.
Giả dạng proxy.
Kẻ tấn công dùng một proxy để chặn cuộc gọi từ UA đến proxy bên phía bị gọi. Cách tấn công này có thể lấy được tất cả bản tin SIP và do vậy có toàn quyền điều khiển cuộc gọi.
Cách tấn công:
Chèn proxy giả vào bằng DNS spoofing, ARP cache spoofing hay đơn giản chỉ là thay đổi địa chỉ proxy cho SIP phone.
Hình 3.8 : Giả dạng Proxy
Message Tempering
Đây là kiểu tấn công chặn và thêm vào các gói mà các thành phần của SIP trao đổi với nhau.
Có thể dùng các cách sau để chặn gói:
Cướp quyền đăng kí
Giả dạng proxy
Tấn công một trong các thành phần tin cậy trong mạng
Có thể dùng S/MIME (chứng thực và mã hóa văn bản) nhưng nếu như văn bản ở dạng plaintext thì kẻ tấn công vẫn có thể lấy được thông tin định tuyến.
Kết thúc session
Quan sát các thông số trong 1 session như “To” và “From” sau đó chèn bản tin “BYE” hay re-INVITE để kết thúc cuộc gọi. Cách tấn công này có thể làm chuyển hướng cuộc gọi. Kiểu tấn công này rất khó phòng chống vì các trường như địa chỉ đích cần gửi đi ở dạng plaintext để cho phép định tuyến.
Lỗ Hổng Về Bảo Mật Đối Với Hệ Thống H.323
Do H.323 sử dụng phương thức chứng thực tương đối chắc chắn giữa các thành phần H.323 và là giao thức có hỗ trợ bảo mật (H.235) nên luồng dữ liệu rất bảo mật. Tuy vậy cũng có một vài lỗ hổng, nghiêm trọng nhất là tràn bộ đệm do nó dùng định dạng bản tin ASN.1, dễ dàng bị DoS.
Can thiệp vào thông tin tính cước
GK là nơi quản lý cuộc gọi, nó có chức năng tập trung thông tin tính cước và gửi về cho BES, BES lưu giữ thông tin này và gọi là CDR (Call Detail Record), thông tin này tối thiểu phải gồm có:
- Thời gian cuộc gọi: thời gian bắt đầu và kết thúc cuộc gọi, do GK theo dõi.
- CallID: mỗi cuộc gọi có 1 giá trị duy nhất khác nhau do GK tạo ra.
- UserID: duy nhất cho mỗi user được cấp quyền, giá trị này xác định tại thời điểm đăng ký.
CDR được gửi từ GK tới BES, do đó có thể chặn các gói này, sửa thông tin thời gian cuộc gọi. Để khắc phục phải chứng thực giữa GK và BES đồng thời phải đảm bảo toàn vẹn dữ liệu.
Cuộc gọi trực tiếp.
Tính cước dựa trên việc cuộc gọi được định tuyến thông qua GK. Tuy nhiên, đầu cuối trong mạng H.323 có khả năng gọi trực tiếp mà không thông qua GK miễn là nó biết được địa chỉ IP của người bị gọi.
Traffic RTP luôn được gửi trực tiếp giữa các đầu cuối, do đó chỉ cần 1 cuộc gọi là có thể xác định được địa chỉ IP của bên bị gọi. Để khắc phục thì gateway chỉ cho phép thông tin báo hiệu từ GK đi qua.
Giả dạng đầu cuối.
Để khởi tạo cuộc gọi, EP phải tiến hành 3 bước: đăng ký, xin chấp nhận cuộc gọi (Call Admission) và Q.931 thiết lập cuộc gọi. Quá trình đăng ký và xin chấp nhận cuộc gọi sử dụng bản tin RAS truyền qua UDP. Do đó, không có một phiên thực sự nào dành cho bản tin RAS, kẻ tấn công có thể chèn các bản tin này vào. Thông tin báo hiệu thực sự dùng bản tin Q.931 và được vận chuyển thông qua TCP.
Giả dạng EP trong giai đoạn đăng ký, sau đó kẻ giả dạng có thể thực hiện tất cả các dịch vụ mà một user được phân quyền có. Kiểu giả dạng này thành công nếu user bị giả dạng không đăng ký vào thời điểm giả dạng và nếu UserID là một IP thì chỉ có user trong cùng mạng mới có thể giả dạng được.
Tấn công trong giai đoạn xin chấp nhận cuộc gọi, cũng phải cùng mạng mới tấn công được vì phải biết được UserID của user muốn giả dạng.
Tấn công bằng các bản tin Q.931. Các bản tin Q.931 được xác định bằng trường CallID nên giá trị này phải hợp lệ. CallID được sinh ra trong quá trình xin chấp nhận cuộc gọi vì vậy kẻ tấn công hoàn toàn có được vì cuộc gọi đã được cho phép. Nhưng nếu giá trị CallID đã được dùng thì tấn công không thành công.
Bỏ qua giai đoạn xin chấp nhận cuộc gọi, dùng preGranted ARQ cho một nhóm user, GK không thể phát hiện ra và sẽ thiết lập cuộc gọi bình thường. Chứng thực có thể ngăn chặn được kiểu tấn công này. Các kiểu tấn công trên chỉ có thể thực hiện khi không có các biện pháp bảo mật. Nếu chứng thực được dùng thì độ bảo mật phụ thuộc vào độ phức tạp của password.
Giả dạng GK
Giả dạng một bằng một GK khác: GK giả mạo chấp nhận yêu cầu thiết lập cuộc gọi do không có hỗ trợ bảo mật cho Q.931. Có thể ngăn chặn bằng cách thông tin cho GK về toàn bộ GK có trong mạng. Thông thường thì các GK đăng ký với BES nên 1 GK có thể lấy thông tin và địa chỉ IP khi đăng ký với BES.
Giả dạng BES
BES chỉ giao tiếp với GK bằng 1 giao thức client-server riêng. Có thể tấn công bằng cách chặn 1 bản tin từ GK tới BES, sau đó thay đổi một số trường như password của EP.
Hỗ Trợ Bảo Mật Cho Các Giao Thức Báo Hiệu VoIP.
Hỗ Trợ Bảo Mật Cho Mạng H.323
H.235 ver 2.
H.235v2 là một khuyến nghị của ITU-T, hỗ trợ tính năng bảo mật cho H.323 về chứng thực và đảm bảo tính riêng tư.
Chứng thực: Quá trình chứng thực là xác định các bên tham gia cuộc gọi là ai. Có hai phương thức chứng thực là khóa chia sẻ và khóa công khai dựa vào chứng chỉ. Chứng thực có thể là đơn hướng hay song hướng. Quá trình này thường diễn ra giữa EP và Gateway hoặc GK.
H.235 cũng sử dụng các giao thức khác hỗ trợ bảo mật như IPsec và TLS. Để chứng thực cuộc gọi, kênh điều khiển cuộc gọi (H.245) phải được bảo mật vì những thông tin truyền trên kênh này bao gồm các bản tin thỏa thuận các thuật toán mã hóa và khóa mã hóa.
H.235v2 gồm có các thuộc tính bảo mật sau:
Thuộc tính bảo mật cơ bản.
Endpoint và Gatekeeper dùng chung một khóa mật cho mã hóa, khóa này được lưu trong BES. Khi Endpoint đăng ký với Gatekeeper thì Gatekeeper yêu cầu khóa mật từ BES, dùng nó để xác định các bản tin được gửi từ Endpoint và tính toán ra thẻ bài cho các bản tin mà Gatekeeper gửi đến Endpoint. Các thẻ bài này là các giá trị được tính toán bởi thuật toán đi cùng bản tin kết hợp với khóa mật. Thẻ bài sau khi được tính toán sẽ đính vào bản tin. Endpoint sẽ xác thực bản tin từ Gatekeeper bằng khóa mật. Phương thức chứng thực này hoạt động hop-by-hop. Tại mỗi hop, thông tin chứng thực được xác nhận và tính lại.
Chức năng của dạng profile này chia làm 2 phần:
Phần cho báo hiệu cuộc gọi (H.225 và H.245): đây là chức năng chính, đảm bảo chứng thực và toàn vẹn dữ liệu.
Phần mã hóa thoại: đây là chức năng tùy chọn.
Bảng 3-1 : Các thuộc tính bảo mật cơ bản cho từng loại báo hiệu H.323
Đặc điểm
RAS
H225
H245
RTP
Chứng thực
HMAC-SHA1-96 Password
HMAC-SHA1-96
Password
HMAC-SHA1-96 Password
Toàn vẹn
HMAC-SHA1-96 Password
HMAC-SHA1-96
Password
HMAC-SHA1-96Password
Điều khiển truy nhập
168bit 3DES
Quản lý khóa
Subscription-based password
Subscription-based password/Diffie Hellman
Intergrated H.235
Chữ ký điện tử.
Profile này dùng chữ ký số và không cần chỗ lưu khóa mật nên giải pháp này linh động và thích hợp hơn. Phương pháp chứng thực cho user là bằng chứng chỉ, quá trình xác thực certificate giúp tránh bị tấn công theo kiểu man-in-the-middle-attack. Phương thức này còn đảm bảo tính chất không thể chối cãi.
Bảng 3-2 : Thuộc tính bảo mật chữ ký điện tử cho các loại báo hiệu H.323
Đặc điểm
RAS
H225
H245
Chứng thực
SHA1/MD5
Digital signature
SHA1/MD5
Digital signature
SHA1/MD5
Digital signature
Toàn vẹn
SHA1/MD5
Digital signature
SHA1/MD5
Digital signature
SHA1/MD5
Digital signature
Quản lý khóa
Certificate allocation
Certificate allocation
Thuộc tính bảo mật Hybird.
Thuộc tính này là kết hợp giữa thuộc tính bảo mật cơ bản và chữ ký điện tử. Chứng thực và chữ ký số dùng để chứng thực, đảm bảo toàn vẹn và chống chối bỏ trong quá trình bắt tay giữa các thành phần trong H.323. Cuộc gọi trong giải pháp này phải được định tuyến qua Gatekeeper.
H.235 Annex G.
Thuộc tính này hỗ trợ SRTP và MIKEY.
SRTP: là phương thức hỗ trợ bảo mật cho RTP, nó cung cấp khả năng chứng thực, sự tin cậy và chống .
MIKEY: do SRTP không có một cơ chế quản lý khóa nên phải dùng MIKEY, một cơ chế quản lý khóa độc lập, để hỗ trợ.
H.235 Annex H.
Khi Endpoint tìm kiếm và đăng ký với Gatekeeper trên kênh RAS, khóa thỏa thuận sẽ được quản lý và bảo mật bằng giải thuật DH trong các bản tin GRQ, GCF.
H.235 Annex I
Áp dụng cho kiểu định tuyến trực tiếp giữa hai Endpoint. Gatekeeper lúc này đóng vai trò phân phối khóa bằng thẻ bài. Có một thẻ bài chứa khóa mã hóa cho người gọi và một thẻ cho người bị gọi, ngoài ra còn có một thẻ mang khóa phiên, xác định phiên kết nối.
H.235v3.
H.235v3 được phát triển để thay thế cho H.235v2 với đặc trưng là một thủ tục mã hóa cho tín hiệu DTMF, mục là sử dụng thuật toán mã hóa AES cho các lưu lượng truyền thông và phản hồi từ xa được nâng cao. Hơn nữa, xác thực làm tăng tính mềm dẻo cho dữ liệu khi đi qua NAT/firewall, thuộc tính này hỗ trợ rất tốt trong trường hợp các cuộc gọi định tuyến trực tiếp.
H.235v3 bao gồm các thuộc tính bảo mật sau :
1.2.1 Tăng cường thuộc tính bảo mật cơ bản.
Trong H.235v3 thuộc tính này sử dụng tính toàn vẹn và nhận thực bản tin một cách hợp lý thông qua việc tính toán một giá trị kiểm tra tính toàn vẹn trên bản tin. Hoặc sự nhận thực được xác định bởi tính toán một kiểm tra toàn vẹn trên một phần thông điệp. Với thuộc tính này thì phương pháp bảo mật sử dụng NAT và Firewall
Bảng 3-3 :thuộc tính bảo mật cơ bản của H.235v3
Đặc điểm
RAS
H225
H245
Chứng thực
Shared Secret
HMAC-SHA1-96
Shared Secret
HMAC-SHA1-96
Shared Secret
HMAC-SHA1-96
Toàn vẹn
Shared Secret
HMAC-SHA1-96
Shared Secret
HMAC-SHA1-96
Shared Secret
HMAC-SHA1-96
Quản lý khóa
Subscription-based password assignment
Subscription-based password assignment
Cách sử dụng SRTP và MIKEY.
Phương pháp này kết hợp quản lý khóa hỗ trợ cho giao thức truyền tải thời gian thực bảo mật SRTP. SRTP cung cấp sự tin cậy, chứng thực bản tin và bảo vệ việc chuyền lại cho các lưu lượng RTP và RTCP. SRTP có thể sử dụng với các phiên đa truyền thông để đảm bảo một trao đổi dữ liệu truyền thông bảo mật. SRTP có thể được sử dụng trong các giao thức báo hiệu H.323 và SIP. SRTP không định nghĩa việc quản lý khóa bởi chính nó mà nó sử dụng các thông số đàm phán từ các khóa phiên để mật mã, chứng thực và bảo vệ toàn vẹn các thông điệp do vậy các khóa này không cố định mà có thể thay đổi.
MIKEY hỗ trợ đàm phán khóa mật mã và các thông số bảo mật cho một hoặc nhiều giao thức bảo mật. MIKEY được đưa ra từ khái niệm cá gói phiên bí mật, mà mô tả như một tập hợp các phiên bí mật có khóa mật mã lưu lượng chung TEK (Traffic Encryption), khóa phát sinh lưu lượng TGK (Traffic Generation Key) và các thông số bảo mật phiên.
MIKEY định nghĩa ba lựa chọn cho việc xác thực người sử dụng và đàm phán khóa chủ :
Phân bổ khóa đối xứng
Phân bổ khóa không đối xứng
Sử dụng khóa Diffie Hellman để bảo vệ bởi chữ kí số
Quản lý khóa RAS
Ý tưởng chính trong phương pháp này là đàm phán quản lý khóa trong quá trình RAS Gatekeeper ở giai đoạn khám phá. Trong quá trình gatekeeper khám phá một Shared Secret được thiết lập giữa điểm đầu cuối và gatekeeper. Việc đàm phán Shared Secret có thể được bảo vệ bằng PIN hoặc Password trong quá trình khởi tạo phase của giao thức.
Hai giao thức cho trao đổi khóa bí mật sử dụng một Shared Secret như là trao đổi khóa Diffie-Hellman. Đầu tiên là trao đổi khóa Diffie-Hellman, ở đây Shared Secret được sử dụng để mật mã khóa công cộng dưới thuật toán đối xứng. Thứ hai là một password đơn để xác thực trao đổi khóa theo hàm mũ, ở đây Shared Secret hình thành một nhóm Diffie-Hellman. Cách sử dụng các giao thức này làm tăng hiệu quả cho việc trao đổi khóa Diffie Hellman.
PIN và password sử dụng để bảo vệ việc trao đổi thông số của hệ thống khóa công cộng bằng việc mật mã sử dụng thuật toán đối xứng trong chế độ CBC.
TLS sử dụng để bảo vệ phase báo hiệu cuộc gọi. Đàm phán RAS thay thế bởi giao thưc bắt tay TLS, cách này chỉ sử dụng trong trường hợp báo hiệu định tuyến qua Gatekeeper. Trong liên kết các gatekeeper việc chứng thực và báo hiệu sử dụng trao đổi LRQ/LCF.
Hỗ Trợ Bảo Mật Cho Giao Thức SIP.
Để bảo mật các dịch vụ SIP, IETF phát triển ba giao thức TLS, S/MIME và SRTP là những lớp hỗ trợ bảo mật thêm vào cho các giao thức của SIP chứ không phải hoàn toàn là 1 giao thức bảo mật.
VoIP Application
RTP
SIP
SRTP
TLS Þ
UDP
TCP
IP
MAC
Þ : PKI certificate
Hình 3.9 : Các lớp bảo mật hỗ trợ cho các giao thức của SIP
Bảng 3-4 : Các hỗ trợ bảo mật cho SIP
Công cụ bảo mật
Phương thức chứng thực
Tính tin cậy
Toàn vẹn
S/MIME
PKI
Có
Có
TLS
PKI
Có
Có
HTTP Digest
Pre-shared key
Không
Không
TLS: Trao đổi khóa và bảo mật cho các gói tin báo hiệu.
TLS dựa trên SSL ver 3, chuẩn hóa bởi IETF. TLS cung cấp một kênh bảo mật, trong suốt giữa hai đầu cuối. “Trong suốt” ở đây có nghĩa là dữ liệu đi qua kênh này không bị thay đổi, và nó cho phép các giao thức chạy trên TCP cũng có thể chạy trên TLS. Vì vậy, TLS nằm ngay phía trên giao thức TCP và dưới SIP hay nói cách khác là SIP được mã hóa bởi TLS và truyền qua kết nối TCP.
Nhìn chung, TLS được chọn để bảo mật các bản tin báo hiệu của SIP. SDU (Service Data Unit) từ lớp trên được mã hóa trước khi truyền đi, còn phía bên kia PDU (Protocol Data Unit) được giải mã và chuyển lên lớp bên trên. Hai phía đều phải có chứng chỉ hợp lệ do CA (Certificate Authority) cấp cho quá trình bắt tay của TLS.
Chứng chỉ và trao đổi khóa
Quá trình bắt tay giữa client và server nhằm thương lượng các thuật toán bảo vệ dữ liệu và tạo một số khóa mật mã dùng bởi các thuật toán này.
Hình 3.10 : Quá trình bắt tay giữa client và server trong SSL
Bản tin ClientHello và ServerHello trao đổi danh sách các thuật toán sẽ sử dụng.
Chứng chỉ của server và khóa công khai được chứa trong bản tin chứng chỉ.
Khi client nhận bản tin chứng chỉ, nó sẽ có khóa công khai và dùng khóa này để mã hóa một khóa mật Pre-Master do nó tự tạo ra và gửi kèm theo bản tin ClientKeyExchange tới server. Trong khi đó, KDF (Key Derivation Function) sẽ tạo ra một master key từ khóa mật Pre-Master.
Phía server, bản tin ClientKeyExchange được giải mã bằng khóa riêng của server, có được khóa mật Pre-Master và dùng cùng KDF để tạo ra master key.
Client dùng master key tạo ra tạo ra MAC (Message Authentication Code) của toàn bộ bản tin mà nó nhận được từ server trước đó rồi gửi kèm theo bản tin Finished tới server.
Server dùng master key tạo ra một MAC của toàn bộ bản tin mà nó nhận được từ client trước đó rồi gửi kèm theo bản tin Finished tới server.
Cả client và server kiểm tra tính toàn vẹn của giá trị MAC với các bản tin chúng đã gửi. Nếu đúng thì cả hai có chung Khóa mật Master
Hình 3.11 : Dữ liệu lớp trên đóng gói bởi TLS/SSL
Bảo mật cho gói tin thoại/video SRTP
SRTP : là giao thức phát triển hỗ trợ cho RTP để mã hóa, chứng thực bản tin, chống nghe lén. Nó nằm giữa lớp ứng dụng RTP và lớp vận chuyển RTP. SRTP cũng có SRTCP, hỗ trợ các chức năng bảo mật cho RTCP. SRTP mã hóa các gói thoại dùng AES, thuật toán mã hóa dùng khóa đối xứng và có khả năng nén RTP header. Phần tải RTP được mã hóa sau đó đóng gói vào trong gói SRTP.
Nhược điểm: mất thời gian xử lý hơn nên có thể tăng trễ.
Điều quan trọng nhất trong SRTP là sự an toàn của khóa trao đổi giữa hai bên bao gồm: địa chỉ IP, số port UDP, SSRC. Cài đặt khóa cho tất cả các máy điện thoại thì quá phức tạp, vì vậy RTP và SRTP nên ở chung một lớp hơn là hai lớp tách biệt.
MIKEY
Là một giải pháp quản lý khóa. Nó có ba cách vận chuyển và thiết lập khóa mã hóa TEK: preshared key, public key và DH (Diffie Hellman). Với preshared key, public key thì khóa được đưa tới người nhận một cách an toàn, còn với DH thì khóa được sinh ra dựa trên các giá trị trao đổi giữa hai bên.
SDP Security Descriptions
SDP Security Descriptions là thuộc tính mới của SDP, dùng để báo hiệu và thương lượng các thông số mã hóa cho luồng SRTP, gồm: bộ mật mã, thông số khóa, thông số phiên cho luồng unicast.
a=crypto: []
Trong đó:
: số thập phân, nhận dạng thuộc tính crypto
thuật toán chứng thực và mã hóa
phương thức và thông tin khóa thực sự
thông số tùy chọn chỉ giao thức vận chuyển
Thuộc tính này chỉ hạn chế cho các luồng unicast, các dịch vụ bên dưới của giao thức vận chuyển (IPsec, TLS, S/MIME) bảo đảm cho thuộc tính này của SRTP.
Ngoài TLS và SRTP còn phải có các thuật toán khác hỗ trợ chứng thực user, xác thực chứng chỉ, trao đổi khóa mã hóa.
Bảo đảm sự tin cậy
Sự tin cậy được bảo đảm bằng cách mã hóa tải mà chỉ có người có khóa mới đọc được.
Hình 3.12 : Mã hóa trong SRTP
Giá trị khởi tạo ban đầu + khóa = 128 bit block Bi,j (giá trị khởi tạo ban đầu được tính bằng 48 bit chỉ số gói, 32 bit SSRC, 112 bit salting key dịch trái và XOR). Mỗi một block 128 bit này XOR với 1 block plaintext RTP để tạo ra 1 block cipher text.
Chứng thực bản tin
Toàn vẹn bản tin được đảm bảo nhờ hàm hash.
Hình 3.13 : Chứng thực gói SRTP
HMAC-SHA1 băm header và phần tải với khóa mật. Giá trị này là thẻ chứng thực của người gửi. Người nhận cũng tính toán tương tự và so sánh với thẻ, nếu không đúng thì chứng thực thất bại và gói bị bỏ.
Replay Protection
ROC và sliding window được dùng để chống ghi lén. 16 bit số thứ tự trong header và 32 bit ROC trong bảng mật mã tạo thành 48 bit, là chỉ số của gói. Chỉ số gói được mã hóa cùng với các thông số khác để tạo các chuỗi khóa.
Hình 3.14 : Chống ghi lại bằng Sliding Window
Chỉ số gói nhận được phải nằm trong phạm vi của sliding window và bit Received tương ứng phải là thứ tự gói xử lý tiếp theo, nếu không gói sẽ bị hủy. Nếu kẻ tấn công chọn một số ngẫu nhiên, kích thước cửa số là 64 thì 99% (1-64/216) gói bị hủy.
2.5 S/MIME: Chứng thực bản tin
S/MIME mã hóa bằng khóa công khai, đóng gói theo định dạng MIME. Cung cấp các dịch vụ bảo mật cho các ứng dụng bản tin (HTTP, SIP) như: chứng thực, toàn vẹn bản tin, không chối cãi (nếu dùng chữ ký số), an toàn dữ liệu (do được mã hóa).
SIP gồm có header và phần bản tin SDP. Phần bản tin SDP được mã hóa bằng S/MIME, tuy nhiên các trường trong header như To, From, Call-ID, Cseq và Contact là cần thiết đối với các thành phần trung gian như SIP proxy server, firewall, UAS để thiết lập một cuộc gọi được yêu cầu nên nó phải ở dạng plaintext.
Hình 3.15 : Quá trình gửi bản tin của S/MIME
Quá trình trao đổi khóa và bản tin giữa hai hệ thống:
Bản tin gốc được băm bằng một thuật toán băm, nếu không có quá trình này thì sẽ mất nhiều thời gian xử lý hơn khi ký số vì bản tin quá dài.
Alice ký bản tin được băm bằng thuật toán chữ ký số và đính chữ ký đó kèm theo bản tin gốc.
Một session key được sinh ra ngẫu nhiên để mã hóa bản tin, chứng chỉ và chữ ký bằng một thuật toán mã hóa.
Key session được mã hóa bằng public key của Bob dùng thuật toán mã hóa public key, rồi đính kèm bản tin đã được mã hóa.
Phía bên nhận, dùng private key của Bob và cùng thuật toán mã hóa để giải mã ra session key.
Dùng session key vừa giải mã được giải mac cho bản tin, chứng chỉ và chữ ký số.
Bob kiểm tra xem bản tin có phải gửi từ Alice không và nó có bị thay đổi khi truyền không bằng cách:
Dùng thuật toán băm như bước 1
Bob xác nhận chứng chỉ của Alice là hợp lệ
Dùng thuật toán trong bước 2, giá trị băm được ký bởi public key của Alice.
Chữ ký được so sánh với chữ ký nhận được, nếu không đúng thì bản tin đã bị can thiệp.
Một Số Giải Pháp Bảo Mật Cho Hệ Thống VoIP.
Ngoài các hỗ trợ cho bản thân các giao thức VoIP thì hệ thống VoIP còn có các hỗ trợ bảo mật của chính các công nghệ bảo mật cho mạng Internet. Các công nghệ này không phải là những giải pháp tối ưu nhưng nó góp phần giải quyết những vấn đề trong mạng VoIP.
VLAN
Sự tích hợp thoại, dữ liệu và video trên cùng một mạng làm cho sự bảo mật của hệ thống VoIP cũng bị ảnh hưởng bởi các dịch vụ khác. Để có thể giải quyết được vấn đề này ta tách biệt về luận lý giữa các dịch vụ bằng VLAN
Hình 3.16 : Voice VLAN
Hình 3.16 là một ví dụ về ứng dụng kỹ thuật VLAN vào việc chia lưu lượng thoại và lưu lượng dữ liệu. Trong đó VLAN 20 được cấu hình cho các PC truyền thông dữ liệu, còn VLAN 150 được cấu hình cho IP Phone truyền thông lưu lượng thoại. Trên hình PC5 được nối với IP Phone, IP Phone được nối với Switch S3, port F0/18 trong S3 được cấu hình cho chế độ thoại. Khi có lưu lượng thoại đi đến S3 thì các lưu lượng thoại sẽ được đánh dấu bởi chỉ số “tag” vào khung lớp hai sau đó sẽ được chuyển qua port F0/18 đến IP Phone. Còn trong trường hợp lưu lượng dữ liệu bình thường thì không cần đánh chỉ số “tag” vào khung lớp hai và lúc này IP Phone làm nhiệm vụ chuyển tiếp khung dữ liệu tới các PC.
Hình 3.17 : Chi tiết IP Phone
Lợi ích của VLAN:
Giảm lưu lượng broadcast và multicast vì chỉ có các máy trong cùng một VLAN mới có thể thông tin được với nhau. VLAN được cấu hình trên switch.
VLAN dễ dàng quản lý, giúp quản lý thiết bị một cách tập trung. VLAN có thể sắp xếp và quản lý các PC hay softphone dựa vào chức năng, lớp dịch vụ, tốc độ kết nối hoặc những tiêu chuẩn khác.
Giảm delay và jitter, do đó cải thiện QoS.
Hệ thống VoIP có thể bị ảnh hưởng bởi sự thiếu bảo mật của các dịch vụ khác của mạng dữ liệu.
Hình 3.17 : VLAN phân theo chức năng
VLAN góp phần trong bảo mật hệ thống VoIP. Lưu lượng giữa các VLAN được đảm bảo (trừ khi sử dụng router). Nó làm giảm các broadcast lưu lượng trên mạng mà điện thoại phải nhận.
Quản lý lưu lượng bằng VLAN giúp cho lưu lượng SNMP và syslog không bị nhiễu với dữ liệu, dễ dàng hơn trong việc quản lý mạng.
VLAN còn làm giảm nguy cơ DoS. Do muốn liên lạc giữa các VLAN thì phải đi qua lớp mạng, các lưu lượng này sẽ bị lọc bởi các ACL trên lớp mạng.
Để bảo đảm an toàn cho lưu lượng tại lớp 2 thì cần hạn chế quyền truy cập bằng cổng console của Switch bằng cách sử dụng những phương pháp chứng thực mạng như RADIUS hay AAA.
VPN
Công nghệ VPN cung cấp một phưong thức giao tiếp an toàn giữa các mạng riêng dựa trên hạ tầng mạng công cộng. VPN thường được dùng để kết nối các văn phòng, chi nhánh với nhau, các người dùng từ xa về văn phòng chính. Công nghệ này có thể triển khai dùng các giải pháp sau: Frame Relay, ATM hay Leased line.
Các giao thức và thuật toán được dùng trong VPN bao gồm DES (Data Encryption Standard), Triple Des (3DES), IP Security (IPSec) và IKE.
Có hai loại kết nốit VPN:
Client – to – LAN
LAN – to – LAN
Hình 3.18 : Client-to-LAN VPN
Công nghệ VPN dựa trên kỹ thuật đường hầm (tunneling). Kỹ thuật này bao gồm đóng gói, truyền đi, giải mã, định tuyến. VPN có ba loại: Point – to – Point Tunneling Protocol (PPTP), Layer 2 Tunneling Protocol (L2TP), IPsec.
Point – to – Point Tunneling Protocol
Đây là một giao thức phát triển bởi Microsoft, làm việc ở lớp 2 trong mô hình OSI. PPTP đóng gói frame PPP vào gói IP bằng cách sử dụng GRE (General Routing Encapsulation).Các hình thức đảm bảo sự bảo mật gồm: chứng thực, mã hóa dữ liệu, lọc gói PPTP. PPTP dùng các giao thức chứng thực PPP gồm: EAP, MS-CHAP, PAP, trong đó MS-CHAP ver2 và EAP-TLS được xem là bảo mật nhất vì cả VPN server và VPN client đều chứng thực lẫn nhau. Tải trong PPP frame được mã hóa bằng RSA, RC4.
Trong MS-CHAP ver1 giá trị băm của LAN và của Windows NT được sinh ra dựa trên cùng một password và được gửi song song từ client đến server. Vì giá trị LAN manager hash được bảo mật kém nên các chương trình bẻ password có thể tấn công được, khi đã biết được giá trị băm của LAN, có thể dùng nó để tìm r