Bảo mật trong SIP

Một phần của tài liệu nghiên cứu giải pháp bảo mật cho thoại internet voip (Trang 26)

Các giao thức được thiết kế để phục vụ cho một mục đích nào đó và theo bản chất thì mỗi một giao thức có các đặc điểm của tập đầu vào (input) riêng. Vấn đề xảy ra khi mà giao thức phải nhận những đầu vào không mong đợi, và điều đó tạo nên các kết quả khó lường. SIP cũng vậy, các tấn công vào SIP có thể được xem là rất đa dạng.

SIP là một giao thức báo hiệu multimedia được chuẩn hóa bởi IETF. Kiến trúc này nổi bật với các đầu cuối User Agent (UA) và một tập hợp các server, bao gồm proxy server, registration server, redirection server…Ngay từ những ngày đầu SIP đã giành được rất nhiều sự tin dùng và chú ý do hệ thống kiến trúc mở và khả năng mở rộng cho những thiết bị di động và truyền thông multimedia. Đặc điểm của giao thức báo hiệu SIP là dựa trên giao thức Hypertext Transfer Protocol (HTTP) và mã hóa ASCII, nên nó rất dễ dàng để hiểu. Chính vì những đặc điểm này SIP có rất nhiều lỗ hổng bảo mật mà rất dễ bị hacker khai thác và tấn công. Sau đây là một vài điểm yếu quan trọng của SIP:

Cướp đăng ký (Registration Hijacking)

Đây chính là một điểm yếu của SIP, tương tự như kiểu tấn công “người đứng giữa (Man-in-the-middle)”. Hacker có thể giám sát các thông điệp REGISTER từ một User và thay đổi phần địa chỉ trong thông điệp này. Khi nhận được những thông điệp giả này, SIP registrar sẽ cập nhật địa chỉ hợp lệ thành các địa chỉ giả của hacker. Như vậy với một tấn công man-in-the-middle thành công thì khi một cuộc gọi đến User, cuộc gọi này sẽ được proxy server đăng ký và chuyển đổi sang thành cuộc gọi cho User tương ứng với địa chỉ giả của hacker.

IP Spoofing/Call Fraud

Hacker sẽ đóng giả một User hợp lệ với ID giả mạo và gởi một thông điệp INVITE hoặc REGISTER. Trong IPv4, chúng ta không thể khóa một IP giả mạo khi một thông điệp SIP được gởi dưới dạng clear text và một attacker có thể dùng một địa chỉ IP bất kỳ khác một cách dễ dàng. Khi một địa chỉ IP bất kỳ được gởi để đăng ký account thay vì gởi địa chỉ IP của User hợp lệ trong thông điệp SIP thì tất

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

20

cả những cuộc gọi đến User này đều được truyền đến sai địa chỉ và không bao giờ đến đúng với User hợp lệ. Nếu một hacker có thể dùng một địa chỉ IP hợp lệ và tạo một cuộc gọi với địa chỉ này thì hoàn toàn có thể tạo nên Call Fraud tức là tạo một cuộc gọi miễn phí.

Tràn ngập thông điệp INVITE (INVITE Flooding)

Hacker sẽ liên tục gởi những thông điệp INVITE với một địa chỉ ảo và làm tê liệt đầu cuối User hoặc SIP proxy server. Kiểu tấn công này tương tự giống như tấn công tràn ngập tín hiệu trong kết nối TCP.

BYE Denial of Service

Một gói báo hiệu SIP theo mặc định khi được gửi sẽ ở dạng clear text vì vậy nó có thể bị làm giả. Nếu hacker giám sát, theo dõi các thông điệp INVITE của chúng ta thì hoàn toàn có thể tạo một thông điệp BYE hợp lệ và có thể gởi nó đến một trong các bên tham gia truyền thông, kết quả là làm cuộc đàm thoại bị kết thúc một cách bất ngờ.

RTP Flooding

Kiểu tấn công này liên quan đến môi trường truyền. Hầu hết môi trường truyền đều dựa trên RTP. Một hacker có thể tạo nên những gói RTP giả và tấn công vào các đầu cuối, kết quả là làm giảm chất lượng dịch vụ hoặc reboot đầu cuối.

Spam over Internet Telephony (SPIT)

Spam là một vấn đề rất khó chịu đối với bất cứ ai sử dụng email ngày nay. Một cách thích hợp hơn nó còn được coi những email với mục đích thương mại mà người sử dụng không yêu cầu gởi (Unsolicited Commercial Email). Và có khi người sử dụng phải nhận đến hàng ngàn thông điệp như thế một ngày. Chúng ta thử tưởng tượng rằng những thông điệp này không những làm tràn đầy hộp mail mà còn làm cho hệ thống voicemail trong VoIP bị tắc nghẽn và quá tải.

Để ngăn chặn sự “tấn công” của những spammer thì rất là khó. Với một PC và một kết nối thì bất cứ ai cũng có thể trở thành một Spammer. Mặt khác giá thành phải trả cho một thông điệp là quá nhỏ, không giống như cước phí voice mail ở điện

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

21

thoại truyền thống. Chỉ với một số tiền nhỏ thôi thì spammer có thể gởi đến hàng ngàn thông điệp. Vì thế các spammer không gặp nhiều khó khăn về cước phí.

Một đặc điểm khác đó là một địa chỉ Internet thì được chứa trong điện thoại, giống như là SIP URL. Vì thế những người tiếp thị qua điện thoại, hoặc quảng cáo hợp lệ hay không hợp lệ có thể dùng những công cụ tự động để phân phát hàng loạt những thông điệp không mong muốn như thế. Như ta đã biết thì thị trường VoIP đang ngày càng mở rộng một cách nhanh chóng. Chính vì vậy đây cũng là một môi trường để các nhà kinh doanh khai thác để quảng cáo, tiếp thị…lúc này kích thước của bộ nhớ để chứa các thông điệp là một vấn đề thực tế.

Spam Over Internet Telephony (SPIT) giống tương tự như là spam, một cách tiềm tàng nó có thể làm tràn hộp thư thoại của chúng ta. Những thông điệp này có thể được chỉ có thể được xóa bằng tay, và chúng ta không thể làm thế nào để lọc bỏ nó.

Trong tình huống xấu nhất, một phần mềm VoIP SPAM có thể dễ dàng phân phát hàng ngàn thông điệp một cách dễ dàng. Lúc này SPIT có thể trở thành một dạng tấn công DoS mới làm tràn ngập tài nguyên của hệ thống mail trong doanh nghiệp.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

22

CHƢƠNG 2. BẢO MẬT THÔNG TIN TRONG VOIP 2.1. Các vấn đề về bảo mật thông tin VoIP

2.1.1. Tấn công từ chối dịch vụ (DoS)

Tấn công DoS là kiểu tấn công gửi yêu cầu liên tục với số lượng lớn đến dịch vụ cần tấn công, có thể là dựa vào lỗi của mục tiêu. Tùy theo nguồn của các tấn công mà chia thành DoS thông thường và DDoS. Mục đích là làm cho mục tiêu bị ngưng trệ không có khả năng đáp ứng dịch vụ được gửi tới. Mức độ nặng có thể khiến hệ thống bị hỏng, cơ sở dữ liệu bị phá vỡ,…

Đối với hệ thống VoIP các mục tiêu có khả năng bị tấn công DoS là : - Content/protocol layer - SDP, encoded voice, encoded video

- Application - H.323, SIP, RTP, RTCP, Radius, Diameter, HTTP, SNMP - Application-level encryption - TLS/SSL (adsbygoogle = window.adsbygoogle || []).push({});

- Transport - TCP, SCTP, UDP - Network-level encryption - IPSec - Network - IPv4, IPv6

- Link - PPP, AAL3/4, AAL5

- Physical - SONET, V.34, ATM, Ethernet

Các mục tiêu tiềm năng liên quan đến giao thức SIP:

- Tấn công ở mức thấp sử dụng các giao thức IPv4, UDP, TCP - Tấn công vào TLS hoặc IPSec

- Tấn công vào SIP sessions - Tấn công vào RTP streams

Việc tấn công làm gián đoạn dịch vụ có thể là do tấn công từ chối dịch vụ DoS. Trong tấn công DoS có hai loại chính là DoS thông thường và DDoS–DoS phân tán, khi bị tấn công này thì rất ít hệ thống có khả năng chống đỡ được. Hình dưới đây cho thấy các dịch vụ trong VoIP có thể bị gián đoạn khi bị tấn công DoS.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

23

Hình 2.1- Cách thức tấn công từ DoS

Tấn công DoS có thể thực hiện vào bất cứ thành phần nào của hệ thống.

Hình 2.2 - Các thành phần của hệ thống VoIP

Các mục tiêu dễ tấn công và đem lại xác suất thành công cao khi tấn công DoS là tấn công vào các thành phần của hệ thống, bao gồm:

- Các thành phần mạng: * Thiết bị đầu cuối

