Lỗ hổng trong OAuth ảnh hưởng hơn 1 tỉ tài khoản ứng dụng di động

Các nhà nghiên cứu vừa mới tìm ra một phương pháp tấn công hàng loạt ứng dụng Android và iOS thông qua OAuth 2.0 . Tin tặc có thể đăng nhập vào tài khoản trên di động mà chủ tài khoản không hề hay biết.

Ba nhà nghiên cứu Ronghai Yang, Wing Cheong Lau, và Tianyu Liu đến từ Đại học Hồng Kông đã tìm ra lỗ hổng trong cài đặt OAuth. OAuth 2.0 là một chuẩn xác thực mã nguồn mở cho phép người dùng đăng nhập vào dịch vụ bên thứ ba bằng tài khoản Google, Facebook, Sina …

Quá trình xác thức này cho phép người dùng đăng nhập mà không cần cung cấp tên tài khoản cùng mật khẩu.

android-oauth2

Triển khai OAuth đúng cách

Khi một người dùng đăng nhập vào ứng dụng bên thứ ba thông qua OAuth, ứng dụng sẽ kiểm tra ID (định danh) do nhà cung cấp phát hành. Nếu ID chính xác, OAuth sẽ trả về “Access Token” từ Facebook cho ứng dụng di động. Máy chủ của ứng dụng tiếp tục yêu cầu xác thực thông tin từ Facebook, kiểm tra và đăng nhập vào tài khoản của người dùng đó.

Nhưng phần lớn các nhà phát triển ứng dụng đều không kiểm tra tính chân thực của thông tin gửi từ nhà cung cấp ID như Facebook, Google hoặc Sina

 hacking-oauthTriển khai OAuth sai cách

Thay vì kiểm tra thông tin OAth (Access Token) đi kèm với thông tin của người dùng, máy chủ ứng dụng chỉ kiểm tra ID của ngươi dùng cung cấp từ phía nhà cung cấp. Tin tặc có thể tải về ứng dụng chứa lỗ hổng, đăng nhập bằng một tài khoản rồi sau đó thay đổi tên đăng nhập sang tài khoản muốn tấn công (thông qua suy đoán hoặc tìm kiếm Google) bằng cách tại ra một máy chủ thay đổi thông tin phản hồi từ Facebook, Google hoặc nhà cung cấp ID khác.

Sau khi đăng nhập tin tặc có thể có được toàn bộ thông tin người dùng, đánh cắp thông tin thanh toán ngân hàng,… Có hàng trăm nghìn ứng dụng phổ biến trên Android hỗ trợ OAuth 2.0 với 2.4 tỉ lượt tải về. Các nhà nghiên cứu hiện chưa thử nghiện trên iOS nhưng cho rằng lỗ hổng hoạt động trên cả hệ điều hành này.

THN

Bình luận

Từ khóa: