Post

Connect-the-dots Walkthrough

jsfuck敏感信息泄露打点,polkit提权

Recon

这台机器开放了ftp、web、nfs和ssh

挂载nfs目录,发现存在Templates目录,目录下没有任何内容,home目录文件没有权限

但这个路径给了一个合法用户名morris

feroxbuster目录扫描有一些攻击向量

mysite/register.html存在注册页面

shell as norris by jsfuck

web站点首页有<href index="index.htm" 指向http://192.168.1.64/index.htm

web站点一般使用index.html作为首页,而.htm也是前端可解析文件,所以点击会感觉没反应

实际上网页源代码已经发生变化,在注释中泄露了用户名norris

http://192.168.1.64/mysite/bootstrap.min.cs泄露了jsfuck,解密需要删除所有非jsfuck字符

解密后得到You're smart enough to understand me. Here's your secret, TryToGuessThisNorris@2k19

尝试ssh登录

get root.txt by tar

使用linpeas收集信息,发现capabilities信息,其中tar命令引人关注

其中/usr/bin/tar具有cap_dac_read_search权限向量,这意味着tar命令被赋予了绕过常规文件权限机制读取任意文件和遍历任意目录的权限,而ep是权限有效性的标志,分别代表effective和permitted,即生效和许可

shell as root by polkit

仅仅通过capabilities读取到/root.txt还不够,获得root身份权限的目标还没有达成

通过寻找suid命令文件,发现/usr/lib/policykit-1/polkit-agent-helper-1存在suid

polkit-agent-helper-1并不是一个被用于直接执行以实现某种功能的命令,而是用于辅助policy kit执行的一个工具

policy kit是一个应用程序级的权限控制框架,简单来说,当一个用户执行需要管理员权限的某种操作时(如挂载设别,安装软件等),polkit就会介入

polkit -agent-helper-1就是polkit调用过程中用于安全的处理密码输入及身份认证的组件

通过systemd-run -t /bin/sh调用polkit权限生成一个shell实现提权

This post is licensed under CC BY 4.0 by the author.