* Lõi của mạng như signaling gateway,… * Các thiết bị truyền dẫn : routers,…

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 24 - Các thành phần của ứng dụng và dịch vụ * Signaling * Media - Hệ điều hành * Management * Billing * Fraud * Security * Provisioning

Chiến lược phòng thủ theo chiều sâu “defense in depth” đòi hỏi VoIP phải được thiết kế và bảo trì các vấn đề an ninh từ mức máy chủ cho đến các thiết bị đầu cuối.

2.1.2. Quấy rối (Annoyance SPIT)

Gây gián đoạn và quấy rối dịch vụ - Kẻ tấn công (attacker) cố gắng phá dịch vụ VoIP bao gồm ở các mức: hệ thống quản trị, hệ thống dự phòng, hệ thống truy nhập và điều khiển. Việc tấn công vào từ các thành phần mạng gồm có routers, máy chủ DNS, SIP proxies, các phần điều phối phiên (secssion).

Phương thức tấn công có thể từ xa, không nhất thiết phải truy nhập trực tiếp, thông qua việc lợi dụng các lỗ hổng của giao thức dùng trong VoIP, lỗi của hệ thống. Một hình thức quấy rối gọi là SPIT (spam through Internet telephony–tạm dịch là gọi điện quấy rối qua Internet).

2.1.3. Truy nhập trái phép (Unauthorized Access)

Truy nhập trái phép - Là khả năng xâm nhập vào dịch vụ, hệ thống chức năng, thành phần mạng một cách không chính thống. Attacker có thể xâm nhập thông qua các lỗ hổng như tràn bộ đệm, cấu hình mặc định, mức bảo vệ kém có thể bẻ gãy. Ví dụ attacker lợi dụng lỗ hổng vào SIP proxy sau đó chèn các đoạn tín hiệu vào các dòng dữ liệu rồi lại chuyển tiếp làm thay đổi thông tin ban đầu.

2.1.4. Nghe trộm (Eavesdropping)

Nghe trộm và phân tích dữ liệu trên đường truyền - Kẻ tấn công (attacker) sẽ tìm cách thu thập các thông tin nhạy cảm để chuẩn bị cho các tấn công ở mức độ

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

25

sâu hơn. Trong VoIP hoặc trong các ứng dụng đa phương tiện trên Internet, attacker có khả năng giám sát các dòng tín hiệu hoặc dữ liệu không được mã hóa, không được bảo vệ trao đổi giữa các người dùng. Phương thức này là lắng nghe, lưu trữ, phân tích các gói tin hay giả mã thời gian thực trên đường truyền có thể là chủ động hoặc có thể là bị động. Mục đích của các Attacker là các thông tin nhạy cảm như thông tin thẻ tín dụng, các thông tin mật khẩu khác,…

2.1.5. Giả mạo (Masquerading)

Giả mạo và đánh lừa - Kẻ tấn công có thể giả người sử dụng, thiết bị hoặc thậm trí là dịch vụ để xâm nhập vào hệ thống mạng, dịch vụ, các thành phần trong hệ thống hay lấy cắp thông tin. Kẻ tấn công giả mạo thường sử dụng các thông tin giả mạo, truy nhập trái phép thậm trí là gây ra lỗi và xâm nhập khi hệ thống bị gián đoạn. Mục tiêu của tấn công giả mạo là người dùng, thiết bị, các thành phần mạng. Một ví dụ đơn giản là tấn công ARP như DNS poisoning, trỏ địa chỉ mục tiêu sang địa chỉ khác mà hacker đã định trước. Người dùng hoàn toàn không hề biết mình đang truy nhập vào hệ thống khác.

2.1.6. Gian lận (Fraud) (adsbygoogle = window.adsbygoogle || []).push({});

Gian lận - Khả năng này xảy ra khi kẻ tấn công đã có một quyền gì đó trong hệ thống có thể là do các tấn công khác mang lại. Sau đó attacker có thể lợi dụng quyền hạn có được vào mục đích cá nhân như ăn trộm cước, ăn trộm dịch vụ… Đây là một vấn đề rất được quan tâm đối với các nhà cung cấp dịch vụ các nhà phân phối.

2.2. Các giải pháp bảo mật VoIP

2.2.1 Nhu cầu bảo mật.

Trước khi đi vào chi tiết về những công nghệ khác nhau để bảo vệ cho mạng VoIP. Bạn cần phải hiểu những vấn đề và tập hợp những nhu cầu mà bạn đã được thấy. Phần này sẽ phác thảo những nhu cầu bảo mật tiêu biểu. Không phải là một danh sách toàn diện. Những dịch vụ VoIP đặc biệt có thể cần những nhu cầu phụ:

