gpt4 book ai didi

linux - Docker Nginx工作进程以非root用户身份运行,但仍然可以访问root拥有的文件

转载 作者:太空宇宙 更新时间:2023-11-04 04:43:30 27 4
gpt4 key购买 nike

我使用的是docker nginx官方镜像https://github.com/nginxinc/docker-nginx/blob/master/stable/alpine/Dockerfile 。我像 docker exec -it -v drupal:/var/www/drupal/web 一样运行它

web 是我的文档根目录。当我 cd 进入 /var/www/drupal/webls -al 时,我看到文件权限如下所示。一切都归root所有,而nginx工作进程则归nginx非root用户所有。但是当转到 localhost:80 时我可以访问我的网站。这怎么可能 ? nginx用户如何访问root拥有的文件?是否存在安全问题?

-rw-r--r--    1 root     root          1025 Oct 18 23:39 .csslintrc
-rw-r--r-- 1 root root 357 Oct 18 23:39 .editorconfig
-rw-r--r-- 1 root root 151 Oct 18 23:39 .eslintignore
-rw-r--r-- 1 root root 41 Oct 18 23:39 .eslintrc.json
-rw-r--r-- 1 root root 3858 Oct 18 23:39 .gitattributes
-rw-r--r-- 1 root root 2314 Oct 18 23:39 .ht.router.php
-rw-r--r-- 1 root root 7866 Oct 18 23:39 .htaccess
-rw-rw-rw- 1 root root 385 Oct 18 23:39 autoload.php
drwxr-xr-x 44 root root 1408 Oct 18 23:38 core
-rw-r--r-- 1 root root 549 Oct 18 23:39 index.php
drwxr-xr-x 3 root root 96 Oct 18 23:39 modules
drwxr-xr-x 3 root root 96 Oct 18 23:39 profiles
-rw-r--r-- 1 root root 1594 Oct 18 23:39 robots.txt
drwxr-xr-x 6 root root 192 Oct 18 23:39 sites
drwxr-xr-x 3 root root 96 Oct 18 23:39 themes
-rw-r--r-- 1 root root 848 Oct 18 23:39 update.php
-rw-r--r-- 1 root root 4555 Oct 18 23:39 web.config

Nginx容器流程如下:

17     1 nginx    S    14344   1%   0   0% nginx: worker process
1 0 root S 13896 1% 0 0% nginx: master process

最佳答案

ls -l 列表中,第八列中的 r 表示该文件是世界可读的;第十列中带有 x 的目录也可以被任何人访问。从您发布的内容来看,没有任何内容可以访问其无权访问的任何内容。

(世界可写的 autoload.php 可能很危险,如果它允许任何对系统有 shell 访问权限的人编写您的 Web 服务器将运行的任意代码。)

关于linux - Docker Nginx工作进程以非root用户身份运行,但仍然可以访问root拥有的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52884111/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com