Liunx基础知识 --6 权限管理
Linux 有系统来管理谁可以读取、写入和执行任何文件。这样,文件的所有者可以决定谁可以读取、写入或执行他们的文件。这些文件和目录权限也可用于管理组权限。
第 1 步:检查权限
当我们想要查找文件的权限时,我们可以简单地使用带有-l或 long 开关的ls命令。让我们在/usr/share/hashcat 目录中使用该命令,看看它告诉我们关于那里的文件的内容。
Hashcat 是我最喜欢的密码破解工具之一。你可以在这里阅读它。
首先,让我们导航到它的目录
kali > cd /usr/share/hashcat
然后,在其目录中做一个长列表。

如果我们查看每一行,我们可以看到关于该目录中条目的相当多的信息,分别包括;
(1) 无论是文件还是目录,
(2) 文件的权限,
(3) 链接数,
(4) 文件的所有者,
(5) 文件的组所有者,
(6) 文件的大小,
(7) 创建或修改时间,最后,
(8)文件名。
识别文件或目录
该行的第一个字符告诉我们它是文件还是目录。如果该行以“d”开头,则它是一个目录。如果它以“-”开头,则它是一个文件。

识别权限
下一部分字符定义文件的权限。一共有三组rwx,分别代表read、write和execute。这决定了是否有读取文件、写入文件或执行文件的权限。每组rwx分别代表所有者、组的权限,然后是所有其他人的权限。
因此,让我们看一下 hashcat 规则目录(hashcat 规则以更适合目标密码的方式转换您的单词列表,包括 combinator.rule,它会改变大小写,例如 occupytheweb --> OccupyTheWeb)。
让我们导航到规则目录,然后做一个长列表。

我们可以看到每个都以:
-rw-r--r--
这意味着它是一个文件 (-),所有者拥有读取 (r) 和写入 (w) 权限,但没有执行权限 (-)。注意,这里的破折号“-”代表没有或没有权限。

下一组权限代表组的权限。在这里我们可以看到该组具有读权限(r),但没有写权限(-)或执行权限(-)。
最后,最后一组权限适用于所有其他人。我们可以看到其他人对这些文件只有读(r)权限
第 2 步:更改权限
让我们想象一下我们希望该组能够写入 hashcat combinator.rule文件的情况。组中有人对此规则进行了改进,并希望将更改编写出来并与组中的每个人共享。
Linux 有一个名为chmod(更改模式)的命令,只要我们是 root 或文件的所有者,它就允许我们更改文件的权限。这些权限由它们在操作系统中的二进制等价物表示。
数字权限
请记住,在底层操作系统中,一切都只是零和一,这些权限由系统中的开和关开关表示。因此,如果我们可以将权限想象成三个开/关开关,并且这些开关采用以二为底的数字系统,最右边的开关打开时代表 1,中间的开关打开时代表 2,最后,最右边的开关左开关打开时代表 4。
所以,三个权限都开启时是这样的:
rwx
4 2 1 = 7

如果你把这三个加起来,你会得到七个,对吧?在 Linux 中,当所有的权限开关都打开时,我们可以用等价于 7 的十进制数字来表示。因此,如果我们要表示所有者(7)和组(7)以及所有用户(7)拥有所有permissions,我们可以将其表示为:777
更改 combinator.rule 的实际权限
现在,如果我们想给组write (2) 权限,我们可以使用chmod命令来完成。我们需要将写入 (2) 权限添加到 combinator.rule 文件。我们通过以下方式做到这一点:
kali > chmod 6 6 4 combinator.rule
这个语句说给所有者读写权限(4+2=6),组相同(4+2=6)。并给予其他所有人简单的读取权限 (4+0+0=4)。

第 3 步:使用 UGO 更改权限
虽然数字方法可能是 Linux 中更改权限最常用的方法(每个有自尊心的 Linux 大师都可以使用它),但有些人发现还有另一种方法更容易使用。它通常被称为UGO语法。UGO代表U=用户或所有者,G=组和O=其他。UGO拥有三个运营商:
-
+用于添加权限
-
-用于减去权限
-
=设置权限
所以,如果我想减去 combinator.rule 所属组的写权限,我可以这样写:
kali > chmod g-w combinator.rule

第 4 步:授予我们自己对新黑客工具的执行权限
很多时候——作为一名黑客——我们需要下载或创建新的黑客工具。在我们下载、解压、解压缩、制作和安装它们之后,我们经常需要给自己权限来执行它们。这不会自动发生。如果我们不这样做,我们通常会收到一条消息,表明我们没有足够的权限来执行。

我们可以在上面的截图中看到,我们的newhackertool没有任何人的执行权限。当我们在我们的 newhackertool 上做一个长列表时,我们可以看到所有者的权限是 onlt 读写 (6)。

我们可以通过以下方式给自己(root 用户)在 newhackertool 上执行的权限:
kali > chmod 766 newhackertool

正如您现在所知,这会给我们——所有者——包括执行在内的所有权限,而组和其他所有人只是读写权限 (4+2=6)。您可以在上面的屏幕截图中看到,运行 chmod 命令后,这正是我们得到的结果!
-rwx rw- rw-
参考链接:https://www.hackers-arise.com/post/2016/11/04/Linux-for-Hackers-Part-7-Managing-File-Permissions
浙公网安备 33010602011771号