InvoicePlane lưu user_type của người dùng vào session khi đăng nhập, sau đó Admin_Controller dùng giá trị trong session để quyết định quyền truy cập quản trị thay vì xác thực lại ip_users.user_type trong cơ sở dữ liệu ở mỗi request.
Khi quản trị viên Y hạ cấp quản trị viên X, vai trò trong cơ sở dữ liệu được đổi nhưng session đang hoạt động của X không bị hủy hoặc cập nhật. Logic cập nhật session chỉ xử lý trường hợp tài khoản đang được sửa chính là tài khoản hiện đang đăng nhập, vì vậy session của X vẫn mang trạng thái quản trị và tiếp tục vượt qua kiểm tra của Admin_Controller.
Session còn hiệu lực cho phép người dùng đã bị hạ cấp gọi các chức năng quản trị, bao gồm chức năng quản lý người dùng. Trong Users::form(), controller đưa lại trường user_type từ dữ liệu HTTP vào bản ghi ngay cả khi trường này được bảo vệ ở tầng model. Do đó, người dùng có session quản trị cũ có thể đặt user_type của chính mình trở lại 1; giá trị này được ghi vào cơ sở dữ liệu và làm cho việc khôi phục quyền trở nên lâu dài.
Advisory của dự án mô tả phạm vi đã kiểm thử là InvoicePlane trên CodeIgniter 3 với files session driver. Bản ghi công khai không xác nhận rằng mọi cấu hình session hoặc mọi thay đổi tùy biến authorization bên ngoài phạm vi này đều có hành vi giống nhau.