vulnhub Connect-the-dots
0x01 端口扫描
有效服务:ftp、nfs、web、ssh(7822),还有一堆rpc的子服务
漏洞扫描显示有sql注入、目录泄露
0x02 ftp
匿名登录失败,大概率需要发现凭证后再利用,或者公开漏洞,先记下版本号
vsftpd 2.0.8
0x03 nfs挂载
可挂载路径在morris的家目录下,大概率可以利用
1 |
|
没有有用信息,转向web渗透
0x04 web渗透
提示枚举,多跑几个目录爆破
大概率是兔子洞,先不检查视频了
扫到了之前扫出注入的页面
好像是一个网站后台的登录页面,好像就是个静态页面
注意到bootsrap.min.cs文件
是jsfuck,合并几个变量后解码:
拿到凭据,TryToGuessThisNorris@2k19,ssh登录到7822端口
看来拿到的是密码,用户应该就是之前nfs发现的用户morris
注意到居然是密码中是norris,结合主页信息,他们一个叫N一个叫M,对上了,看来用户名应该是norris
拿到了立足点
0x05 提权
横向
在norris的家目录找到了四个备份文件,scp到本地
1 |
|
查看:
摩斯
说是要寻找一个公开的秘密文件,后续脚本枚举时注意
和之前看到的一样,没什么用,看一下web路径就可以跑lin了
直接找到了secretfile
目录爆破字典还是不够强大
swp文件为临时交换文件,应该是他在写secretfile的时候没写完,刚写到密码如下时异常退出了,这也对上了为什么morris一直在说快没电了
blehguessme090
,这应该就是morris的密码
纵向
capbility越权读取
跑linpeas:
tar居然给了read_search的能力,直接打包shadow文件,其实应该可以直接打包root flag偷家。
cap_dac_read_search:这是一种扩展文件权限标志,表示该文件具有读取和搜索访问权限,通常用于文件系统的访问。具体来说,这个标志允许 tar 命令读取文件和搜索目录,而==不需要使用者拥有完全的文件访问权限==。
1 |
|
morris无法执行tar命令,换norris:
下载passwd合并破解:
1 |
|
感觉没希望,去看了wp
polkit-agent-helper提权
配合suid
利用条件:root的s位,有执行权限
原理:polkit是linux系统中针对文件权限管理的一套机制,而helper相当于是充当一个介于操作者与被操作文件的一个中介,会通过这个helper去调用执行文件。因此如果我们能够借助helper的高权限,以root的身份调用bash,即可实现提权
1 |
|
pwnkit (CVE-2021-4034)
利用条件:对环境无特殊要求,各主流linux都可能存在,典型是pkexec的0.105版本。==即该漏洞可以通杀很多低版本机器==
另外:在linpeas枚举时也反馈出大概率有这个漏洞
由于该靶机无gcc,有python,故选取python的exp
0x06 总结
- 端口扫描:ftp、nfs、web、ssh(7822),nikto枚举到了隐藏目录
- ftp:匿名登录失败
- nfs挂载:挂载成功到morris的家目录,但无有效信息
- web渗透:目录爆破出隐藏目录mysite,在其中的cs文件发现jsfuck码,解码拿到凭据,根据已有信息得出两个用户名norris和morris,登录到了norris
- 横向提权:根据线索发现隐藏swp文件,恢复后拿到morris的密码,成功登录
- 纵向提权:考虑到norris的权限组更好,换回norris,经过枚举发现tar命令具有危险的文件能力,越权打包root目录成功偷家;枚举suid,发现polkit-agent-helper具有root的s位,以此提权;枚举到可能存在pwnkit漏洞,利用py exp成功提权