-
-
Notifications
You must be signed in to change notification settings - Fork 184
Open
Description
Vulnerability summary
The SpendingRepository allows storing unescaped spreadsheet formulas in the description field.
A user with write access to the database (via Tinker, seeder, or direct DB insert) can inject formulas (e.g., =1+1).
Opening these values in a spreadsheet application like Excel can execute the formula.
Steps to reproduce
- Open Tinker:
php artisan tinker - Run the following script:
$repo = app(App\Repositories\SpendingRepository::class);
$spending = $repo->create(
1, // spaceId
null, // recurringId
null, // tagId
date('Y-m-d'), // date
'=1+1', // description with payload
200, // amount
null // importId
);
$spending;Metadata
Metadata
Assignees
Labels
No labels