A security flaw has been discovered in Solvait version 24.4.2 that allows an attacker to elevate their privileges. By manipulating the Request ID and Action Type parameters in the /AssignToMe/SetAction request, an attacker can alter the approval status of any request submitted by a regular employee. The approval status will appear as if it was changed by the employee's manager. This vulnerability affects all employees using this version of the software within the company.
The vulnerability enables an attacker to gain unauthorized privileges by manipulating request parameters. As a result, the attacker can bypass approval workflows, potentially leading to unauthorized access to sensitive information or approval of fraudulent requests. This issue compromises the integrity of the approval process and can significantly undermine trust in the system's security.
Vulnerability path:
https://<domain>/AssignToMe/SetAction
This vulnerability was tested and found on version 24.4.2
1- As a regular employee, create a normal leave request. Make note of the request id (ReqID)
2- Craft a POST request to https://<domain>//AssignToMe/SetAction.
The parameters of the request should include the following:
ReqNum=<RequestID>&TableName=DAPLeaveRequest&ActionTypeRequest=1&Comment=<Any text>&RequestId=<RequestID>&WordkerId=<Regular Employee ID in the system>&DelegateUserId=
3- Send the request.
4- A successful response will be returned.
5- Navigate to the leave request, and you will find that the employee's manager has approved the request.
Abdulwahab Alismaeel