思路:
发现主机后进行目录扫描,发现登录口标注了CMS的版本,查看该类型CMS有没有漏洞,针对漏洞去github搜索脚本,拿到脚本后运行得到靶机的初级Shell,根据靶机内的文件内容指示使用ht编辑器,利用编辑器去修改用户的权限然后提权,拿到root权限结束
基操代码不再粘贴
首先进行目标靶机地址的发现,靶机的IP地址
接下来去收集靶机靶机开放了哪些端口,端口对应的协议以及服务
可以看到开的端口
服务,开启80端口和ssh远程服务22端口
进行目录扫描:
访问扫描的所有结果,发现都需要输入密码,可以尝试弱口令但是都没有结果
尝试首页的Login
发现LotusCMS3.0存在可利用漏洞,利用searchsploit LotusCMS 去查看这个cms有没有什么漏洞,漏洞是存在的,查看16982.txt但是都是相关于xss注入的漏洞,低危中危的,
尝试github搜索该漏洞,发现相关的sh脚本文件,直接用,点击raw,复制文件的内容,将其创建在kali本机上并赋予执行权限
chmod -x 文件名
根据文件的提示使用.sh文件
同时打开监听
23.cnblogs.com/blog/3148246/202304/3148246-20230402173352799-1588443633.png)
这里需要注意,本次返回的shell并没有提示,但是已经进入
开启一个新的bash,当当前的用户没有很好的交互的时候使用python命令打开一个新的交互
python -c "import pty;pty.spawn('/bin/bash')"
当无法运行clear的时候说明当前情况下没有相对的环境需要手动进行配置执行一下命令,没有环境配置其他命令相同可能无法完成
export TERM=xterm-color
查看当前用户身份,当前用户可以执行哪些文件,发现一个与web页面中频繁出现的单词目录,切换到该目录下
查看当前目录都有哪些文件,当前用户都有有什么操作重点是看这些带有管理员名的和配置的,还有和web页反复出现的
gadmin是个目录,里面的users.php没办法分析,看其他的
gallery.php没有,看gconfig.php
发现账户名密码,尝试ssh,但是失败,尝试以当前身份执行进入数据库
发现两张表有用
admin可以进行该界面的登录
另外的一个表两个密码应该是加密了,先判断加密的类型,然后解密,判断后是md5类型
让约翰选手来解密,因为约翰解密只会出现一次显示,同样的再去解就出不来了,命令就在这,类型指定的是md5,后面的文件名就是打开编辑器把那两条加密的指令放进去,之前的文章有说过john破解压缩包密码,可以看看有兴趣的
会破解出两个密码,然后简单的碰撞尝试ssh登录,成功登录后可以看到当前用户的身份:
看当前用户都有哪些可以执行的文件,那就读这个文件
看到一个sudo ht
查看用户有哪些权限
结合上面的提示,执行sudo ht,这是一个ht编辑器,从未见过也没用过,自己摸索一下哈(实在不会的看最后写了),在编辑器里面可以用去写一些权限,新增一个bash进去再去执行这个bash就可以达到提权了
找到sudoers配置文件
给当前用户新增加可执行去权限
保存文件并退出
执行提权命令
提权成功,切换到root账户下
至此,成功拿下靶机!
后续:
ht编辑器使用
F2打开文件目录切换
Esc 退出其他键打开的弹窗
Esc+f 对文件执行操作,保存或退出之类的
其他的功能F1—F12都按一遍就知道了
学习的知识点:
1.使用python实现更好的交互
2.配置环境可执行系统命令
3.利用ht编辑器进行提权
4.CMS漏洞的发现与利用,使用github去搜一些已经存在的脚本文件