Skip to content

fix: remediate Zscaler connector findings - #41

Merged
sodle-splunk merged 8 commits into
mainfrom
jacobd-codex-fs-fixes
Jul 16, 2026
Merged

fix: remediate Zscaler connector findings#41
sodle-splunk merged 8 commits into
mainfrom
jacobd-codex-fs-fixes

Conversation

@phantom-jacob

Copy link
Copy Markdown
Contributor

Summary

  • constrain caller-controlled ZIA endpoint identifiers
  • escape custom-view JavaScript values
  • activate staged ZIA policy and destination-group changes
  • preserve destination-group lock state
  • require HTTPS for sandbox submissions
  • cap server-directed retry waits
  • serialize allowlist read-modify-write operations

Tracking

  • PAPP-37976 under ESPM-5228
  • PSAAS-30672, PSAAS-30766, PSAAS-31140, PSAAS-31164
  • PSAAS-31738, PSAAS-31749, PSAAS-31770
  • PSAAS-32059, PSAAS-32377, PSAAS-32409
  • Provenance: VULN-93397, VULN-93491, VULN-93865, VULN-93889, VULN-94463, VULN-94474, VULN-94495, VULN-94783, VULN-95100, VULN-95132
  • Legacy: FS-1463, FS-1576, FS-1989, FS-2015, FS-2985, FS-2996, FS-3017, FS-3306, FS-3623, FS-3655

Verification

  • pre-commit run --all-files
  • python3 -m py_compile zscaler_connector.py zscaler_consts.py
  • git diff --check

Patch review

Flashpoint patches were adapted to current source. The three path-injection reports share one structural endpoint-safety fix, and the two staged-policy reports share one activation fix; each distinct user-visible behavior has one signed commit and one release-note item. The legacy sandbox endpoint requires its token as a query parameter, so this connector change requires HTTPS rather than inventing an unsupported header scheme.

No breaking connector metadata changes are intended.

Written by Codex.

Update repository checks and apply generated metadata and lint refreshes.

The temporary release-note entry will be replaced by the first functional fix.

Written by Codex.
Validate numeric user and group IDs and percent-encode category and destination-group path segments before REST endpoint construction.

Tracks PSAAS-30672, PSAAS-31140, and PSAAS-31164 (VULN-93397, VULN-93865, VULN-93889; FS-1463, FS-1989, FS-2015).

Written by Codex.
Apply Django JavaScript-context escaping before passing submitted-file hashes to context menus.

Tracks PSAAS-30766 (VULN-93491, FS-1576).

Written by Codex.
Activate blocklist, allowlist, URL-category, and destination-group mutations before reporting successful enforcement.

Tracks PSAAS-31738 and PSAAS-32377 (VULN-94463, VULN-95100; FS-2985, FS-3623).

Written by Codex.
Retain the current non-editable flag when an edit request does not explicitly provide a replacement.

Tracks PSAAS-31749 (VULN-94474, FS-2996).

Written by Codex.
Reject insecure sandbox base URLs before the legacy API token can be sent as a required query parameter.

Tracks PSAAS-31770 (VULN-94495, FS-3017).

Written by Codex.
Parse Retry-After values defensively and limit any single peer-directed sleep to 60 seconds.

Tracks PSAAS-32059 (VULN-94783, FS-3306).

Written by Codex.
Use action locks for whole-list allow and unallow operations so concurrent runs cannot overwrite each other.

Tracks PSAAS-32409 (VULN-95132, FS-3655).

Written by Codex.
@github-actions

Copy link
Copy Markdown

Merging this PR will release 3.0.2 with the following release notes:

3.0.2 (2026-07-16)

Connector release changes

  • Validate numeric user and group identifiers and encode all caller-controlled ZIA path segments.
  • Escape file hashes before embedding them in custom-view JavaScript.
  • Activate staged ZIA policy and destination-group changes before reporting success.
  • Preserve destination-group non-editable state when the edit parameter is omitted.
  • Require HTTPS when transmitting sandbox API tokens to the legacy submission endpoint.
  • Cap server-directed rate-limit waits at 60 seconds and reject malformed values.
  • Serialize allowlist read-modify-write actions to prevent concurrent update loss.

Generated by Codex through the connector semantic-release preview workflow.

@phantom-jacob
phantom-jacob marked this pull request as ready for review July 16, 2026 20:49
@sodle-splunk
sodle-splunk merged commit d458dd9 into main Jul 16, 2026
10 of 17 checks passed
@sodle-splunk
sodle-splunk deleted the jacobd-codex-fs-fixes branch July 16, 2026 20:54
@splunk-soar-semantic-release

Copy link
Copy Markdown

🎉 This PR is included in version 3.0.2 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants