内网渗透—SMB隧道正反向连接防火墙规则绕过CS上线

2024-05-26 17:44

本文主要是介绍内网渗透—SMB隧道正反向连接防火墙规则绕过CS上线,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、前言

这篇文章主要是说一下这个用于横向移动的SMB隧道,已经如何使用smb隧道去进行横向移动。

2、实验环境

实验环境和上一篇的差不多,主要是加了个防火墙。

windows server2012
192.168.145.131(外网)
192.168.22.134(内网)win10
192.168.22.122
192.168.33.167windows server2016(做了入站规则限制,只允许访问web服务)
192.168.33.132
192.168.44.241windows server2008(入站规则限制,只允许访问打印机服务)
192.168.44.143

3、cs上线

3.1、windows server2012上线

这个就跳过不说了。

3.2、Windows10上线

这个上篇说过了,配置一个正向连接的监听器。

再用这个监听器生成一个木马,放到win10上面去运行,最后用windows server2012去连接他即可。

connect 192.168.22.122 2222

3.3、windows server2016上线

这台主机由于做了入站规则的限制,所以正向连接肯定不行的。既然正向连接不行,那么我们就使用反向连接嘛。但是,这台主机是不出网的,也就是说反向连接它找不到我们的攻击机。那咋办捏,上面我们不是控制了win10嘛,我们可以让它反向连接到win10,然后让win10转发流量到我们的攻击机上。

右键win10会话->点击代理转发->选择转发上线,这里Listen Host填我们win10 33网段的地址,会话选win10的,然后生成监听器。

用这个监听器生成木马,放到windows server2016上面去运行,即可上线。

看一下导图,server2012反向连接我们的攻击机,正向连接win10,然后server2016反向连接win10。

3.4、windos server2008上线

对于server2008也是有入站规则限制了,只允许访问打印机服务。既然开启了打印机服务,那么445端口就是开启的,我们可以用smb隧道进行上线。那为啥不可以反向连接到server2016呢,因为2016做了入站规则限制嘛。你反向连接会受到2016的入站规则限制,正向连接的话收到2008的入站规则限制,所以只能用隧道技术。

先探测一下445端口,这里我们选44网段,因为server2008在44网段嘛。

然后在目标列表里可以查看开放了445端口的主机,可以看到我们server2008,也就是192.168.44.143开启了445端口。

然后再配置一个smb监听器,这个监听器只是一个单纯的隧道,它没有连接的ip和监听的端口,无法创建木马。

由于无法创建木马,那么只能使用横向移动让它上线了。

这里的账号密码是我们前期信息收集得来的,如果你账号密码不对的话,那么这台主机应该也是上不了线的。我们这里上帝视角就之间填上去了,但在实际场景中势必会更加复杂。监听器选择我们刚刚创建的,会话选择server2016的,点击launch即可。

稍等一下,成功上线。可以看到上线的主机是system权限的,说明是通过server2016利用漏洞去攻击server2008来获得权限的。

最后看下视图

4、总结

以上就是本篇文章的内容。

最后,以上仅为个人的拙见,如何有不对的地方,欢迎各位师傅指正与补充,有兴趣的师傅可以一起交流学习。

这篇关于内网渗透—SMB隧道正反向连接防火墙规则绕过CS上线的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1005149

相关文章

java.sql.SQLTransientConnectionException连接超时异常原因及解决方案

《java.sql.SQLTransientConnectionException连接超时异常原因及解决方案》:本文主要介绍java.sql.SQLTransientConnectionExcep... 目录一、引言二、异常信息分析三、可能的原因3.1 连接池配置不合理3.2 数据库负载过高3.3 连接泄漏

Mac电脑如何通过 IntelliJ IDEA 远程连接 MySQL

《Mac电脑如何通过IntelliJIDEA远程连接MySQL》本文详解Mac通过IntelliJIDEA远程连接MySQL的步骤,本文通过图文并茂的形式给大家介绍的非常详细,感兴趣的朋友跟... 目录MAC电脑通过 IntelliJ IDEA 远程连接 mysql 的详细教程一、前缀条件确认二、打开 ID

Go语言连接MySQL数据库执行基本的增删改查

《Go语言连接MySQL数据库执行基本的增删改查》在后端开发中,MySQL是最常用的关系型数据库之一,本文主要为大家详细介绍了如何使用Go连接MySQL数据库并执行基本的增删改查吧... 目录Go语言连接mysql数据库准备工作安装 MySQL 驱动代码实现运行结果注意事项Go语言执行基本的增删改查准备工作

python连接sqlite3简单用法完整例子

《python连接sqlite3简单用法完整例子》SQLite3是一个内置的Python模块,可以通过Python的标准库轻松地使用,无需进行额外安装和配置,:本文主要介绍python连接sqli... 目录1. 连接到数据库2. 创建游标对象3. 创建表4. 插入数据5. 查询数据6. 更新数据7. 删除

在 Spring Boot 中连接 MySQL 数据库的详细步骤

《在SpringBoot中连接MySQL数据库的详细步骤》本文介绍了SpringBoot连接MySQL数据库的流程,添加依赖、配置连接信息、创建实体类与仓库接口,通过自动配置实现数据库操作,... 目录一、添加依赖二、配置数据库连接三、创建实体类四、创建仓库接口五、创建服务类六、创建控制器七、运行应用程序八

解决hive启动时java.net.ConnectException:拒绝连接的问题

《解决hive启动时java.net.ConnectException:拒绝连接的问题》Hadoop集群连接被拒,需检查集群是否启动、关闭防火墙/SELinux、确认安全模式退出,若问题仍存,查看日志... 目录错误发生原因解决方式1.关闭防火墙2.关闭selinux3.启动集群4.检查集群是否正常启动5.

在Linux系统上连接GitHub的方法步骤(适用2025年)

《在Linux系统上连接GitHub的方法步骤(适用2025年)》在2025年,使用Linux系统连接GitHub的推荐方式是通过SSH(SecureShell)协议进行身份验证,这种方式不仅安全,还... 目录步骤一:检查并安装 Git步骤二:生成 SSH 密钥步骤三:将 SSH 公钥添加到 github

Redis客户端连接机制的实现方案

《Redis客户端连接机制的实现方案》本文主要介绍了Redis客户端连接机制的实现方案,包括事件驱动模型、非阻塞I/O处理、连接池应用及配置优化,具有一定的参考价值,感兴趣的可以了解一下... 目录1. Redis连接模型概述2. 连接建立过程详解2.1 连php接初始化流程2.2 关键配置参数3. 最大连

Debian系和Redhat系防火墙配置方式

《Debian系和Redhat系防火墙配置方式》文章对比了Debian系UFW和Redhat系Firewalld防火墙的安装、启用禁用、端口管理、规则查看及注意事项,强调SSH端口需开放、规则持久化,... 目录Debian系UFW防火墙1. 安装2. 启用与禁用3. 基本命令4. 注意事项5. 示例配置R

C#连接SQL server数据库命令的基本步骤

《C#连接SQLserver数据库命令的基本步骤》文章讲解了连接SQLServer数据库的步骤,包括引入命名空间、构建连接字符串、使用SqlConnection和SqlCommand执行SQL操作,... 目录建议配合使用:如何下载和安装SQL server数据库-CSDN博客1. 引入必要的命名空间2.