Gurkirat Singh, một hacker mũ trắng đến từ Mỹ đã tiết lộ cách hack nhiều tài khoản Facebook chỉ với vài kỹ năng IT cơ bản.

Sự thật là dù có cài mật khẩu phức tạp hay thêm bao nhiêu lớp bảo mật đi chăng nữa thì Facebook của bạn vẫn sẽ có nguy cơ bị hack. Mới đây, Gurkirat Singh, một hacker mũ trắng đến từ Mỹ đã tiết lộ cách hack nhiều tài khoản Facebook chỉ với vài kỹ năng IT cơ bản.

Cụ thể là Gurkirat đã phát hiện ra một lỗ hổng bảo mật có thể cho phép hacker thâm nhập vào tài khoản nạn nhân ngay qua cơ chế reset mật khẩu của Facebook. Một khi đã truy cập được vào tài khoản của bạn, hắn có thể xem tất cả tin nhắn, thông tin giao dịch và làm bất cứ tác vụ nào khác.

Thủ thuật tấn công cũng hết sức đơn giản, mặc dù tiến hành cũng cần chút nỗ lực.

Mấu chốt của nó chính là cách thức Facebook cho phép bạn reset mật khẩu. Mỗi khi bạn quên mật khẩu và yêu cầu reset, mạng xã hội này sẽ sử dụng một thuật toán tự động phát sinh một đoạn mã ngẫu nhiên 6 chữ số (với 10^6 = 1.000.000 khả năng kết hợp khác nhau). Mã này sẽ không thay đổi cho đến khi được bạn sử dụng.

Gurkirat cho biết: “Điều này có nghĩa là nếu 1 triệu người yêu cầu reset password chỉ trong một khoảng thời gian ngắn chưa ai kịp dùng đoạn mã xác nhận 6 số của mình để reset password thì người thứ 1.000.001 yêu cầu reset sẽ nhận được đoạn mã trùng với một người nào đó trong số còn lại.”

Làm thế nào để hack được nhiều tài khoản Facebook?

Gurkirat đã thu thập hàng loạt ID Facebook đang sử dụng bằng cách truy xuất Facebook Graph API (được hiểu là một dạng đồ thị xã hội chứa các chủ thể như người dùng, page,… và những mối liên kết giữa họ), bắt đầu từ số 100.000.000.000.000 bởi ID Facebook luôn là một dãy 15 chữ số. Sau đó, anh truy cập vào www.facebook.com/[ID] với mỗi [ID] được thay bằng dãy ID người dùng đang sử dụng Facebook.

Sau khi nhập ID người dùng vào sau www.facebook.com/, đường link sẽ được chuyển hướng và phần ID sẽ tự động được đổi về username của người dùng Facebook. Bằng cách này, Gurkirat có thể kiếm được một danh sách 2 triệu username người dùng đang hoạt động Facebook.

Ví dụ sau khi nhập dãy ID người dùng như thế này:

URL sẽ tự động chuyển về trang profile của người đó như sau:

Trên blog cá nhân, anh cho biết: “Tôi có báo lỗi này cho Facebook vào 3/3/2016 nhưng công ty lại không tin rằng một cuộc tấn công trên diện rộng như vậy có thể xảy ra. Họ muốn thấy bằng chứng. Chính vì vậy mà tôi dành gần 1 tháng học và xây dựng cơ sở hạ tầng nhắm vào 2 triệu người dùng Facebook rồi gửi lại lỗi này cho họ. Đến lúc này thì Facebook buộc phải công nhận đây thực sự là vấn đề nghiêm trọng.”

Sử dụng một đoạn script với hàng trăm proxy và user-agent, Gurkirat có thể dễ dàng tạo lập 2 triệu yêu cầu reset cùng lúc từ 2 triệu người dùng trong danh sách thu thập được ở trên. Như vậy, với mỗi yêu cầu reset, Gurkirat lại lấy được một đoạn mã 6 chữ số trùng lặp với một người nào đó khác, sử dụng hết 1.000.000 cách kết hợp 6 chữ số này.

Sau đó, anh chọn ngẫu nhiên một đoạn mã 6 bất kỳ, chẳng hạn như 338625, rồi bắt đầu quá trình reset mật khẩu bằng một đoạn script khác cho danh sách 2 triệu người dùng này. Cuối cùng, nếu Gurkirat sử dụng mã 6 số bất kỳ kia gõ reset mật khẩu tài khoản một người ngẫu nhiên trong danh sách được Facebook gán cho đúng đoạn mã 338625 đó thì hoàn toàn có khả năng chiếm được tài khoản của nạn nhân.

Anh đã thực hiện việc này một số lần và cuối cùng cũng tìm được một mã reset 6 chữ số để cướp được tài khoản của một người dùng nào đó.

Mặc dù Facebook đã vá lỗ hổng kia và tặng thưởng Gurkirat 500 USD nhưng anh tin rằng cách vá này vẫn chưa đủ mạnh để lấp được nó.

“Tôi không thể nào tưởng tượng được một công ty lớn như Facebook lại có thể dễ bị tấn công đến thế. Facebook báo với tôi rằng họ đã vá lỗ hổng này và thắt chặt kiểm soát các địa chỉ IP, thế nhưng với lượng IP khổng lồ như vậy, tôi vẫn nghi ngờ không chắc liệu phương thức họ làm có thực sự hiệu quả hay không.”

Tuy nhiên, Facebook vẫn trao cho bạn một lớp bảo vệ nữa để bảo vệ tài khoản khỏi những vụ tấn công như vậy.

Dưới đây là một số cách bảo vệ tài khoản Facebook của bạn:

- Kích hoạt Login Approvals để ngăn chặn người khác truy cập tài khoản của bạn từ một thiết bị chưa được cấp quyền. Bằng cách bật tính năng Login Approvals, Facebook sẽ gửi bạn một đoạn mã OTP 6 chữ số qua SMS (đến số điện thoại bạn đã đăng ký). Như vậy, nếu ai đó đang cố gắng truy cập tài khoản của bạn từ một thiết bị mới, bạn cũng sẽ nhận được đoạn mã OTP báo hiệu.

- Kích hoạt Login Notification Alert: Facebook cũng cung cấp một tính năng bảo mật khác là Login Alerts. Login Alerts sẽ gửi cho bạn một email hoặc tin nhắn SMS mỗi khi nó nghi ngờ có người khác đang truy cập vào tài khoản của ban.

Nếu lượt truy cập đó đúng là từ thiết bị lạ bạn không biết, bạn chỉ cần làm theo các bước hướng dẫn trong email gửi đến để vô hiệu hóa quyền truy cập từ thiết bị đó.

- Sử dụng phần mềm quản lý password: Lời khuyên để giữ mật khẩu mạnh cho tất cả các tài khoản online mà không cần phải nhớ hết chúng là sử dụng các phần mềm quản lý password. Các phần mềm quản lý password sẽ đưa ra các mật khẩu phức tạp, không trùng lặp cho từng tài khoản của bạn rồi lưu trữ chúng dưới dạng file mã hóa được bảo vệ an toàn khỏi cả những kẻ truy cập được vào điện thoại hay PC của bạn.

File mã hóa đó chỉ có thể truy cập được vào bằng một mật khẩu chủ (master passworrd). Chính vì vậy tất cả những gì bạn cần làm là nhớ mật khẩu chủ của mình để mở được các phần mềm quản lý mật khẩu.

Phần mềm Password khuyên dùng: Password Manager của hãng bảo mật Trend Micro.