Skip to content

Commit 0aa23b0

Browse files
committed
fix(settings): prevent open redirect via protocol-relative redirect paths
1 parent a886f31 commit 0aa23b0

1 file changed

Lines changed: 1 addition & 5 deletions

File tree

src/settings.rs

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -113,11 +113,7 @@ fn set_cookies_method(req: Request<Body>, remove_cookies: bool) -> Response<Body
113113
let path = match form.get("redirect") {
114114
Some(value) => {
115115
let value = value.replace("%26", "&").replace("%23", "#");
116-
if value.starts_with('/') {
117-
value
118-
} else {
119-
format!("/{value}")
120-
}
116+
format!("/{}", value.trim_start_matches(|c| c == '/' || c == '\\'))
121117
}
122118
None => "/".to_string(),
123119
};

0 commit comments

Comments
 (0)