前言

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

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

环境搭建

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

目标:

  • 通过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工具(版本需要保持一致):

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

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

[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服务端,等待客户端连接:

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

配置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客户端,连接服务端:

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

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

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

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

proxifier代理工具

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

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

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

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

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

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

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

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


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

内网渗透之frp+proxifier实现socks5反向代理的更多相关文章

  1. 3.内网渗透之reGeorg+Proxifier

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAxIAAAE2CAIAAAB6BDOVAAAgAElEQVR4Aey9Z5Aex3X327MRGVzkRH ...

  2. 内网渗透之frp使用

    0x00 前言 nps相比上次已经介绍过了.但是他有一个致命缺点就是在scks5代理下会长连接一直不放开导致结果不准确.所以来讲讲frp的使用.frp虽然需要落地配置文件,但是扫描的结果还是很准确的. ...

  3. Linux内网渗透

    Linux虽然没有域环境,但是当我们拿到一台Linux 系统权限,难道只进行一下提权,捕获一下敏感信息就结束了吗?显然不只是这样的.本片文章将从拿到一个Linux shell开始,介绍Linux内网渗 ...

  4. [原创]K8飞刀20150725 支持SOCKS5代理(内网渗透)

    工具: K8飞刀编译: 自己查壳组织: K8搞基大队[K8team]作者: K8拉登哥哥博客: http://qqhack8.blog.163.com发布: 2015/7/26 3:41:11 简介: ...

  5. cmseasy&内网渗透 Writeup

    某CTF内网渗透 题目:www.whalwl.site:8021 目录 cmseasy 内网横向渗透 cmseasy 简单看一下网站架构 Apache/2.4.7 (Ubuntu) PHP/5.5.9 ...

  6. 内网渗透测试思路-FREEBUF

    (在拿到webshell的时候,想办法获取系统信息拿到系统权限) 一.通过常规web渗透,已经拿到webshell.那么接下来作重要的就是探测系统信息,提权,针对windows想办法开启远程桌面连接, ...

  7. 内网渗透 关于GPO

    网上有很多讲内网渗透的文章,但看来看去还是一老外的博客给力,博客地址:www.harmj0y.net/blog,看完就明白这里面的很多思路都非常好. 做内网时,有时会碰到目标的机器开防火墙,所有端口基 ...

  8. [原创]K8 Cscan 3.6大型内网渗透自定义扫描器

    前言:无论内网还是外网渗透信息收集都是非常关键,信息收集越多越准确渗透的成功率就越高但成功率还受到漏洞影响,漏洞受时效性影响,对于大型内网扫描速度直接影响着成功率漏洞时效性1-2天,扫描内网或外网需1 ...

  9. [原创]K8 cping 3.0大型内网渗透扫描工具

    [原创]K8 Cscan 大型内网渗透自定义扫描器 https://www.cnblogs.com/k8gege/p/10519321.html Cscan简介:何为自定义扫描器?其实也是插件化,但C ...

  10. [源码]Python简易http服务器(内网渗透大文件传输含下载命令)

    Python简易http服务器源码 import SimpleHTTPServerimport SocketServerimport sysPORT = 80if len(sys.argv) != 2 ...

随机推荐

  1. LaTeX 编译 acmart 文档报错:hyperref must be loaded before hyperxmp.

    在编译一篇从 arXiv 下载的文档时遇到如下错误: Package hyperxmp Error: hyperref must be loaded before hyperxmp. 根据 GitHu ...

  2. SpringMVC:SpringMVC处理Ajax请求

    目录 @RequestBody @RequestBody获取json格式的请求参数 @ResponseBody @ResponseBody响应浏览器json数据 @RestController注解 @ ...

  3. 总结:redis 突然变慢

    用户量暴增,无法下单,凌晨的夜,静悄悄... 经过查找发现Redis. 获取不到连接资源,并且集群中的单台 Redis 连接量很高. 大量的流量没了 Redis 的缓存响应,直接打到了 MySQL,最 ...

  4. git 回退之前某次提交

    git 版本回退,用于误提交或者版本回退 一.回滚到之前的某次版本,且该版本后的提交都不要(用于版本回退) 1).首先查看版本号,用 git log 命令查看要回退的版本对应的commit Id co ...

  5. sql 分组查询并新增序号

    在SQL中,你可以使用ROW_NUMBER()函数来为结果集中的每一行新增一个序号.这个序号是基于某个排序条件的分区排序结果. 以下是一个简单的例子,假设我们有一个名为students的表,它有两列: ...

  6. Go runtime 调度器精讲(四):运行 main goroutine

    原创文章,欢迎转载,转载请注明出处,谢谢. 0. 前言 皇天不负有心人,终于我们到了运行 main goroutine 环节了.让我们走起来,看看一个 goroutine 到底是怎么运行的. 1. 运 ...

  7. JavaScript – Sort

    前言 排序是很常见的需求. 虽然看似简单, 但其实暗藏杀机. 一不小心就会搞出 Bug 哦. 这篇就来聊聊 JS 的排序. 参考 原生JS数组sort()排序方法内部原理探究 值的比较 js中的loc ...

  8. WiFi基础(四):WiFi工作原理及WiFi接入过程

    liwen01 2024.09.16 前言 802.11 无线 WiFi 网有三类帧:数据帧.管理帧.控制帧.与有线网相比,无线 WiFi 网会复杂很多.大部分应用软件开发对 WiFi 的控制帧和管理 ...

  9. 致敬传奇 Kruskal 重构树题硬控我三小时

    NOI2018 归程 存边的数组拿来干两件事,忘了清空了,其实最好开两个的 dfs 没开 vis 导致不知道为什么出现的绕圈 倍增的 fa[i][j] 定义的时候前面是 \(2^{i}\) 写着写着记 ...

  10. Linux Kernel Utilization Clamping简介

    随着linux内核调度技术的不断演进,目前存在多个调度类(stop.deadline.rt.cfs.idle)以满足不同性质和要求的任务(task)的调度需求.对于用户空间来说,完全公平调度器(CFS ...