Google vá các lỗ hổng nghiêm trọng trong quy trình khôi phục tài khoản

Một nhà nghiên cứu đã nhận được 12.500 USD từ Google do đã báo cáo một số lỗ hổng trong quy trình khôi phục tài khoản có thể bị khai thác để thay đổi mật khẩu người dùng.

Nhiều nhà nghiên cứu đã từng thông báo cho Google về việc có thể lợi dụng quy trình khôi phục tài khoản để chiếm đoạt các tài khoản thử nghiệm. Google cho biết các nhà nghiên cứu có thể chiếm quyền điều khiển các tài khoản thử nghiệm vì quá trình phục hồi được khởi tạo từ một địa chỉ IP và đối tượng trình duyệt đã biết. Đây là tính năng được thiết kế để người dùng có thể dễ dàng khôi phục lại tài khoản, đặc biệt trong trường hợp tài khoản bị kẻ xấu chiếm đoạt.

image_5503

Tuy nhiên, một nhà nghiên cứu với biệt danh “Ramzes” đã xác định một loạt lỗ hổng an ninh trong quy trình phục hồi tài khoản, đủ điều kiện được thưởng theo chương trình tặng thưởng lỗ hổng của Google (VRP).

Theo mô tả của Ramzes, cuộc tấn công bắt đầu từ lỗ hổng cross-site scripting (XSS) trên google.com, cụ thể là trên API vốn được sử dụng bởi nhiều ứng dụng web Google để hiển thị các bài viết trợ giúp nội tuyến giúp người dùng không phải chuyển hướng đến Trung tâm Trợ giúp (Help Center).

Lỗ hổng này cho phép kẻ tấn công thực thi mã tùy ý trong bài trợ giúp. Khi nạn nhân kích hoạt việc khai thác, mã này có thể đã khởi tạo quy trình phục hồi tài khoản trên google.com.

Trong bước đầu tiên của quy trình phục hồi, người dùng phải nhập địa chỉ email vào trang google.com/accounts/recovery. Sau khi tin tặc nhập tài khoản email mục tiêu, quy trình tiếp tục trên accounts.google.com, nơi người dùng được yêu cầu nhập mật khẩu sử dụng lần cuối cùng.

Bước này thường chỉ được gửi qua một URL có chứa mã thông báo (token) nhận được ở bước đầu tiên. Token sẽ chặn các cuộc tấn công giả mạo yêu cầu cross-site (CSRF), nhưng Ramzes phát hiện cách có thể vượt qua cơ chế bảo vệ và mô phỏng người dùng nhấn vào nút “Tôi không biết” trên trang “Nhập mật khẩu cuối cùng mà bạn nhớ”.

Bước thứ ba trong quy trình phục hồi tiếp tục diễn ra trên google.com. Trong bước này, người dùng có thể hướng dẫn Google lập lại mật khẩu bằng cách gửi email đến địa chỉ email phụ được chỉ định trước đó. Nếu không có quyền truy cập vào địa chỉ email đó, người dùng có thể xác minh danh tính để sử dụng các tùy chọn phục hồi khác. Cách khai thác mà Ramzes mô tả lựa chọn tùy chọn thứ hai, cho phép tin tặc có được link thiết lập lại mật khẩu được gửi đến địa chỉ email của tin tặc.

Để nhận được link thiết lập lại mật khẩu, tin tặc phải hoàn thành một bài kiểm tra kiến thức. Tuy nhiên, bài kiểm tra này có thể được “bỏ qua” nếu tin tặc có thể trả lời chính xác câu hỏi tài khoản được tạo ra khi nào và tài khoản được truy cập lần cuối khi nào.

Dù có vẻ khó đoán, nhà nghiên cứu phát hiện thông tin này được liệt kê trên một trang trong tên miền có payload XSS đang chạy, cho phép tin tặc dễ dàng có được thông tin và có được link thiết lập lại mật khẩu được gửi đến địa chỉ email quy định.

Google cho biết đã vá các lỗ hổng có thể bị khai thác. Công ty cũng đang tiến hành di chuyển nhiều dịch vụ phức tạp hơn trên google.com đến tên miền phụ để ngăn ngừa các sai sót.

Ramzes được thưởng 5.000 USD cho lỗ hổng XSS và 7.500 USD cho phát hiện về việc liên kết các lỗ hổng.

Theo: Forum WhiteHat