You've already forked oauth2-proxy
mirror of
https://github.com/oauth2-proxy/oauth2-proxy.git
synced 2025-08-15 20:23:13 +02:00
Merge pull request from GHSA-qqxw-m5fj-f7gv
check for /\ redirects
This commit is contained in:
@@ -17,7 +17,7 @@
|
||||
- DigitalOcean provider support added
|
||||
|
||||
## Important Notes
|
||||
N/A
|
||||
- (Security) Fix for open redirect vulnerability.. a bad actor using `/\` in redirect URIs can redirect a session to another domain
|
||||
|
||||
## Breaking Changes
|
||||
|
||||
|
@@ -558,7 +558,7 @@ func validOptionalPort(port string) bool {
|
||||
// IsValidRedirect checks whether the redirect URL is whitelisted
|
||||
func (p *OAuthProxy) IsValidRedirect(redirect string) bool {
|
||||
switch {
|
||||
case strings.HasPrefix(redirect, "/") && !strings.HasPrefix(redirect, "//"):
|
||||
case strings.HasPrefix(redirect, "/") && !strings.HasPrefix(redirect, "//") && !strings.HasPrefix(redirect, "/\\"):
|
||||
return true
|
||||
case strings.HasPrefix(redirect, "http://") || strings.HasPrefix(redirect, "https://"):
|
||||
redirectURL, err := url.Parse(redirect)
|
||||
|
Reference in New Issue
Block a user