Release: Merge release into master from: release/2.50.1#13135
Release: Merge release into master from: release/2.50.1#13135
Conversation
….51.0-dev Release: Merge back 2.50.0 into bugfix from: master-into-bugfix/2.50.0-2.51.0-dev
* 🎉 Add fix_available to KrakenDAudit * Update settings.dist.py
* 🎉 Add number of fix_available information to test view * Update dojo/templates/dojo/view_test.html Co-authored-by: valentijnscholten <valentijnscholten@gmail.com> --------- Co-authored-by: Cody Maffucci <46459665+Maffooch@users.noreply.github.com> Co-authored-by: valentijnscholten <valentijnscholten@gmail.com>
Co-authored-by: Jino Tesauro <jino@defectdojo.com>
* add about_deduplication png * update changelog 2.50 * update changelog 2.50 --------- Co-authored-by: Paul Osinski <paul.m.osinski@gmail.com>
* semgrep pro: parse sast finding * update docs
* 🐛 Implement Wazuh v4.8 * update unittests * update * fix * fix * fix * update unittests * update * fix unittest * review
* 🐛 Fix finding_group view * ruff * finding group view: add basic UI tests --------- Co-authored-by: Valentijn Scholten <valentijnscholten@gmail.com>
fix default order to finding_groups
🔴 Risk threshold exceeded.This pull request modifies several sensitive codepaths (notably dojo/finding_group/views.py, dojo/test/views.py, and dojo/templates/dojo/view_test.html) flagged by the scanner. It also introduces an information-disclosure/user-enumeration risk in dojo/api_v2/serializers.py (distinct SSO-specific error message) and a potential XSS risk in dojo/tools/semgrep_pro/parser.py where external JSON is interpolated into finding fields without sanitization.
🔴 Configured Codepaths Edit in
|
| Vulnerability | Configured Codepaths Edit |
|---|---|
| Description | Sensitive edits detected for this file. Sensitive file paths and allowed authors can be configured in .dryrunsecurity.yaml. |
🔴 Configured Codepaths Edit in dojo/test/views.py
| Vulnerability | Configured Codepaths Edit |
|---|---|
| Description | Sensitive edits detected for this file. Sensitive file paths and allowed authors can be configured in .dryrunsecurity.yaml. |
🔴 Configured Codepaths Edit in dojo/templates/dojo/view_test.html
| Vulnerability | Configured Codepaths Edit |
|---|---|
| Description | Sensitive edits detected for this file. Sensitive file paths and allowed authors can be configured in .dryrunsecurity.yaml. |
🔴 Configured Codepaths Edit in dojo/test/views.py
| Vulnerability | Configured Codepaths Edit |
|---|---|
| Description | Sensitive edits detected for this file. Sensitive file paths and allowed authors can be configured in .dryrunsecurity.yaml. |
🔴 Configured Codepaths Edit in dojo/finding_group/views.py
| Vulnerability | Configured Codepaths Edit |
|---|---|
| Description | Sensitive edits detected for this file. Sensitive file paths and allowed authors can be configured in .dryrunsecurity.yaml. |
🔴 Configured Codepaths Edit in dojo/finding_group/views.py
| Vulnerability | Configured Codepaths Edit |
|---|---|
| Description | Sensitive edits detected for this file. Sensitive file paths and allowed authors can be configured in .dryrunsecurity.yaml. |
🔴 Configured Codepaths Edit in dojo/finding_group/views.py
| Vulnerability | Configured Codepaths Edit |
|---|---|
| Description | Sensitive edits detected for this file. Sensitive file paths and allowed authors can be configured in .dryrunsecurity.yaml. |
🟡 Potential Cross-Site Scripting in dojo/tools/semgrep_pro/parser.py
| Vulnerability | Potential Cross-Site Scripting |
|---|---|
| Description | File dojo/tools/semgrep_pro/parser.py directly loads external JSON via json.load(filename) and then interpolates numerous fields from that JSON into Finding attributes (description, mitigation, references, impact, etc.) without any sanitization or escaping. Examples in the patch: desc += f"Message: {item['rule_message']}\n\n" (in get_description), mitigation_parts.append(f"Suggested Fix:\n |
django-DefectDojo/dojo/tools/semgrep_pro/parser.py
Lines 1 to 195 in f72cb99
Information Disclosure (User Enumeration) in dojo/api_v2/serializers.py
| Vulnerability | Information Disclosure (User Enumeration) |
|---|---|
| Description | The UserContactInfoSerializer in dojo/api_v2/serializers.py contains validation logic that raises a specific error message: 'Password resets are not allowed for users authorized through SSO.' when an attempt is made to force a password reset for a user authenticated via Single Sign-On (SSO). This distinct error message, compared to the generic 'Invalid data' or 'Object not found' errors for other scenarios (e.g., non-existent user, user with local password), allows an attacker to differentiate between SSO-managed accounts and other account types. This difference in response can be leveraged to enumerate users who are authenticated through SSO. |
django-DefectDojo/dojo/api_v2/serializers.py
Lines 614 to 626 in f72cb99
We've notified @mtesauro.
All finding details can be found in the DryRun Security Dashboard.
Release triggered by
rossops