发布时间:2021-7-9 分类: 行业资讯
有一天,VIP演讲厅微信群的一位同学说网站被绞死了。经过长时间检查后,无法找到原因。 Elong SEO的负责人刘明问了一个问题“技术上是否在Linux系统中为网站的核心目录设置了777文件权限”,同学们发现它是。那么,什么是777?老虎机?喜欢懒惰的程序员应该微笑并省去麻烦。这个简单数字背后代表了一组很棒的文件权限控制思想。院长急忙请刘明背诵一篇文章,让我们慢慢了解刘明的解释。
一、当用户访问一个网页
此时,服务器内部会发生什么,请参考下图。这些链接中的任何一个都有漏洞并会导致问题。请注意,此图片仅供个人理解,并非真实流程。
二、文件的权限只有三种
查看Linux的标准文档,您就会知道。该文件分为三个权限:读取,写入和执行。
r Read可以打开并阅读内容。
w写入可以修改内容,添加内容,甚至删除内容。
x Execute可以作为可执行文件或shell脚本执行。
特别是,对于目录,x表示您可以浏览其中的文件。
三、文件权限针对的是三类用户。
所有者文件的所有者或创建文件的人员。
组文件所在的组。一个组可以包含许多所有者,但它不一定包含当前文件。
其他其他,即除当前所有者外,当前所有者除外。
四、实际是什么样子的。
linux中的所有文件都需要记录这3种权限和3种人。 3x3=9,加上表示“这不是目录”的标签,共10个标签。如图所示,
这12行代表12个文件,所有这些文件都是由一个名为罪的人创建的,罪的分组是工作人员。
五、详细解释一下。
我们从前到后逐一谈话。写一个孩子(drwx)意味着有这个权限。写一条水平线( - ),表示没有这样的权限。
Drwxrwxrwx
1:这不是文件夹。 d表示是, - 表示否。 (如果你写l,你可以理解他是一个捷径)
2:所有者是否可以读取此文件的内容。 r表示是, - 表示否。
3:所有者可以重写此文件的内容。 w表示是, - 表示否。
4:所有者可以执行此文件。 x表示是, - 表示否
5:组是否可以读取该文件的内容。 r表示是, - 表示否。
6:组可以重写此文件的内容。 w表示是, - 表示否。
7:组可以执行此文件。 x表示是, - 表示否。
8:其他可以读取该文件的内容。 r表示是, - 表示否。
9:其他可以重写此文件的内容。 w表示是, - 表示否。
10:其他可以执行此文件。 x表示是, - 表示否。
六、怎么用数字方便的表示文件权限。
因为10个职位中的第一个不是许可,我们只看后面的9个职位。
如何将此权限转换为数字? rwxrw-R -
所有者组别
符号r w x r w - r - -
二进制1 1 1 1 1 0 1 0 0
总和7 6 4
111=2 ^ 2 + 2 ^ 1 + 2 ^ 0=7
110=2 ^ 2 + 2 ^ 1=6
100=2 ^ 2=4
所以rwxrw-r--变为:764
七、常用的权限数字
通常用于更改文件权限,xxx表示文件名
600只拥有者具有读写权限
644所有者具有读写权限,组仅具有读权限
700只有ower有读写权限和执行权限
666所有者,组,其他人具有读写权限
777所有者,组,其他人具有读写权限和执行权限
八、终于讲到正题了
话虽如此,你应该明白,777意味着任何人都可以做任何事情。这等于没有设置权限! Linux无法忍受自己故意制造漏洞的安全性。这与使用窗纸替换钢铁侠的材料完全相同。
linux的安全性原则是最小特权原则。未经许可,不得给予许可。许多懒惰或新手程序员经常使用最大权限来节省麻烦。
有人问,网站需要上传图片,需要正常,否则图片会被放置。然后我想问一下,你的房子可以自由移动吗?冰箱可以移动,承重墙可以移动吗?请注意,客厅,卧室,卫生间和厨房空间都是rw,但承重墙只能是r,不能只是w。
同样,网站的核心代码不可写,只能读取。
学到了权限的基本支持,如何使用它? (只能说出意思,应该如何部署,或者找一个专业的操作和维护学生来问,我已经很长时间没有碰过网了。)
假设我将核心代码放在/var/www /中,并将图像放在/var/pic /中。前面的目录rw,r中的所有文件。后者本身就是r
中的所有文件Web服务器只能解析/var/www /中的文件,并且无法在/var/pic /中执行。这不会让人们将特洛伊木马放入/var/pic /。
由于每个网站使用不同的语言,因此无法进行统一描述,仅举几例。如果您的网站使用php语言,嵌入式木马基本上是用php语言编写的命令。
您可以单独尝试这两个命令,因为php木马经常使用eval和create_function来做坏事(比如/var/www /学生在路径中不存在,想想10分钟)。
Grep'eval('/var/www/* -r
Grep'create_function('/var/www/* -r
请注意,它不是没有使用777权限,它是万无一失的,网络的漏洞很多而且完美无缺,这篇文章只是个玩笑。