𝗕𝗮𝗼̀ 𝗯𝗮̉𝗼 𝗺𝗮̣̂𝘁 đ𝗮𝗻𝗴 𝗻𝗵𝗮̣̂𝗽 đ𝗼̂̀𝗻𝗴 𝘁𝗵𝗼̀𝗶

Việc cho phép đăng nhập không giới hạn có thể che giấu những lỗ hổng logic nghiệp vụ nghiêm trọng.

Một người dùng đăng nhập trên máy tính xách tay. Vài giây sau, cùng tài khoản đó đăng nhập trên một trình duyệt khác. Sau đó là một thiết bị di động. Rồi đến một API client. Mọi thứ đều hoạt động hoàn hảo.

Điều này có vẻ ổn vì nhiều ứng dụng hỗ trợ nhiều thiết bị. Nhưng bạn phải tự hỏi: Liệu mọi ứng dụng có nên cho phép số lượng phiên làm việc không giới hạn?

Trong một số hệ thống, nhiều phiên làm việc là một tính năng. Trong những hệ thống khác, đó lại là một lỗ hổng mà kẻ tấn công lợi dụng để ẩn mình. Đây là một lỗ hổng logic nghiệp vụ. Mã nguồn hoạt động đúng như thiết kế, nhưng chính thiết kế đó lại yếu kém.

Sự khác biệt: • Các lỗi truyền thống khai thác các sai sót trong lập trình. • Các lỗi logic nghiệp vụ khai thác các quyết định về thiết kế.

Hãy nghĩ về một dịch vụ phát trực tuyến phim. Nếu một gói đăng ký cho phép mười người xem cùng một lúc, hệ thống đăng nhập vẫn hoạt động. Nhưng quy tắc kinh doanh đã thất bại.

Điều này áp dụng cho ngân hàng, bảng điều khiển quản trị và các sản phẩm SaaS.

Cách kiểm tra lỗi này:

Các ứng dụng có tính bảo mật cao thường áp dụng các quy tắc sau:

Nếu kẻ tấn công đánh cắp được thông tin đăng nhập, chúng có thể duy trì trạng thái đăng nhập mãi mãi nếu bạn cho phép số lượng phiên không giới hạn. Chúng vẫn hoạt động trong khi người dùng thật cũng đang hoạt động. Không ai trong hai người nhận ra kẻ xâm nhập.

Ngữ cảnh là tất cả. Các ứng dụng cần nhiều phiên làm việc:

Các ứng dụng cần kiểm soát chặt chẽ:

Cách khắc phục:

Đừng chỉ tìm kiếm các lỗi mã nguồn như SQL injection. Hãy tìm kiếm những khoảng cách giữa những gì ứng dụng của bạn thực hiện và những gì doanh nghiệp của bạn yêu cầu.

Hãy xem xét lại chính sách phiên làm việc của bạn ngay hôm nay. Rủi ro lớn nhất của bạn có thể không phải là mã nguồn bị lỗi. Nó có thể là logic bị lỗi.

Nguồn: https://dev.to/arashad_dodhiya_0e4bdba5a/concurrent-login-security-how-to-check-whether-multiple-sessions-are-allowed-1839