本文例子是在
Pentesters Academy
使用。
在上一篇,/etc/passwd
和 /etc/shadow
文件是基于密码的权限提升的关键点。
在这篇文章中,将讨论目标机器中遗留的一些错误配置,以及如何利用它们来接管系统。
因此,首先了解这些错误配置实际上是什么:
/etc/shadow
文件:可以读取用户的哈希并使用 john the ripper
或 hashcat
执行暴力攻击/etc/shadow
文件:可以使用OpenSSL
工具创建密码并使用 vim
、vi
、nano
或任何甚至 sed
工具编辑文件/etc/passwd
文件:与第 2 点相同,但更改 /etc/passwd
文件的内容在训练营里,拥有的账号是低权限的student
。
当搜索flag
文件时,不会得到任何有用信息。
这意味着需要升级到更高的权限,然后再次搜索该文件。
让我们在/etc/passwd
文件中枚举用户,因为大多数时候它是全局可写的 -rw-r--r--
。
使用find
命令,可以检查具有特定权限的文件。可以在整个系统中搜索,但那样会很慢。由于身份验证配置存储在/etc
目录中,只需要搜索该目录中的错误配置
find /etc -type f -perm -0004 -exec ls -l {} \; 2> /dev/null
这个命令将在 /etc
目录中搜索具有全局可读权限 (-perm -0004
) 的文件 (-type f
),并对每个条目执行 ls -l
(-exec ls -l {} \;
)。
这是上述命令的部分输出
-rw-r--r-- 1 root root 0 Aug 21 2018 /etc/subgid
-rwxr-xr-x 1 root root 3809 Feb 14 2018 /etc/init.d/hwclock.sh
-rwxr-xr-x 1 root root 1191 Jan 17 2018 /etc/init.d/procps
-rw-rw-rw- 1 root shadow 523 Sep 23 2018 /etc/shadow
-rw-r--r-- 1 root root 2584 Feb 1 2018 /etc/gai.conf
-rw-r--r-- 1 root root 461 Sep 23 2018 /etc/group
-rwxr-xr-x 1 root root 1016 Apr 5 2018 /etc/security/namespace.init
/etc/shadow
文件不仅是全局可读的,甚至可以写入它。因此,创建一个密码并将其分配给 root
用户
现在可以通过 su
登录,方法是执行 su - root
并使用密码password
获得了flag
文件。
还是用低权限用户student
根据上面经验,来枚举一下用户和权限的错误配置
检查时,发现 /etc/passwd
文件是全局可写的。在进行登录时,/etc/passwd
的优先级高于/etc/shadow
。所以如果在那个文件中设置root
用户的密码,su
将不会检查shadow
文件
现在使用 su
使用密码password
通过root
用户登录
请点一下右下角的“在看”,谢谢!!
暗号:60d62