III. Thực Hiện
10. Cài đặt viber trên PC3 ,dùng điện thoại gọi vào viber trên PC3 và tiên hành bắt,
phân tích các giao thức trên wireshark
10.1 Giới thiệu
Viber là phần mềm gửi tin nhắn và gọi thoại miễn phí ở mọi nơi trên thế giới cho tất cả các thiết bị công nghệ số hiện nay như Laptop, Smartphone. Sử dụng cho tất cả các hệ điệu hành phổ biến hiện nay như Windows, iOS, Android.
Viber đồng bộ hóa tất cả các danh bạ, tin nhắn và lịch sử cuộc gọi với tất cả các thiết bị khác của bạn, từ đó bạn có thể tiếp tục cuộc chuyện trò của mình trên các thiết bị khác có cài đặt ứng dụng Viber như Desktop, Laptop, iPad…
Ưu điểm của Viber:
+ Thực hiện các cuộc gọi thoại với chất lượng tốt nhất + Gửi tin nhắn và hình ảnh
Trang 69 + Hỗ trợ gọi video
+ Trò truyện bằng nhóm (nhiều người)
+ Không cần đăng ký, mật khẩu hay bất cứ cuộc gọi yêu cầu nào + Đồng bộ hóa toàn bộ dữ liệu của Viber từ điện thoại đến máy tính
10.2 Cơ chế hoạt động
- Viber thực hiện lấy các thông tin danh bạ thông qua việc xem thông tin trong danh bạ củadịch vụ GSM mà ta đang sử dụng (Viettel, Mobi, Vinaphone…) hoặc trên Internet. - Nếu bạn chọn Viber để khởi tạo 1 cuộc gọi thoại, dữ liệu báo hiệu yêu cầu cuộc gọi của người dùng sẽ lập tức được chuyển đến máy chủ của Viber bằng kết nối Internet của thiết bị: WiFi hoặc 3G.
+ Khi sử dụng 3G, người dùng nên kiểm tra xem dung lượng 3G của mình còn lại bao nhiêu để lưu ý cho việc khởi tạo 1 cuộc gọi. Băng thông yêu cầu trong 1 cuộc gọi Viber xấp xỉ 240 KB cho 1 phút, 14 MB cho 1 giờ. Có thể dao động lên xuống tùy vào độ bận của đường truyền.
Trang 70 + Với kết nối WiFi thì không có 1 sự giới hạn nào, người dùng có thể sử dụng các cuộc gọi thoại hay gọi video bằng chất lượng cao nhất từ Viber.
10.3 Hướng dẫn cài đặt viber
Ta sẽ cài đặt phần mềm Viber cho Laptop hoặc Desktop có kết nối Internet và đăng nhập vào Viber bằng số điện thoại của điện thoại mà trước đó ta đã cài ứng dụng Viber. Tiếp theo ta sẽ gọi cho 1 người bất kỳ từ danh bạ Viber mà ta đã được cung cấp.
10.4 Bắt và phân tích gói tin trên wireshark
Viber sử dụng giao thức riêng để thực hiện các cuộc gọi thoại, gửi tin nhắn và gọi video giữa người dùng, và giao thức này chưa bao giờ được công bố bởi Viber. Kết quả là những gì ta nhìn thấy trên wireshark chỉ được hiển thị dưới dạng 1 gói tin TCP có chứa dữ liệu chưa được định nghĩa.
Để các thiết bị đã cài đặt ứng dụng Viber này liên lạc với Viber server, Viber luôn mở sẵn các port sau:
- TCP port 5242 và 4244 - UDP port 5243 và 9785 Nhiệm vụ của TCP port
- Cho phép người dùng tạo kết nối đến Viber server mỗi khi người dùng bật ứng dụng lên.
- Khi người dùng muốn khởi tạo 1 cuộc gọi với 1 đối tượng bất kỳ, ứng dụng Viber sẽ gửi 1 gói tin thông báo cho Viber server biết rằng người dùng muốn thực hiện cuộc gọi đến người dùng này.
Trang 71 - Khi có một người dùng mới nào đó vừa cài đặt ứng dụng Viber vào điện thoại củ họ, và nếu người dùng này có số điện thoại đang tồn tại trong danh bạ GSM của người dùng nào khác thì Viber sẽ tự động gửi thông tin cập nhật đến tất cả những người dùng này để thông báo.
Nhiệm vụ của UDP port:
- Truyền tải dữ liệu thoại đến người dùng 2 phía
Lưu ý là ta nên mở Wireshark và bắt gói tin trước khi mở phần mềm Viber lên. Vì khi ta mở Viber lên, ứng dụng ngay lập tức sẽ liên hệ đến Viber Server bằng gói tin TCP SYN để tạo kết nối. Nếu muốn bắt một cách đầy đủ ta phải lưu ý điều này.
Gói TCP với cờ PSH và ACK
Gói tin này là gói tin quan trọng , gói tin này xuất hiện khi ta khởi tạo một cuộc gọi thoại đến một người nào đó bằng ứng dụng Viber .
Trang 72
Gói tin UDP
Sau một loạt cái gói tin báo hiệu được gửi cho Viber server, Viber server cũng sẽ gửi đến Viber user có số điện thoại tương ứng mà người dùng này muốn thực hiện cuộc gọi đến. Như vậy, chỉ cần một số thông tin cơ bản dựa vào việc bắt Wireshark ta đã có thể hình dung được cách thức hoạt động của Viber mặc dù các cách thức hoạt động hay các giao thức riêng này chưa bao giờ được công bố và biết đến.
Trang 73 Cuộc hội thoại đột nhiên bị ngắt do một bên bị ngắt interner chẳng hạn , ứng dụng viber sẽ gửi lại các gói TCP SYN bằng các port động nhằm mục đích là khởi tạo lại kết nối với Viber Server một cách nhanh nhất cho người dùng khi có lại đường truyền.