WhiteHat News #ID:2112
VIP Members
-
16/06/2015
-
83
-
672 bài viết
Các thông báo broadcast hệ thống của Android làm lộ thông tin thiết bị
Các nhà nghiên cứu đã phát hiện ra rằng thông tin thiết bị Android bị tiết lộ với các ứng dụng đang chạy thông qua Wi-Fi broadcast trong hệ điều hành di động.
Theo các nhà nghiên cứu của Nightwatch Cybersecurity, thông tin bị lộ lọt bao gồm tên mạng WiFi, BSSID, địa chỉ IP cục bộ, thông tin máy chủ DNS và địa chỉ MAC. Thông thường, cần phải có các quyền bổ sung để truy cập các chi tiết như vậy, nhưng các broadcast Wi-Fi cho phép tất cả ứng dụng bắt được thông tin, từ đó vượt qua các biện pháp bảo vệ hiện có.
Hơn nữa, các nhà nghiên cứu cho rằng địa chỉ MAC, được gắn với phần cứng, có thể được sử dụng để “nhận diện và theo dõi bất kỳ thiết bị Android”. Các thông tin như tên mạng và BSSID cho phép định vị người dùng, trong khi các thông tin khác có thể được sử dụng cho các cuộc tấn công khác.
Lỗ hổng này (CVE-2018-9489) đã được vá trong bản phát hành Android 9 gần đây, nhưng các phiên bản trước đó vẫn tiếp tục bị ảnh hưởng. Do đó, tất cả các thiết bị chạy các phiên bản hệ điều hành này, bao gồm các nhánh như FireOS của Amazon cho Kindle, được cho là bị ảnh hưởng bởi lỗ hổng.
Theo các nhà nghiên cứu, vấn đề là do các nhà phát triển ứng dụng không thực hiện các biện pháp hạn chế hoặc bảo vệ dữ liệu nhạy cảm khi sử dụng các Intent (đối tượng thông báo) trong các ứng dụng của họ. Những Intent này là các thông báo toàn hệ thống mà cả ứng dụng lẫn hệ điều hành đều có thể gửi và các ứng dụng khác có thể nghe.
Nền tảng Android thường xuyên phát đi thông tin về kết nối WiFi và giao diện mạng WiFi và sử dụng Intent NETWORK_STATE_CHANGED_ACTION của WifiManager và WIFI_P2P_THIS_DEVICE_CHANGED_ACTION của WifiP2pManager cho điều đó.
“Thông tin này bao gồm địa chỉ MAC của thiết bị, BSSID và tên mạng của điểm truy cập WiFi và nhiều thông tin mạng khác nhau như dãy IP cục bộ, cổng IP và địa chỉ máy chủ DNS. Thông tin này có sẵn cho tất cả các ứng dụng chạy trên thiết bị của người dùng”, các nhà nghiên cứu lưu ý.
Các ứng dụng tìm cách truy cập thông tin qua WifiManager thường sẽ yêu cầu quyền “ACCESS_WIFI_STATE”. Các ứng dụng tìm cách truy cập vị trí địa lý qua WiFi yêu cầu quyền “ACCESS_FINE_LOCATION” hoặc “ACCESS_COARSE_LOCATION”.
Tuy nhiên, các ứng dụng nghe được broadcast hệ thống không cần các quyền này và có thể bắt được các thông tin chi tiết mà người dùng không biết. Họ thậm chí có thể bắt được địa chỉ MAC thực, mặc dù nó không còn có sẵn thông qua các API trên Android 6 hoặc cao hơn nữa.
“Chúng tôi đã thử nghiệm một loạt thiết bị di động, trên nhiều loại phần cứng và phiên bản Android. Tất cả các thiết bị và phiên bản Android đã được kiểm tra đều xác nhận lỗ hổng này, mặc dù một số thiết bị không hiển thị địa chỉ MAC thực trong intent “NETWORK_STATE_CHANGED_ACTION” nhưng chúng vẫn làm vậy trong intent “WIFI_P2P_THIS_DEVICE_CHANGED_ACTION”.
Do Google chỉ khắc phục vấn đề trong Android 9, người dùng được khuyến cáo nâng cấp lên phiên bản Android 9 để đảm bảo an toàn.
Theo các nhà nghiên cứu của Nightwatch Cybersecurity, thông tin bị lộ lọt bao gồm tên mạng WiFi, BSSID, địa chỉ IP cục bộ, thông tin máy chủ DNS và địa chỉ MAC. Thông thường, cần phải có các quyền bổ sung để truy cập các chi tiết như vậy, nhưng các broadcast Wi-Fi cho phép tất cả ứng dụng bắt được thông tin, từ đó vượt qua các biện pháp bảo vệ hiện có.
Hơn nữa, các nhà nghiên cứu cho rằng địa chỉ MAC, được gắn với phần cứng, có thể được sử dụng để “nhận diện và theo dõi bất kỳ thiết bị Android”. Các thông tin như tên mạng và BSSID cho phép định vị người dùng, trong khi các thông tin khác có thể được sử dụng cho các cuộc tấn công khác.
Lỗ hổng này (CVE-2018-9489) đã được vá trong bản phát hành Android 9 gần đây, nhưng các phiên bản trước đó vẫn tiếp tục bị ảnh hưởng. Do đó, tất cả các thiết bị chạy các phiên bản hệ điều hành này, bao gồm các nhánh như FireOS của Amazon cho Kindle, được cho là bị ảnh hưởng bởi lỗ hổng.
Theo các nhà nghiên cứu, vấn đề là do các nhà phát triển ứng dụng không thực hiện các biện pháp hạn chế hoặc bảo vệ dữ liệu nhạy cảm khi sử dụng các Intent (đối tượng thông báo) trong các ứng dụng của họ. Những Intent này là các thông báo toàn hệ thống mà cả ứng dụng lẫn hệ điều hành đều có thể gửi và các ứng dụng khác có thể nghe.
Nền tảng Android thường xuyên phát đi thông tin về kết nối WiFi và giao diện mạng WiFi và sử dụng Intent NETWORK_STATE_CHANGED_ACTION của WifiManager và WIFI_P2P_THIS_DEVICE_CHANGED_ACTION của WifiP2pManager cho điều đó.
“Thông tin này bao gồm địa chỉ MAC của thiết bị, BSSID và tên mạng của điểm truy cập WiFi và nhiều thông tin mạng khác nhau như dãy IP cục bộ, cổng IP và địa chỉ máy chủ DNS. Thông tin này có sẵn cho tất cả các ứng dụng chạy trên thiết bị của người dùng”, các nhà nghiên cứu lưu ý.
Các ứng dụng tìm cách truy cập thông tin qua WifiManager thường sẽ yêu cầu quyền “ACCESS_WIFI_STATE”. Các ứng dụng tìm cách truy cập vị trí địa lý qua WiFi yêu cầu quyền “ACCESS_FINE_LOCATION” hoặc “ACCESS_COARSE_LOCATION”.
Tuy nhiên, các ứng dụng nghe được broadcast hệ thống không cần các quyền này và có thể bắt được các thông tin chi tiết mà người dùng không biết. Họ thậm chí có thể bắt được địa chỉ MAC thực, mặc dù nó không còn có sẵn thông qua các API trên Android 6 hoặc cao hơn nữa.
“Chúng tôi đã thử nghiệm một loạt thiết bị di động, trên nhiều loại phần cứng và phiên bản Android. Tất cả các thiết bị và phiên bản Android đã được kiểm tra đều xác nhận lỗ hổng này, mặc dù một số thiết bị không hiển thị địa chỉ MAC thực trong intent “NETWORK_STATE_CHANGED_ACTION” nhưng chúng vẫn làm vậy trong intent “WIFI_P2P_THIS_DEVICE_CHANGED_ACTION”.
Do Google chỉ khắc phục vấn đề trong Android 9, người dùng được khuyến cáo nâng cấp lên phiên bản Android 9 để đảm bảo an toàn.
Theo SecurityWeek
Chỉnh sửa lần cuối: