Facts
UserFlag
考点:利用CVE-2024-46987获取ssh私钥登录
先用nmap扫一下
1 | |

80端口有一个没有重定向的网址,在/etc/hosts中添加
22端口存在SSH服务
1 | |
然后扫目录没有扫到什么,尝试一下/admin路径,发现了登录界面,注册登录进去(但是dirsearch扫不出来,凭感觉试的/admin)

看到了Camaleon CMS就去搜他存在的漏洞和POC,先是CVE-2025-2304
1 | |

尝试了几次,发现每次运行成功后,再想登进去,之前的账户密码就不行了,说明可能不是这个漏洞或者不是用这个POC打
又看到了另一种提权的方法,注册登录后,在修改密码时拦截抓包
POC
1 | |
但这里有一个要注意的就是,抓包之后得到的请求包不要发包,加上&password%5Brole%5D=admin之后再发包,不然就会像下面p1这样出现302重定向

这个才是正确的响应

ok成功了,现在是admin权限了

发现有很多页面,我也不知道怎么快速信息收集,就用了最朴实的方法,就是每一个都看一遍,就看到有一些是可以发布一些东西的,还有AWS的key感觉有用

好像对于读userflag也没什么用,又在网上找到了另一个CVE
CVE-2024-46987:https://github.com/Goultarde/CVE-2024-46987/blob/main
payload
1 | |
可以实现任意文件的读取,这里看到了有两个用户trivia和william

尝试利用私钥登录用户,文章:https://blog.csdn.net/jueshijindai/article/details/156168252
在网上搜一下私钥存在的位置和文件名,一般是在用户目录的.ssh文件中,文件名一般为


1 | |
最终可以执行命令,获取trivia用户的私钥
1 | |

保存到本地文件中,命名为id_ed25519

设置权限
1 | |
利用ssh登录
1 | |
但还是要输入密码

进行私钥密码爆破
使用ssh2john将私钥转换为可识别格式
1 | |
使用字典攻击破解,可以找一下自己的字典位置,需要先解压一下,(这个要爆破很久
1 | |

成功爆出key是dragonballz
然后再去登录
1 | |

ok成功登进去了,在william目录下找到了user.txt文件,拿到userflag

RootFlag
考点:sudo权限滥用,利用facter进行提权
然后就是要进行提权,发现可以用sudo权限滥用进行提权
1 | |

可以无密码以root权限使用/usr/bin/facter命令
1 | |

成功提权,就可以读取Rootflag了
