内网渗透技术学习 | 代理与转发详解

2024-12-04 3 0

一、应用场景

为了从外网实现对内网的访问,进入内网后,为了突破网络边界,需要搭建多层代理,实现从dmz想生产网、核心网、办公网的突破多层网络隔离的情况,实现对更深成次的网络访问,结合端口转发,进行网络跨越网络中只允许指定端口出网,为了实现边界突破需要进行端口复用,实现对防火墙的跨越

1、正向代理 (proxy)

位于客户端和服务器之间的一个服务器,为了从原始服务器中获取内容,客户端向代理服务器发送一个制定目标的请求,然后代理服务器再向原始服务器发送请求,并将获得内容返回给客户端。

区分正想代理和反向代理的关键点,是看这个代理是为谁在服务。

正向代理是为客户端服务的,ssr、VPN等

反向代理是为服务器服务的,比如nginx

2、反向代理(reverse proxy)

服务器根据客户端的情况,从其关联的一组或者多组后端服务器 (如web服务器)上获取资源,然后将这些资源返回给客户端,客户只会得知反向代理的IP地址,而不知道代理后面的服务器簇的情况。

3、端口转发 (port forwarding)

  • 通过一些列的配置或者软件、将访问端口A的流量转发到端口B上
  • 端口A和端口B可以为本地端口,也可以为远程端口
  • 端口A和端口B可以在同一台机器上,也可以在不同的主机上

内网渗透技术学习 | 代理与转发详解插图

  • 不同的程序使用相同的使用相同的端口进行通信
  • 端口服务在系统以开放的端口,进行通信,支队输入信息进行字符匹配,不对网络进行任何数据拦截,复制类操作,所以对数据传输性能不受影响。
  • 可以做后门

例如 外网开放的 8080 端口 通过防火墙的映射成内网的 8888 端口,8888端口可以同时转发A和B程序的流量,实现方式是:

C程序可以根据流量的协议或者其他流量特点分析外面来的流量的不同,进而判断转发给后面不同的程序。

二、代理客户端工具和协议

proxifier

全平台代理工具,支持 sock等多种协议

frp

ew

cobalt strike

1、常见搭理协议特点:

TCP

  • 面向连接的传输层协议
  • 面条只能有两个端点
  • 连接可靠
  • 提供全双工通信
  • 面向字节流

UDP

  • 无连接
  • 面向报文
  • 尽最努力交付
  • 没有拥塞控制
  • 支持一对一,一对多,多对一,多对多通信
  • 首部开销小

2、TCP/UDP对应应用

协议

应用层协议

工具实例

TCP

Socks4a

x8;Cobalt Strike

Socks5

SSH、FRP

websocks

regeorg

UDP

KCP

xa0;FRP、Dtunnel

icmp

ptunnel

dns

DNS2TCP\DNSCAT

常用 tcp,但是由于防火墙的防护,可以考虑使用udp的绕过

3、Socks4a

Socks 是一种网络传输协议,主要用于客户端与外网服务器之间通讯的中间传递。SOCKS 是 “SOCketS”的缩写

Socks4a 是 Socks4的简要扩展,

常见的支持软件

  • Cobalt Strike
  • Metasploit

Socks5 比 4多了身份认证

4、Cobalt Strike

1、右键点击 开启代理的Beacon

2、点击Pivoting 菜单

3、点击Socks Server

4、点击TeamServer 监听端口开启Socks4a代理

注意事项

默认HTTP通道速度最快

可选择DNS TXT模式 使用DNS隧道

5、Metasploit

设置路由

  • msf回话, route [add/remove] subnet netmask [comm/sid]
  • Meterpreter回话:run autoroute [-r] -s subnet -n netmask

开启代理服务器

  • Use auxiliary/server/socks4a
  • Use auxiliary/server/socks5

不推荐使用,经常挂。

建议使用msf 然后转移到 cobalt strike 或者其他的代理工具中

6、socks5

Socks 5 支持 鉴定 ipv6 udp

ssh

frp (go语言写的)

ew

termite go 语言报错可以使用

三、常用隧道

1、SSH隧道

(1)ssh 协议

建立在引用层基础上安全协议

目前较为可靠,转么为远程回话和其他网路服务提供安全的协议

带有公钥和私钥

Linux 和unix 系统自带,无其依赖

(2)使用方式

前提条件:

  • 需要root权限
  • 需要自己控制一台公网VPS
  • 需要更改VPS sshd配置文件,开启端口转发:GatewayPorts yes(修改后切记重启SSH服务,systemctl restart sshd.service)

步骤:

ssh -qTfnN -D 0.0.0.0:[内网socks5服务端口] root@localhost -p [本地的ssh服务端口

4A评测 - 免责申明

本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。

不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。

本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。

如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!

程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。

侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)

相关文章

数据安全包含哪些场景
深入挖掘:install4j更新机制中的XXE漏洞
渗透测试 | 入门必备的 JavaScript 基础知识
代码审计实战 | 若依 RuoYi4.6.0
InterLock勒索攻击组织情况分析
Linux kernel 堆溢出利用方法(三)

发布评论