Insecure Direct Object Reference (IDOR) là một lỗ hổng kiểm soát truy cập (access control), cho phép người dùng truy cập trái phép vào các đối tượng mà họ không có quyền.

Ví dụ, nếu URL trang cá nhân của chúng ta là domain.com/user/1102/profile, và chúng ta có thể xem trang của người dùng khác bằng cách thay đổi ID thành domain.com/user/6969/profile, thì trang web đó tồn tại lỗ hổng IDOR.

Nếu ID được mã hóa (ví dụ: base64), chúng ta vẫn có thể giải mã, thay đổi giá trị, sau đó mã hóa lại để truy cập.

Đối với ID đã được hash, có thể thử giải mã bằng các công cụ như CrackStation.

Nếu không thể đoán được ID, chúng ta có thể tạo hai tài khoản. Sau đó, đăng nhập vào tài khoản thứ nhất và thử truy cập nội dung của tài khoản thứ hai. Nếu thành công, trang web có lỗ hổng IDOR.