WhiteHat News #ID:2018
WhiteHat Support
-
20/03/2017
-
129
-
443 bài viết
Xuất hiện kiểu tấn công mới nghe lén được cuộc gọi VoLTE
Các nhà nghiên cứu đến từ Ruhr University Bochum và NYU Abu Dhabi vừa công bố cách thức tấn công mới có tên “ReVoLTE” có thể cho phép kẻ tấn công phá mã hóa được sử dụng trong các cuộc gọi thoại VoLTE và nghe được nội dung hội thoại.
Cuộc tấn công không khai thác bất kỳ lỗ hổng nào trong giao thức Voice over Long Term Evolution (VoLTE) mà tập trung vào điểm yếu trong mạng di động LTE của phần lớn các nhà cung cấp viễn thông hiện nay.
Giao thức VoLTE là công nghệ cho phép thực hiện các cuộc gọi thoại di động qua mạng LTE, khiến chất lượng cuộc gọi tốt hơn và thiết lập cuộc gọi nhanh hơn.
Điểm mấu chốt của vấn đề là hầu hết các nhà mạng di động thường sử dụng chung một keystream cho 2 cuộc gọi liên tiếp trong một kết nối vô tuyến để mã hóa dữ liệu thoại.
Vì vậy, tấn công ReVoLTE sẽ khai thác việc tái sử dụng cùng một keystream của các trạm gốc (base station) dính lỗ hổng, cho phép kẻ tấn công giải mã các nội dung của cuộc gọi thoại sử dụng VoLTE theo kịch bản sau:
Trước đây, vấn đề trong việc tái sử dụng keystream đã được một số nhà nghiên cứu chỉ ra, nhưng ReVoLTE là kiểu tấn công thực tế đầu tiên khai thác lỗ hổng này.
Tấn công ReVoLTE được thực hiện như thế nào?
Bước 1: Kẻ tấn công cần được kết nối đến cùng trạm gốc với nạn nhân và đặt một công cụ snifffer (downlink) để giám sát và ghi lại cuộc gọi cần giải mã.
Khi nạn nhân kết thúc cuộc gọi này (cuộc gọi số 1) khoảng 10 giây, kẻ tấn công tiến hành gọi cho nạn nhân (cuộc gọi số 2). Khi đó, mạng di động khởi tạo một cuộc gọi mới giữa nạn nhân và kẻ tấn công có cùng kết nối sóng vô tuyến được sử dụng ở cuộc gọi số 1.
Bước 2: Khi đã được kết nối, kẻ tấn công cần “nhử” nạn nhân tham gia vào cuộc hội thoại và ghi lại bằng plaintext, từ đó giúp kẻ tấn công tính toán được keystream ở cuộc gọi số 2.
Theo các nhà nghiên cứu, thực hiện phép toán XOR các keystream với các frame được mã hóa tương tứng của cuộc gọi số 1 sẽ giúp giải mã nội dung, từ đó tạo điều kiện cho hacker nghe được hội thoại trong cuộc gọi này.
Tuy nhiên, độ dài của cuộc gọi thứ hai cần phải bằng hoặc lâu hơn cuộc gọi số 1 mới có thể giải mã được mỗi frame, nếu không nó chỉ có thể giải mã được một phần cuộc hội thoại.
Dưới đây là clip các nhà nghiên cứu đã thực hiện để demo cho kiểu tấn công này:
Chi phí để thiết lập cuộc tấn công ReVoLTE có thể chưa đến 7.000 đô-la Mỹ.
Nhóm nghiên cứu đã thử nghiệm ngẫu nhiên trên các sóng vô tuyến tại Đức và tìm ra lỗ hổng ảnh hưởng đến 12 trong số 15 trạm gốc tại nước này. Lỗ hổng cũng có thể ảnh hưởng đến các quốc gia khác.
Các nhà nghiên cứu đã thông báo cho các nhà mạng di động về cuộc tấn công ReVoLTE vào tháng 12/2019 và các đơn vị này đã có bản vá vào thời điểm công bố.
Vì lỗ hổng cũng ảnh hưởng đến lượng lớn các nhà mạng trên toàn cầu, các nhà nghiên cứu đã phát hành một ứng dụng Android mã nguồn mở 'Mobile Sentinel' có thể dùng để phát hiện xem mạng 4G và trạm gốc của mình có dính lỗ hổng ReVoLTE hay không.
Thông tin chi tiết về bài nghiên cứu này, các bạn có thể tham khảo tại đây.
Cuộc tấn công không khai thác bất kỳ lỗ hổng nào trong giao thức Voice over Long Term Evolution (VoLTE) mà tập trung vào điểm yếu trong mạng di động LTE của phần lớn các nhà cung cấp viễn thông hiện nay.
Giao thức VoLTE là công nghệ cho phép thực hiện các cuộc gọi thoại di động qua mạng LTE, khiến chất lượng cuộc gọi tốt hơn và thiết lập cuộc gọi nhanh hơn.
Điểm mấu chốt của vấn đề là hầu hết các nhà mạng di động thường sử dụng chung một keystream cho 2 cuộc gọi liên tiếp trong một kết nối vô tuyến để mã hóa dữ liệu thoại.
Vì vậy, tấn công ReVoLTE sẽ khai thác việc tái sử dụng cùng một keystream của các trạm gốc (base station) dính lỗ hổng, cho phép kẻ tấn công giải mã các nội dung của cuộc gọi thoại sử dụng VoLTE theo kịch bản sau:
Trước đây, vấn đề trong việc tái sử dụng keystream đã được một số nhà nghiên cứu chỉ ra, nhưng ReVoLTE là kiểu tấn công thực tế đầu tiên khai thác lỗ hổng này.
Tấn công ReVoLTE được thực hiện như thế nào?
Bước 1: Kẻ tấn công cần được kết nối đến cùng trạm gốc với nạn nhân và đặt một công cụ snifffer (downlink) để giám sát và ghi lại cuộc gọi cần giải mã.
Khi nạn nhân kết thúc cuộc gọi này (cuộc gọi số 1) khoảng 10 giây, kẻ tấn công tiến hành gọi cho nạn nhân (cuộc gọi số 2). Khi đó, mạng di động khởi tạo một cuộc gọi mới giữa nạn nhân và kẻ tấn công có cùng kết nối sóng vô tuyến được sử dụng ở cuộc gọi số 1.
Bước 2: Khi đã được kết nối, kẻ tấn công cần “nhử” nạn nhân tham gia vào cuộc hội thoại và ghi lại bằng plaintext, từ đó giúp kẻ tấn công tính toán được keystream ở cuộc gọi số 2.
Theo các nhà nghiên cứu, thực hiện phép toán XOR các keystream với các frame được mã hóa tương tứng của cuộc gọi số 1 sẽ giúp giải mã nội dung, từ đó tạo điều kiện cho hacker nghe được hội thoại trong cuộc gọi này.
Tuy nhiên, độ dài của cuộc gọi thứ hai cần phải bằng hoặc lâu hơn cuộc gọi số 1 mới có thể giải mã được mỗi frame, nếu không nó chỉ có thể giải mã được một phần cuộc hội thoại.
Dưới đây là clip các nhà nghiên cứu đã thực hiện để demo cho kiểu tấn công này:
Chi phí để thiết lập cuộc tấn công ReVoLTE có thể chưa đến 7.000 đô-la Mỹ.
Nhóm nghiên cứu đã thử nghiệm ngẫu nhiên trên các sóng vô tuyến tại Đức và tìm ra lỗ hổng ảnh hưởng đến 12 trong số 15 trạm gốc tại nước này. Lỗ hổng cũng có thể ảnh hưởng đến các quốc gia khác.
Các nhà nghiên cứu đã thông báo cho các nhà mạng di động về cuộc tấn công ReVoLTE vào tháng 12/2019 và các đơn vị này đã có bản vá vào thời điểm công bố.
Vì lỗ hổng cũng ảnh hưởng đến lượng lớn các nhà mạng trên toàn cầu, các nhà nghiên cứu đã phát hành một ứng dụng Android mã nguồn mở 'Mobile Sentinel' có thể dùng để phát hiện xem mạng 4G và trạm gốc của mình có dính lỗ hổng ReVoLTE hay không.
Thông tin chi tiết về bài nghiên cứu này, các bạn có thể tham khảo tại đây.
Theo The Hacker News