Loupe - ứng dụng iOS cho thấy bề mặt fingerprinting thiết bị mà ứng dụng iOS native có thể nhìn thấy
(github.com/mysk-research)- Loupe là ứng dụng iOS·iPadOS đọc các giá trị thực từ API iOS công khai và hiển thị chúng ở dạng thô, cho phép kiểm tra trực tiếp những giá trị mà thiết bị để lộ thông qua các API mà ứng dụng bên thứ ba có thể gọi
- Ngay cả khi không có tên, email hay vị trí, nhiều giá trị đọc khác nhau khi kết hợp lại vẫn có thể tạo thành fingerprint để nhận diện lại người dùng trên nhiều ứng dụng và website
- Các giá trị đọc được nhóm thành ba cấp theo chi phí truy cập
- Passive: locale, múi giờ, màn hình, pin... mà mọi ứng dụng đều có thể thấy mà không cần hiện prompt
- Needs Permission: các giá trị kích hoạt prompt iOS như contacts, photos, location, calendars
- Advanced: sử dụng side channel của API công khai như URL-scheme probing qua
canOpenURL, hay Keychain persistence vẫn còn sau khi gỡ và cài lại ứng dụng
- Các giá trị Loupe đọc được sẽ không rời khỏi thiết bị trừ khi được xuất ra một cách rõ ràng; chúng được hiển thị dưới dạng giá trị thô, không tổng hợp hay băm, và không bị upload, đồng bộ hoặc chia sẻ
- Việc build yêu cầu Xcode 26 trở lên; mở
code/Loupe.xcodeproj, điềnDEVELOPMENT_TEAMvà bundle identifier vàoSigning.local.xcconfig, sau đó build và chạy trên thiết bị hoặc simulator - Ứng dụng dùng buildable folders của Xcode để các file Swift mới tự động được phản ánh mà không cần sửa file dự án; cũng có thể build cho macOS, nhưng phiên bản Mac vẫn cần thêm một số công việc trước khi đạt trạng thái polished
- Loupe là mã nguồn mở miễn phí; source code được phát hành theo MIT License, nhưng tên Loupe, logo, biểu tượng ứng dụng, hình ảnh, icon và các file nguồn thiết kế không thuộc phạm vi áp dụng của MIT License
1 bình luận
Ý kiến trên Hacker News
Không hiểu vì sao quyền truy cập Internet của ứng dụng lại không bị chặn mặc định rồi mới cho phép theo lựa chọn của người dùng
Nếu ngăn rò rỉ dữ liệu thì có thể giảm được phần lớn kiểu thiệt hại này, mà ngay từ đầu nhiều ứng dụng cũng chẳng cần truy cập Internet
Tôi không hiểu tại sao phải tạo tài khoản GE chỉ để đọc huyết áp, và ít nhất với cái đó thì còn biết là họ đang khai thác mình, còn chuyện này rõ ràng là lạm dụng
Phần lớn ứng dụng cũng có lý do chính đáng để cần Internet, nên tôi không nghĩ một quyền có/không đơn giản sẽ mang lại nhiều hiệu quả
Sẽ rất tốt nếu nó hiển thị nhật ký chi tiết của mọi yêu cầu mạng, tên miền đích và dữ liệu được gửi đi
Các tùy chọn là tắt, chỉ WLAN, hoặc WLAN và di động [0]
[0] https://old.reddit.com/r/ios/comments/aib10i/in_china_ios_al...
Tôi chưa dùng GrapheneOS nên không rõ, nhưng bản thân Android hỗ trợ điều này đầy đủ, và tôi không hiểu vì sao đa số nhà sản xuất điện thoại lại gỡ quyền này khỏi ROM của họ
Dù vậy, tôi đồng ý là tính năng này nên có ở mọi nơi
Đính chính một số bình luận ở đây: ứng dụng iOS không thể liệt kê toàn bộ các ứng dụng đã cài
Chỉ những ứng dụng/scheme cụ thể mà nó muốn kiểm tra đã cài hay muốn mở mới có thể được khai báo trong LSApplicationQueriesSchemes để kiểm tra
Nếu nhét vào một danh sách dài các ứng dụng không liên quan, ứng dụng sẽ bị từ chối trong quá trình xét duyệt của Apple
Apple thêm giới hạn này vì danh sách ứng dụng đã cài có thể bị dùng cho fingerprinting và profiling xâm phạm quyền riêng tư
Và các data broker hay bên tổng hợp dữ liệu có thể mua loại dữ liệu đó từ hàng nghìn ứng dụng, gộp lại rồi bán tiếp
Chỉ một danh sách nhỏ nhưng có khả năng phân biệt rất cao cũng đủ cung cấp entropy bổ sung để nhận dạng duy nhất một cá nhân khi kết hợp với dữ liệu rò rỉ khác
Xem danh sách đó ở đâu?
Thông tin “iPhone last setup or erased on ...” thực sự rất tệ
Người dùng thực tế có thể làm gì với thứ này? Có vẻ như hệ điều hành nên làm mờ giá trị này bằng cách nào đó
Biện pháp bảo vệ duy nhất là tránh cài ứng dụng và dùng trình duyệt web khi có thể
Ngày tạo volume khá nghiêm trọng
Tôi không thấy lý do gì để giá trị này và Pasteboard changeCount phải chi tiết đến vậy
Vụ rò rỉ “Installed Apps Probe” cũng gây sốc, nhưng dù sao vẫn còn tốt hơn tình trạng hiện tại của Android
Và cũng chẳng có gì ngăn việc đặt lại nó mỗi ngày
Tuyệt vời
Những thứ như thế này khiến người ta thực sự nhận ra các công cụ giúp trực quan hóa vấn đề là cần thiết đến mức nào
Tôi đã làm một thứ tương tự cho web: https://neberej.github.io/exposedbydefault/
Github: https://github.com/neberej/exposedbydefault
Nếu không có iPhone hoặc không muốn cài ứng dụng, bạn có thể xem demo ở đây
Đây là các phiên bản trên nền tảng khác của cùng một video
https://odysee.com/@techlore:3/permission-not-required-the-o...
https://www.youtube.com/watch?v=_n_SpEWtqog
https://inv.nadeko.net/watch?v=_n_SpEWtqog
https://techlore.tv/w/d7dh4P7y4dVngNoL7u7s3B
Không hiểu vì sao một ứng dụng bất kỳ không được cấp quyền đặc biệt lại có thể truy cập nhiều thông tin đến vậy, và vì sao Apple không thông báo cho người dùng về những thông tin quan trọng này
Apple không thể làm một danh sách checkbox dài để cho phép/chặn theo từng danh mục và từng ứng dụng sao?
Ví dụ, tôi không biết rằng một ứng dụng không được cấp bất kỳ quyền nào vẫn có thể ngay lập tức có danh sách mọi ứng dụng cài trên thiết bị, rồi chỉ từ sự hiện diện của Tinder/Bumble/Hinge mà suy ra bạn đang hẹn hò, thậm chí đang ngoại tình
Chỉ riêng điều này thôi cũng có vẻ đủ để một kẻ vô đạo đức kiếm tiền bằng kiểu dịch vụ “kiểm tra xem đối tác có ngoại tình không” với giá $10 cho một câu trả lời mang tính xác suất
Làm cách nào bạn định cài một ứng dụng kiểu “kiểm tra xem đối tác có ngoại tình không” lên điện thoại của người kia?
Đã có thứ tương tự trên điện thoại Android chưa?
Hôm nay tôi просто bỏ cuộc với chuyện cố không chia sẻ dữ liệu cá nhân
Thay vào đó, tôi chặn toàn bộ quảng cáo, và không dùng các ứng dụng/trang web không thể dùng nếu không có chặn quảng cáo
Họ có thể có rất nhiều thông tin về tôi, kể cả chi tiết như vị kem tôi thích, nhưng vì tôi chẳng bao giờ nhìn thấy quảng cáo nên cũng không bận tâm lắm
Tất nhiên tốt hơn là không ai có loại thông tin này, nhưng trong xã hội khủng khiếp như hiện nay thì đành phải thực dụng
Vì vậy tôi tránh cài ứng dụng và cũng không cài quá nhiều