小H靶场笔记:DC-8
DC-8
January 9, 2024 3:26 PM
Tags:Drupal;exim提权
Owner:只惠摸鱼
信息收集
-
apr-scan 和 nmap 扫描C端存活主机,探测靶机ip:192.168.199.138,开放了80和22端口。
-
扫描开放端口的服务、版本、系统、存在的基础漏洞。
-
sudo nmap -sS -sV -O -sC -p 22,80 192.168.199.138 --script=vuln
-
没有扫出什么漏洞,有一些网站信息可以查看一下。还有就是操作系统信息。Drupal应该是7.
-
-
访问一下80端口,也没有没有太多有用的信息。
-
访问一下刚才扫基础漏洞扫出的目录,发现在CHANGELOG.txt有一个更新日志,CMS应该是7.67版本以上的Drupal
-
在/user/目录下有一个隐藏的用户登陆页面,试了一下弱密码和万能密码,都没用。
-
指纹识别也没有太多内容,扫一下目录吧。
-
目录扫描,也没有发现其他太有用的信息。
-
回到主页在进行寻找有用信息时,发现点击左侧的Details中的超链接时,跳转内嵌页面会有传参nid,随便输入一点指令看看什么结果。
-
发现它是通过查询mysql数据库执行的,且数据库语句也通过报错信息给出,发现是整数型传参,尝试SQL注入,发现可以。
漏洞利用
-
测试查询列数,发现只有一项,且回显的结果在导航栏下方的提示框内。
-
进行联合查询注入,直接查数据库,爆出数据库为d7db
- unid=-1 union select database()%23
-
再查询当前数据库中有哪些表
-
nid=-1 union select group_concat(column_name) from information_schema.columns where table_name=‘shortcut_set_users’%23
-
发现有可能有用的表有:shortcut_set_users;users_roles;users
-
-
逐个表进行联合查询其中的字段名,看哪些表中可能有一些有用的信息。
-
最终只发现users表中有比较有用的信息,有用户名和密码,查一下其中的数据
-
得到两个用户名和密码,但密码经过加密,分别是:
- admin S S SD2tRcYRyqVFNSc0NvYUrYeQbLQg5koMKtihYTIDC9QQqJi3ICg5z
- john S S SDqupvJbxVmqjr6cYePnx2A891ln7lsuku/3if/oRVZJaz5mKC2vF
-
需要通过john进行解密操作,将用户名和密码写入txt文档,尝试破解。
-
最后只爆出以恶个john的密码,尝试登陆一下之前的user页面。(成功进入)*
-
找一下能够上传马的地方,在edit页面,上传图片马不成功。
-
发现了一个可以直接写代码的页面
-
切换为php格式并写入一句话木马(这里写一句话木马的时候,一定不要删掉
不然会无回显,连不上,不要问我为什么知道-_-) -
根据提示,需要选择Confirmation page
-
保存后,来到Contact Us页面发送一个contact邮件,测试一句话木马是否成功。发现可以。
-
蚁剑连接,发现连不上。
-
那直接反弹shell吧
-
页面POST:
-
kali监听
-
-
成功拿到shell,转换为交互性shell
提权
-
查看其他用户,只有一个用户,且发现没什么信息提供。
-
查看系统版本
-
查看SUID文件,发现有一个exim4没有见过,搜一下。
-
Exim4 Exim4是在剑桥大学开发的另一种消息传输代理(MTA),用于在连接到Internet的Unix系统上使用。尽管exim的配置与sendmail的配置完全不同,但是可以安装Exim代替sendmail。
-
搜一下有没有相关漏洞,发现可以进行提权
-
查看exim4当前版本号
-
/usr/sbin/exim4 —version
-
或 dpkg -l | grep exim 查看包安装情况
-
-
发现是4.89版本的exim4
-
-
用searchsploit搜一下有没有exim4 4.89版本的提权漏洞
- searchsploit exim 4.8
-
下载到本地
-
searchsploit -m linux/local/46996.sh
-
-
vi打开脚本set ff=unix : 告诉 vi 编辑器,使用unix换行符。防止Linux无法识别格式,运行脚本报错。
-
查看tmp文件权限,准备把漏洞脚本传输到tmp文件夹内去执行。
-
两种方法发送漏洞脚本
-
第一种 使用nc命令
-
本地kali发送漏洞脚本
-
受害者接收漏洞脚本
-
开启监听另一个端口,通过反弹shell,新建一个终端,查看文件是否传输成功
-
-
第二种 使用python开启http-server服务,再在靶机上使用wget下载文件
-
kali机用python开启http-server服务
- python -m http.server 8899
-
靶机使用wget下载靶机文件
-
-
-
修改漏洞脚本权限
-
运行漏洞脚本文件./4699.sh
-
在kali中vi漏洞脚本文件时,有看到漏洞脚本的使用提示
-
共有两个用法
-
先试试第一个./46996.sh -m setuid。失败了
-
再试试第二个./46996.sh -m netcat
- 发现可以,提权成功
-
-
转换为交互性shell,在/root目录下拿到flag!
exim提权
- Exim4是在剑桥大学开发的另一种消息传输代理(MTA),用于在连接到Internet的Unix系统上使用。尽管exim的配置与sendmail的配置完全不同,但是可以安装Exim代替sendmail。
- 漏洞利用
- 先查看版本号
- /usr/sbin/exim4 —version
- dpkg -l | grep exim (查看包安装情况)
- 使用searchsploit查询exim对应版本的提权漏洞,download到本地,在上传到目标机器文件夹按漏洞说明利用漏洞。
- 先查看版本号
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!