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

 

posted @ 2023-03-10 11:41  wgd_elwood  阅读(43)  评论(0)    收藏  举报