下你所需,载你所想!
汇集开发技术源码资料

分享一个高性能端口转发源码

:405.032KB :1 :2019-11-16 17:48:02

部分简介

.如果真 (n_ForwardList.现行选中项 ≠ -1)
.如果真 (n_ForwardList.取表项数值 (n_ForwardList.现行选中项) ≠ 0)
返回 ()
.如果真结束
l_LocalPort = 到整数 (n_ForwardList.取标题 (n_ForwardList.现行选中项, 3))
l_TargetAddress = n_ForwardList.取标题 (n_ForwardList.现行选中项, 1)
l_TargetPort = 到整数 (n_ForwardList.取标题 (n_ForwardList.现行选中项, 2))
l_Ret = 启动映射 (“0.0.0.0”, l_LocalPort, l_TargetAddress, l_TargetPort, &客户进入, &客户离开, &服务端数据到达, &客户端数据到达)
.如果真 (l_Ret = 0)
信息框 (“转发启动失败”, #警告图标, , )
返回 ()
.如果真结束
n_ForwardList.置图片 (n_ForwardList.现行选中项, 0, 1)
n_ForwardList.置表项数值 (n_ForwardList.现行选中项, l_Ret)

端口转发
顾名思义,就是将端口进行转发,具体哪个端口转发到哪个端口要以应用场景为准,比如我们拿到一台内外服务器 A 的权限,通过扫描发现了同内网的另一台服务器 B 且开了 80 端口,我们该如何使用浏览器访问它呢?我们画一个图如下:

从上图中可以看到,我们已经与 A 建立了通道,我们可以在 A 上上传任意文件,执行任意的系统命令,我们如何能够访问 B 的 80 端口?假设 A 是在公网上,有公网 IP,我们可以访问它的任意端口。

1、直接在 A 上执行 curl 命令访问 B 的 80 端口(这种方式不方便我们测试 B 的 80 端口的漏洞,不方便利用)

2、在 A 上开启一个 socks 5 代理,我们使用浏览器设置好代理,将我们的浏览器代理到目标内网,然后访问 B 的 80 端口。

3、在 A 上执行端口转发,将 B 的 80 端口转发到 A 的 8080,然后我们直接用浏览器访问 A 的 8080 端口即可,这个原理就是端口转发

总结一下,端口转发就是将一个端口,这个端口可以本机的端口也可以是本机可以访问到的任意主机的端口都可以转发到任意一台可以访问到的 IP 上,通常这个 IP 是公网 IP,方便我们使用。

分享一个高性能端口转发源码

热门推荐

相关文章