内网穿透之frp+proxifier实现socks5反向代理

news/2024/7/6 18:51:25/文章来源:https://www.cnblogs.com/smileleooo/p/18275100

目录
  • 前言
  • 环境搭建
  • frp反向代理
  • proxifier代理工具

前言

内网穿透,代理技术的联系与区别?

我个人感觉在内网渗透的时候它们之间的界限很模糊,其目的都是为了突破内网访问的限制。内网穿透允许将内网的服务暴露给公网,代理服务器充当客户端和目标服务器之间的中介,通过代理服务器来转发网络请求和响应。

环境搭建

hacker可以访问web服务器win7并且已经获取权限拿到shell,但是win7通过双网卡将内网和外网隔离,所以hacker不可以直接访问内网的Winddows 2008主机。

image

目标:

  • 通过vps搭建frps服务端

  • win7作为跳板机运行frpc客户端将内网转发到vps上

  • vps反向代理

  • 通过vps的socks代理访问内网

frp反向代理

疑问:既然拿到了服务器的shell,为什么不拿服务器的shell直接入侵内网?

我的理解,其一是webshell的功能较少,通常是作为一个上传工具的通道。其二是webshell通常是通过采用http协议传输,没有建立稳定的tcp连接,难以应对内网的渗透时复杂的网络要求。

所以就需要使用一下专业的内网渗透工具来保证内网渗透的过程中始终保持一个较好的网络状态。

frp就是这一个非常实用的工具,frp是一个专注于内网穿透的高性能的反向代理应用,支持TCP、UDP、HTTP、HTTPS等多种协议,且支持P2P通信。可以将内网服务以安全、便捷的方式通过具有公网IP节点的中转暴露到公网。

frp项目地址:https://github.com/fatedier/frp

首先分别准备linux平台和windows平台的frp工具(版本需要保持一致):

image

将liunx平台frp上传至liunx vps搭建frps服务端,需要用到的文件有两个frps服务端程序和frps.ini服务端配置文件,需要重点关注frps.ini文件:

image

默认只有服务端绑定的端口,可以添加其他配置项目:

[common]
bind_addr = 0.0.0.0  #服务端的ip地址
bind_port = 7000  #服务端的端口号dashboard_port = 7500  #服务端仪表盘界面的访问端口
dashboard_user = admin  #仪表盘的用户名
dashboard_pwd = 123456  #仪表盘的用户密码

保存配置文件,执行./frps -c ./frps.ini命令启动frp服务端,等待客户端连接:

image

服务搭建成功,接下来将windows平台的frpc通过webshell上传至服务器win7,同样需要配置frpc.ini文件:

image

配置socks5代理:

[common]
server_addr = ip  #服务器的地址
server_port = 7000  #服务器监听的端口号
tls_enable = ture  #启用tls加密连接[plugin socks]
type = tcp  #指定协议类型为tcp
plugin = socks5  #使用的插件为socks5
remote_port = 46075  #指定socks5代理的远程端口
use_encryption = true
use_compression = true

保存配置文件,执行frpc.exe -c frpc.ini命令启动frp客户端,连接服务端:

image

通过仪表盘页面也可以看到socks5代理启动成功:

image

理论上现在就可以访问内网主机了,将浏览器代理改为frp服务器的socks5代理:

image

访问内网主机192.168.52.143的web服务:

image

到这里frp的功能就完成了,只有浏览器可以访问这还不够,下面介绍另一个好用的代理工具。

proxifier代理工具

Proxifier是一个知名的代理工具,它允许用户将网络应用程序通过代理服务器进行连接。它本身只是一个代理管理的工具,可以设置和管理代理连接,但并不提供代理服务器。

下载地址:https://www.proxifier.com/

添加frp代理服务器的ip地址和socks5代理的端口号,协议版本选择为socks5版本:

image

记得测试一下代理服务是否正常:

image

默认有两条代理规则, 第一个时系统程序的规则是Direct直连模式,不通过代理。第二个是默认其他应用程序,都通过代理。

image

试着添加一个新规则,使用本地的fscan扫描内网网段时使用代理(其实默认规则已经包含了):

image

fscan通过socks代理成功扫描到了192.168.52.0/24网段内的主机:

image

我还是试了试代理nmap扫描,结果nmap扫描不到,并且proxifier日志也没有显示nmap使用了代理,nmap的tcp扫描也不没有走代理,感觉有点奇怪。


若有错误,欢迎指正!o( ̄▽ ̄)ブ

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

笔记本电脑的电源计划

电池保留电池电量 保留电池电量使用电池:7%接通电源:7%"保留电池电量"通常是指设备为了延长电池整体寿命而采取的一种策略,比如在电池充电时不会充满至100%,而是维持在一个较低的安全水平(例如93%),以减少电池的高压力状态,这是一种电池维护功能。 关键级 关…

Web应用课 3.1 JavaScript——变量与运算符、输入输出、判断、循环

JS的调用方式与执行顺序 使用方式 HTML页面中的任意位置加上<script type="module"></script>标签即可。 常见使用方式有以下几种:直接在标签内写JS代码。 直接引入文件:<script type="module" src="/static/js/index.js">&…

综述 | 农业大模型:关键技术、应用分析与发展方向

分享一篇农业大模型综述。 官网全文免费阅读知网阅读农业大模型:AI领域的新热点 农业大模型,基于Transformer架构,通过自监督学习方法,在大规模数据上进行训练,展现出了卓越的通用能力和强大的下游任务适应性。这些模型不仅能够处理复杂的关联表示,还在多模态信息处理等方…

[算法学习笔记] 可持久化栈

