本文主要是介绍ubuntu 新建php文件夹权限设置密码,编辑/etc/passwd文件进行权限升级的技巧,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.默认方法添加用户
让我们首先通过cat命令打开/etc/passwd文件,以查看系统中当前可用的用户
从上面给出的截图中,您可以看到“raj”是最后一个使用uid 1000的用户。这里gid 1000表示它是非系统用户。
当我们使用adduser命令添加任何用户时,让我们看看/passwd文件中实际发生了什么。因此,在这里您可以清楚地看到下面给出的信息以及截图。
adduser user1
Username: user1
GID: 1002
UID: 1001
Enter password: 任意密码
Home Directory: /home/user1
Gecos Filed:full Name(全名), Room Number(门牌号), Work phone(工作电话), Home Phone(家庭电话), Other
当您打开/passwd文件时,您会注意到上述所有信息都存储在/etc/passwd文件中
2./etc/passwd文件中手动编辑用户
一般来说,普通用户对passwd文件具有只读权限,但有时用户也可能具有读/写权限,在这种情况下,我们可以借助上述理论将自己的用户添加到/etc/passwd文件中。
user2:*:1002:1003:,,,:/home/user2:/bin/bash
*(星号)符号表示对于user2空口令。
因为我们已经为user2分配了GID1003 ,所以我们也需要在/etc/group文件中对其进行处理
请遵循以下格式:
语法:username:x:gid
因为我们没有密码,所以在x处使用*符号
user2:*:1003:
现在,使用passwd命令为user2设置密码并输入密码。
passwd user2
由于我们在不使用adduser命令的情况下手动创建了一个新用户user2,因此在/etc/shadow文件中找不到任何有关信息。但是它在/etc/passwd文件中,此处*符号已被加密密码值替换。通过这种方式,我们可以创建自己的用户以进行权限提升。
3.OpenSSL
有时无法执行passwd命令来设置用户的密码;在这种情况下,我们可以使用OpenSSL命令,它将使用salt生成加密密码。
OpenSSL passwd将使用salt字符串和基于MD5的BSD密码算法1计算指定密码的哈希值
语法:openssl passwd-1-salt[salt value]password
openssl passwd -1 -salt user3 pass123
我们将获得加密的密码,然后在终端中输入vipw命令打开/passwd文件,并手动添加用户名。按照添加新用户user3的手动步骤,在*或X处粘贴加密值以获取密码。
在下图中,您可以看到,我已经分配了uid:0和gid:0以及主目录/root/root,因此我们为用户user3赋予了root权限。
现在切换用户并通过user3访问终端并确认root访问权限。
suuser3
whoami
id
YESSSSSS表示以root权限访问
注意:您还可以修改其他用户的密码,方法是将:x:替换为您自己加密的密码,然后使用您的密码登录该用户帐户
4.mkpasswd
mkpasswd类似于openssl passwd,它将生成指定密码字符串的哈希值。
语法:mkpasswd -m [hash type] {password}
mkpasswd -m SHA-512 pass
它将为您的密码字符串生成哈希值,重复上述步骤或更改其他现有用户的密码。
如果您将比较user1的信息,那么您还可以注意到不同。我们已经替换了: X: 来自我们的哈希值。
现在切换用户并通过user1访问终端并确认root访问权限
su user1
whoami
id
很好,成功以root权限访问
5.Python
使用python,我们可以导入crypt库,并将salt添加到我们的密码中,这将创建包含salt值的加密密码。
python -c 'import crypt; print crypt.crypt("pass", "$6$salt")'
它将生成密码字符串的哈希值,重复上述步骤或更改其他现有用户的密码。如果您将比较user2的信息,那么您还可以注意到不同。我们已经从新的哈希值替换了旧的哈希值。
现在切换用户并通过user2访问终端并确认root访问权限。
su user2
whoami
id
pwd
sudo-l
它也能进行提权,以前它是/home/user2目录的成员,但是在成为/root目录的成员之后,您可以注意到它拥有root用户的所有特权
6.Perl
类似地,我们可以使用Perl和crypt来使用salt值为我们的密码生成哈希值。
perl -le 'print crypt("pass123", "abc")'
您将获得加密的密码,然后在终端中键入vipw命令并手动添加用户名,再次打开/passwd文件。按照添加新用户user4的手动步骤,将加密值粘贴到*或X的位置以获取密码。
在下图中,您可以看到,我分配了uid:0和gid:0以及home directory/root/root,因此我们为user4赋予了root权限
现在切换用户并通过user4访问终端并确认root访问权限。
su user4
whoami
id
很好,这种方法也能获取root权限。
7.PHP
同样,我们可以使用PHP和crypt来使用salt值为我们的密码生成哈希值。
php-r"print(crypt('aarti','123') . "
");"
您将获得加密的密码,然后在终端中键入vipw命令打开/passwd文件,并手动添加用户名。按照添加新用户user5的手动步骤,并将加密值粘贴到密码字段中。
在下图中,您可以看到,我分配了uid:0和gid:0以及home directory/root/root,因此我们为user5授予了root权限
现在切换用户并通过user5访问终端并确认root访问权限。
su user5
whoami
id
因此,有很多方法可以为您自己的用户添加root访问权限,这对于在任何主机中获得root权限非常有帮助。
这篇关于ubuntu 新建php文件夹权限设置密码,编辑/etc/passwd文件进行权限升级的技巧的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!