Image Credits: Bryce Durbin / TechCrunch
Một số bộ quản lý mật khẩu di động phổ biến đang vô tình tiết lộ thông tin đăng nhập của người dùng do một lỗ hổng trong chức năng tự động điền của ứng dụng Android.
Lỗ hổng này, được đặt tên là "AutoSpill," có thể tiết lộ thông tin đăng nhập đã lưu của người dùng từ bộ quản lý mật khẩu di động bằng cách vượt qua cơ chế tự động điền an toàn của Android, theo các nhà nghiên cứu đại học tại IIIT Hyderabad, họ đã phát hiện và trình bày nghiên cứu của mình tại Black Hat Europe trong tuần này.
Các nhà nghiên cứu Ankit Gangwal, Shubham Singh và Abhijeet Srivastava phát hiện rằng khi một ứng dụng Android tải trang đăng nhập trong WebView, bộ quản lý mật khẩu có thể "lạc hướng" về nơi họ nên nhắm đến thông tin đăng nhập của người dùng và thay vào đó tiết lộ thông tin đăng nhập của họ cho các trường nguyên tắc của ứng dụng cơ bản. Điều này xảy ra vì WebView, công cụ được cài đặt trước đó từ Google, cho phép các nhà phát triển hiển thị nội dung web trong ứng dụng mà không cần khởi chạy trình duyệt web, và yêu cầu tự động điền được tạo ra.
"Chẳng hạn, bạn đang cố gắng đăng nhập vào ứng dụng âm nhạc yêu thích của mình trên thiết bị di động, và bạn sử dụng tùy chọn 'đăng nhập qua Google hoặc Facebook.' Ứng dụng âm nhạc sẽ mở một trang đăng nhập Google hoặc Facebook bên trong nó thông qua WebView," Gangwal giải thích cho TechCrunch trước khi thuyết trình tại Black Hat vào thứ Tư.
"Khi bộ quản lý mật khẩu được kích hoạt để tự động điền thông tin đăng nhập, đáng lẽ là nó chỉ nên tự động điền vào trang Google hoặc Facebook đã được tải. Nhưng chúng tôi phát hiện rằng thao tác tự động điền có thể tình cờ tiết lộ thông tin đăng nhập cho ứng dụng cơ bản."
Gangwal lưu ý rằng hậu quả của lỗ hổng này, đặc biệt là trong tình huống ứng dụng cơ bản là độc hại, là đáng kể. Ông thêm: "Ngay cả mà không có lừa đảo, bất kỳ ứng dụng độc hại nào yêu cầu bạn đăng nhập qua trang web khác, như Google hoặc Facebook, đều có thể tự động truy cập thông tin nhạy cảm."
Các nhà nghiên cứu đã kiểm thử lỗ hổng AutoSpill bằng cách sử dụng một số bộ quản lý mật khẩu phổ biến như 1Password, LastPass, Keeper và Enpass, trên các thiết bị Android mới và cập nhật. Họ phát hiện rằng hầu hết các ứng dụng đều có thể bị rò rỉ thông tin đăng nhập, ngay cả khi chức năng tiêm JavaScript đã bị vô hiệu hóa. Khi tiêm JavaScript được kích hoạt, tất cả các bộ quản lý mật khẩu đều có thể bị tổn thương với lỗ hổng AutoSpill của họ.
Gangwal nói ông đã thông báo cho Google và các bộ quản lý mật khẩu bị ảnh hưởng về lỗ hổng này.
Google không có ý kiến khi được liên hệ trước khi công bố, nhưng sau đó nói với TechCrunch rằng công ty khuyến nghị các bộ quản lý mật khẩu bên thứ ba "nhạy cảm đối với nơi mà mật khẩu đang được nhập, và chúng tôi có các hướng dẫn thực tế về WebView mà chúng tôi khuyến nghị tất cả các bộ quản lý mật khẩu triển khai," theo người phát ngôn của Google, Ed Fernandez.
"Android cung cấp cho bộ quản lý mật khẩu ngữ cảnh cần thiết để phân biệt giữa các chế độ xem gốc và WebViews, cũng như xem xét liệu WebView đang được tải có liên quan đến ứng dụng chủ hay không. Ví dụ, khi sử dụng Google Password Manager để tự động điền trên Android, người dùng sẽ được cảnh báo nếu họ nhập mật khẩu cho một miền mà Google xác định có thể không thuộc sở hữu của ứng dụng chủ, và mật khẩu chỉ được điền vào trường đúng. Google thực hiện các biện pháp bảo vệ phía máy chủ cho đăng nhập qua WebView," người phát ngôn của Google lưu ý.
Giám đốc công nghệ Pedro Canahuati của 1Password nói với TechCrunch rằng công ty đã xác định và đang làm việc để khắc phục AutoSpill. "Mặc dù bản vá sẽ làm tăng cường thêm hiệu suất an ninh của chúng tôi, chức năng tự động điền của 1Password đã được thiết kế để yêu cầu người dùng thực hiện hành động rõ ràng," Canahuati nói. "Bản cập nhật sẽ cung cấp bảo vệ bổ sung bằng cách ngăn chặn các trường nguyên tắc từ việc được điền thông tin đăng nhập chỉ dành cho WebView của Android."
Craig Lurey, Giám đốc công nghệ của Keeper, nói trong nhận xét chia sẻ với TechCrunch rằng công ty đã được thông báo về một lỗ hổng có thể và đang làm gì đó về nó. "Chúng tôi đã yêu cầu nhà nghiên cứu cung cấp video để chứng minh vấn đề được báo cáo. Dựa trên phân tích của chúng tôi, chúng tôi xác định nhà nghiên cứu đã cài đặt trước một ứng dụng độc hại và sau đó, chấp nhận một lời mời của Keeper để buộc mối quan hệ của ứng dụng độc hại với một bản ghi mật khẩu của Keeper," Lurey nói.
Keeper nói rằng họ có "biện pháp bảo vệ để bảo vệ người dùng khỏi việc tự động điền thông tin đăng nhập vào ứng dụng không tin cậy hoặc trang web mà không được người dùng ủy quyền một cách rõ ràng," và đề xuất nhà nghiên cứu nên gửi báo cáo của mình đến Google "vì nó đặc biệt liên quan đến nền tảng Android."
Enpass không trả lời câu hỏi của TechCrunch. Alex Cox, giám đốc của đội ngũ thông tin đe dọa, giảm nhẹ và tăng cường của LastPass, nói với TechCrunch rằng trước khi nhận thức được các kết quả nghiên cứu của nhà nghiên cứu, LastPass đã áp dụng biện pháp hỗ trợ thông qua một cảnh báo pop-up trong sản phẩm khi ứng dụng phát hiện một cố gắng tận dụng lỗ hổng. "Sau khi phân tích kết quả nghiên cứu, chúng tôi đã thêm từ ngữ thông tin hơn trong cảnh báo pop-up," Cox nói.
Gangwal nói với TechCrunch rằng các nhà nghiên cứu đang khám phá khả năng của một kẻ tấn công có thể trích xuất thông tin đăng nhập từ ứng dụng đến WebView. Nhóm đang điều tra xem lỗ hổng có thể được tái tạo trên iOS không.
Đã cập nhật ý kiến từ LastPass và vào ngày 11 tháng 12 với ý kiến từ Google.