可持久化栈前置知识 可持久化,即对于每次更改,我们都期望记录它的历史信息。容易进行可持久化的数据结构通常满足 修改数据结构是,数据结构本身的拓扑序没有改变。,即形态没有改变。例如线段树,Trie 树,数组都可以容易地进行可持久化。 可持久化线段树前面已经讲过,见 算…

Windows Terminal 自定义 SSH 连接

我们在远程操作Linux主机时常常会使用各种Remote SSH工具,比如最常用的X Shell、MobaXterm。这些工具功能强大,但很多时候只是需要开个终端,Windows 10开始自带的Windows Terminal就不错。 Windows Terminal 是Window 10 以上系统自带的工具,对选项卡、富文本等功能支持不错…

OOP第四次blog

本次blog是本学期的最后一次blog,接下来分析最后一次小结内容的PTA作业。 本次作业分为以下部分: (1)总结三次题目集的知识点、题量、难度等情况。 (2)设计与分析:重点对题目的提交源码进行分析。 (3)采坑心得:对源码的提交过程中出现的问题及心得进行总结。 (4)改…

南昌航空大学第二次blog

本次blog是本学期的最后一次blog,接下来分析最后一次小结内容的PTA作业。 本次作业分为以下部分: (1)总结三次题目集的知识点、题量、难度等情况。 (2)设计与分析:重点对题目的提交源码进行分析。 (3)采坑心得:对源码的提交过程中出现的问题及心得进行总结。 (4)改…

(交换使逆序对数为1+并查集)CF1768D Lucky Permutation

题意:思路: 先从排好序的数组考虑:1,2,3,4,5,...n,如果交换相邻元素,必然使得逆序对数+1。 考虑先将乱序数组变成顺序数组,最后交换任意一对相邻元素即可。 将所有的i与\(p_{i}\)连边,最后形成若干个环,交换次数其实就是边数,也即点数-环数。并查集维护。 注意特殊情…

[C++ Primer] 开始

C++ Primer 第5版中英版电子版pdf开始 C++ Primer 第5版pdf中英版 夸克云盘 百度云盘 提取码:qrjn该系列记录了我在学习C++过程中经常会遗忘和混淆的相关操作语法,以备将来用到时方便查找。 加油吧!!!🙆

【MX-S1】梦熊周赛 提高组 1(同步赛)

【MX-S1】梦熊周赛 提高组 1(同步赛)\(T1\) luogu P10672 【MX-S1-T1】壁垒 \(100pts\)一个简单的结论:随着前缀长度的增长,出现的数字种类数每次只能增加 \(0\) 或 \(2\)。考虑构造时可以从这里下手。一种构造方案是这样的:优先让数字种类数增加 \(2\),即先将原先没有出…

vue学习笔记-2

1.模板语法 文本插值 <template><p>{{ msg }}</p><br/> <p>{{ num+1 }}</p><br/> <p>{{ ok?"yes":"no" }}</p> </template> <script> export default{data(){return{msg:"模板语…

Nginx 站点配置多目录管理

运维需求 在使用Nginx 对多个站点进行配置和运行维护时,如果将多个站点的配置都放在同一配置文件中,对于server 部分的调整,随着时间的推移,可能对应的配置变更是由不同的人员接手,不方便系统的部署和迁移。解决方案 为了解决这个问题,可以考虑使用include 块。用于指定加…

PNAS | 中国农大汪海团队实现转录调控序列的人工智能设计

近日,中国农业大学农学院汪海团队联合美国康奈尔大学、丹麦奥胡斯大学、北京大学现代农业研究院、坦桑尼亚农业科学院等单位在_PNAS在线发表了题为Modeling 0.6 million genes for the rational design of functional cis-regulatory variants and de novo design of cis-regu…

[C++ Primer] 关联容器

C++关联容器相关操作关联容器标准库提供了8个关联容器。类型map和multimap定义在头文件map中;set和multiset定义在头文件set中;无序容器则定义在头文件unordered_map和unordered_set中。pair标准库类型,定义在头文件utility中。关联容器额外的类型别名:关联容器insert操作:…

Kali 关闭自动锁屏功能

Kali 关闭自动锁屏功能 1、点击 [开始] -> [设置] -> [电源管理器]2、选择 [安全性],将 [自动锁定会话] 选为 [从不],将 [当系统休眠时锁定屏幕] 取消勾选,点击 [关闭]

键盘记录大师:用pynput轻松捕获每一个按键,包括组合键和功能键

哈喽,大家好,我是木头左!揭秘键盘输入的监控神器 - pynput库 在数字时代,键盘是与计算机交流的主要工具。无论是编写代码、撰写文档还是进行日常通讯,键盘的每一次敲击都承载着信息。而在某些场景下,可能需要记录这些信息,比如开发一个学习打字的软件、监控儿童的上网行…

word通用模板说明

个人偷懒,标题、表、图、公式按章节自动编号,字体与间距按照武汉理工大学硕士论文设置,方便平时报告用,模板在个人文件夹中https://files.cnblogs.com/files/blogs/806514/%E9%80%9A%E7%94%A8word%E6%A8%A1%E6%9D%BF.zip?t=1719659030&download=true 标题自动编号 点击…

HydroOJ 从入门到入土(20)已通过的题目显示 AC 代码

定期的代码汇总分析和整理是必要的。个人面板里,通过的题目,直接链接到对应的AC记录。用处就是可以按人汇总,便于学生自己整理,以及老师分析学生。 权限:看不了别人代码的人,依然看不了别人代码。 效果修改后端 进入 user.ts 文件 435 行左右: cd /usr/local/share/.con…