Security Advisory 05 – 001 – Lack of Backend Authorisation Checking
Webseries Payment Application
Vulnerability discovery and development:
Portcullis Security Testing Services
Bottomline Webseries Payment Application
Portcullis consultants discovered that although privileged operations are not displayed in the application menu presented to unprivileged users, these operations may still be executed by directly accessing the appropriate URL. This, in effect, means that the core application is not carrying out any form of authorisation verification and that any authenticated user, regardless of the rights they have been assigned, can perform any action available to any user of the system. In its simplest form this vulnerability could be used to gather a list of privileged users by accessing the “User Entitlements” report which details user’s security groups and administrative status. An attacker could use this information to greatly increase their likelihood of success in gaining unauthorised access.
An unauthorized user could, by directly accessing the SaveUser.asp script create a new user with administrative privileges. Portcullis consultants developed the following simple HTML page to perform this action:
Any other system operation including user approval, security group modification and payment approval can be performed in a similar manner.
The only thing obstructing a malicious attacker from succeeding in such attacks is that the approval system has been correctly implemented. Even by accessing URLs directly, a user cannot approve their own changes.
Two unprivileged users, acting in collusion, have the ability to execute any function the system is capable of performing. This includes submitting, and approving, payments of unlimited value.
Portcullis consultants have developed the a simple HTML page to perform this action.