Tính toàn vẹn: Người nhận nên nhận những gói dữ liệu của người khởi tạo gửi với

nội dung không có sự thay đổi. Một bên thứ ba cần phải không có khả năng chỉnh sửa gói trong quá trình vận chuyển. Định nghĩa này được áp dụng một cách chính

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

26

xác trong trường hợp của tín hiệu VoIP. Tuy nhiên, trong trường hợp của phương tiện truyền thông, sự mất mát gói thông thường có thể tha thứ được.

Tính bí mật: Một hãng thứ ba không nên có khả năng để đọc dữ liệu mà được dự

định cho người nhận.

Tính xác thực: Bên gửi và bên nhận tín hiệu VoIP hay thông điệp truyền thông nên

chắc chắn rằng chúng đang liên lạc ngang hàng nhau.

Tính sẵn sàng: Sự bảo vệ từ việc tấn công DoS (từ chối dịch vụ) đối với thiết bị VoIP nên sẵn có đối với những người sử dụng liên tục. Những người sử dụng/những thiết bị có ác tâm hoặc có cư xử không đúng đắn không được cấp quyền để phá vỡ dịch vụ. Để làm dịu các cuộc tấn công DoS đòi hỏi cách xử lý lây nhiễm để bảo vệ tài nguyên VoIP và bảo vệ mạng IP bên dưới.

2.2.2. Bảo vệ tín hiệu

Khi đưa ra những nhu cầu bảo mật cho những thiết bị VoIP, phần này mô tả một số công nghệ có sẵn để đảm bảo tính toàn vẹn, tính bí mật, và tính chứng thực. 2.2.2.1. Bảo vệ tín hiệu qua SIP

Cách thức tấn công hệ thống VoiIP phổ biến nhất hiện nay là:

+ Chiếm quyền điều khiển VoiIP Subscription của người dùng và các hoạt động truyền thông tiếp sau.

+ Khả năng nghe trộm các cuộc gọi VoiIP.

Hai hình thức tấn công trên chắc chắn sẽ nguy hiểm hơn nhiều với sự phát triển ngày càng rộng của VoiIP. Phần này chúng ta tìm hiểu nội dung ngắn gọn về giao thức SIP, dùng để cài đặt và phân tách các session Internet đa phương tiện và tập trung chủ yếu vào hoạt động đăng ký người dùng và chiếm quyền điều khiển session

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

27

Hình 2.3 - Cài đặt và phân tách cuộc gọi SIP

Trong bước 1, thiết bị của người dùng (trong thuật ngữ của SIP gọi là một User Agent) đăng ký với tổ chức cấp phát và quản lý tên miền. Các tổ chức này có trách nhiệm duy trì cơ sở dữ liệu của thông tin đăng ký tương ứng của từng domain. Phần đăng ký người dùng trong VoiIP là cần thiết vì nó cung cấp phương tiện định vị và liên hệ với nhóm từ xa. Chẳng hạn khi A muốn liên lạc với B anh ta sẽ gửi yêu cầu INVITE tới một proxy server. Proxy server này có trách nhiệm định hướng cho các tin nhắn SIP và cấp phát các đăng ký. Khi proxy server nhận một yêu cầu INVITE, nó cố gắng xác định vị trí nhóm gọi và sắp đặt chương trình cho người gọi. Nó sẽ thực hiện một số bước như tìm kiếm tên miền DNS và định hướng các tin SIP khác nhau (tạm thời và mang tính chất thông tin). Đây là bước sẽ bị khai thác bởi kiểu tấn công chiếm quyền điều khiển đăng ký, như chúng ta đã nhìn thấy sơ lược trong phần đăng ký thiết bị ở bước một của hình minh hoạ.

Chiếm quyền điều khiển đăng ký.

Hình dưới đây mô tả thông tin đăng ký hợp lệ và trả lời từ nhà quản lý SIP, được dùng để thông báo trong một điểm liên hệ của người dùng. Điều này chỉ ra rằng thiết bị của người dùng đã chấp nhận cuộc gọi.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

28

Hình 2.4 - Yêu cầu REGISTER (đăng ký)

Yêu cầu REGISTER (đăng ký) bao gồm các Contact: header với điạ chỉ IP của thiết bị người dùng (hoặc một tệp VoiIP hay điện thoại khác). Khi proxy nhận yêu cầu thực hiện một lời gọi đến (một INVITE), nó sẽ tra tìm để xác định từng (adsbygoogle = window.adsbygoogle || []).push({});

Một phần của tài liệu nghiên cứu giải pháp bảo mật cho thoại internet voip (Trang 26)