Updates Decorators with Certain Permission Models#14410
Updates Decorators with Certain Permission Models#14410Maffooch merged 5 commits intoDefectDojo:bugfixfrom
Conversation
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
25b910d to
70c3889
Compare
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
🟡 Please give this pull request extra attention during review.This pull request introduces a change to dojo/benchmark/views.py but leaves the update_benchmark view retrieving a Product by user-supplied pid without any authorization check or scoping to the current user, creating a potential IDOR where an authenticated attacker could access or modify benchmarks for arbitrary products; the view is missing the @user_is_authorized decorator present on similar endpoints.
🟡 Potential IDOR Vulnerability in
|
| Vulnerability | Potential IDOR Vulnerability |
|---|---|
| Description | The 'update_benchmark' view in 'dojo/benchmark/views.py' retrieves a 'Product' object using a user-supplied 'pid' without any authorization check or scoping to the current user. While the patch adds a filter to ensure the 'Benchmark_Product' belongs to the retrieved 'Product', it fails to verify that the user has permission to access that 'Product'. This allows an authenticated attacker to access or modify benchmarks for any product by providing the appropriate 'pid'. Unlike other views in the same file (e.g., 'update_benchmark_summary') and other files in the patch, 'update_benchmark' is missing the '@user_is_authorized' decorator that would normally enforce these permissions. |
django-DefectDojo/dojo/benchmark/views.py
Lines 49 to 52 in acce7bf
All finding details can be found in the DryRun Security Dashboard.
|
Are there some lines that describe what this PR does? I can see it exposes some extra data depending on users permissions. But it also changes some existing permission checks? |
|
@valentijnscholten I have added a description to the PR |
Uh oh!
There was an error while loading. Please reload this page.