mirror of
https://github.com/nginx/nginx.git
synced 2025-01-08 23:23:02 -06:00
Disable symlinks: don't allow creating or truncating a file via a symlink in
the last path component if "if_not_owner" parameter is used. To prevent race condition we have to open a file before checking its owner and there's no way to change access flags for already opened file descriptor, so we disable symlinks for the last path component at all if flags allow creating or truncating the file.
This commit is contained in:
parent
8c27e6429a
commit
15b3173c5e
@ -678,7 +678,9 @@ ngx_open_file_wrapper(ngx_str_t *name, ngx_open_file_info_t *of,
|
||||
goto failed;
|
||||
}
|
||||
|
||||
if (of->disable_symlinks == NGX_DISABLE_SYMLINKS_NOTOWNER) {
|
||||
if (of->disable_symlinks == NGX_DISABLE_SYMLINKS_NOTOWNER
|
||||
&& !(create & (NGX_FILE_CREATE_OR_OPEN|NGX_FILE_TRUNCATE)))
|
||||
{
|
||||
fd = ngx_openat_file_owner(at_fd, p, mode, create, access, log);
|
||||
|
||||
} else {
|
||||
|
Loading…
Reference in New Issue
Block a user