Skip to content

Block cross-origin redirects by default on 1.4 - #786

Merged
pboling merged 1 commit into
1-4-stablefrom
fix/1-4-cross-origin-redirects
Oct 28, 2026
Merged

pboling merged 1 commit into
1-4-stablefrom
fix/1-4-cross-origin-redirects

Conversation

@pboling

@pboling pboling commented Oct 28, 2026

Copy link
Copy Markdown
Member

Summary

  • Block cross-origin redirects by default so OAuth credentials are not replayed and an attacker-controlled endpoint cannot provide a token response.
  • Preserve an explicit :allow_cross_origin_redirects => true escape hatch for legacy integrations, while stripping per-request credentials and payloads.
  • Add regression coverage and link the fix to GHSA-h4fh-g8xf-8255.

Validation

  • K_SOUP_COV_MIN_HARD=false bundle exec kettle-test spec/oauth2/client_spec.rb (66 examples, 0 failures)
  • bundle exec rubocop-gradual (no new issues)

Copilot AI balanced review requested due to automatic review settings October 28, 2026 03:46

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota.

An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.

@github-actions

Copy link
Copy Markdown

Code Coverage

Package Line Rate Branch Rate Health
oauth2 97% 88% ➖
Summary 97% (416 / 429) 88% (72 / 82) ➖

Minimum allowed line rate is 92%

@coveralls

Copy link
Copy Markdown

Coverage Report for CI Build 40628591987

Coverage increased (+0.05%) to 95.499%

Details

  • Coverage increased (+0.05%) from the base build.
  • Patch coverage: 5 of 5 lines across 1 file are fully covered (100%).
  • No coverage regressions found.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

No coverage regressions found.


Coverage Stats

Coverage Status
Relevant Lines: 429
Covered Lines: 416
Line Coverage: 96.97%
Relevant Branches: 82
Covered Branches: 72
Branch Coverage: 87.8%
Branches in Coverage %: Yes
Coverage Strength: 34.17 hits per line

💛 - Coveralls

@pboling
pboling merged commit 38cc6db into 1-4-stable Oct 28, 2026
46 of 47 checks passed
@pboling
pboling deleted the fix/1-4-cross-origin-redirects branch October 28, 2026 03:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants