Các ứng dụng quản lý mật khẩu trên Android có thể bị đánh lừa
Các ứng dụng quản lý mật khẩu được dùng để tạo, lưu trữ, nhập và tự động điền mật khẩu vào các ứng dụng hay website. Ngoài tác dụng giúp người dùng tạo và nhớ những mật khẩu phức tạp, các ứng dụng quản lý mật khẩu còn giúp chống lại các thủ đoạn lừa đảo thông qua chức năng tự động điền mật khẩu: chúng chỉ tự động điền mật khẩu vào các trang web/ứng dụng di động tương ứng chứ không phải những địa chỉ giả mạo.
Trường đại học Genoa và nhóm nghiên cứu Phishing Attacks on Modern Android của EUROCOM đã khám phá ra sự khác biệt giữa truy cập một dịch vụ qua ứng dụng di động và truy cập qua website trên máy tính để bàn. Với trình duyệt trên máy tính, khi một trang web được ghé thăm lần đầu, ứng dụng quản lý mật khẩu tạo ra một liên kết giữa tên miền (xác thực bằng chứng chỉ số) và thông tin đăng nhập vào trang web đó. Tuy nhiên, khi người dùng sử dụng thông tin đăng nhập để truy cập vào một ứng dụng di động, quá trình xác thực ứng dụng phức tạp hơn nhiều và kém an toàn hơn. Phương thức chính mà ứng dụng quản lý mật khẩu dùng để phân biệt giữa ứng dụng di động thật và ứng dụng di động giả là liên kết tên miền của website của ứng dụng đó với tên ứng dụng. Nhưng điều bất cập là tên ứng dụng có thể bị giả mạo: kẻ xấu có thể tạo ra một ứng dụng giả với tên giống như ứng dụng thật và trình quản lý mật khẩu sẽ tin tưởng, điền mật khẩu vào giao diện của ứng dụng giả.
Các nhà nghiên cứu phát hiện ra rằng, các trình quản lý mật khẩu phổ biến như LastPass, 1Password, Dashlane và Keeper đều bị lừa bằng cách đó. Chỉ có Google Smart Lock, một ứng dụng không hẳn là trình quản lý mật khẩu là không bị lừa. Trong quá trình kiểm tra, họ phát hiện thêm rằng tính năng Instant Apps mà Google mới giới thiệu vốn được thiết kế để người dùng thử nghiệm ứng dụng mà không cần tải xuống và cài đặt, có thể bị website lừa đảo lợi dụng để kích hoạt tính năng tự động đăng nhập của trình quản lý mật khẩu. Điều này khá nguy hiểm vì nó giúp kẻ xấu lấy được thông tin đăng nhập mà không cần lừa người dùng cài đặt ứng dụng với tên giả (điều Google Play không cho phép).
Các trình quản lý mật khẩu ánh xạ các tên miền tới ứng dụng di động trên Android dựa trên 3 chuẩn: Accessibility Service (a11y); Autofill Framework (từ phiên bản Oreo 8.0 trở về sau); OpenYOLO – một sản phẩm hợp tác giữa Google và Dashlane. Chuẩn đầu tiên, a11y, được thiết kế cho những người tàn tật nhưng sau đó bị các loại mã độc lợi dụng để lấy quyền quản trị. Điều đó khiến Google quyết định triển khai Autofill Framework và hợp tác với Dashlane để xây dựng OpenYOLO. Điều không may là cả 3 tiêu chuẩn đó đều có thể bị qua mặt bằng cách thay đổi tên ứng dụng. Các nhà nghiên cứu đề xuất giải pháp đưa ra một API mới getVerifiedDomainNames với chức năng kiểm tra liên kết giữa một tên miền và ứng dụng di động gắn với nó. Nhược điểm của cách làm này là các website sẽ phải công bố một tệp chứa thông tin đó, điều mà chỉ có 2% trong số hơn 8000 tên miền được khảo sát thực hiện.
Hiện tại, các trình quản lý mật khẩu chỉ còn cách tự tìm cách giải quyết. LastPass nói rằng, họ không tin điểm yếu này từng khiến khách hàng của họ bị tấn công.
Dù sao thì việc sử dụng các trình quản lý mật khẩu vẫn là cách đơn giản và hiệu quả nhất để đảm bảo an ninh mà người dùng có thể áp dụng. Khả năng bị tấn công do dùng lại mật khẩu sẽ lớn hơn so với khả năng bị ứng dụng di động giả qua mặt trình quản lý mật khẩu. Nếu bạn lo ngại về kiểu tấn công mới này hoặc các kiểu tấn công tương tự, hãy tắt tính năng tự điền mật khẩu chứ đừng vì thế mà ngừng sử dụng các trình quản lý mật khẩu.
Nguyễn Anh Tuấn
Theo Naked Security