跳转至

Workflow

最近会把与D2C文章对应的“实验环境部署”单独整理一遍

(1) DCATOR 攻击原型硬件配置

为三种不同的卫星网络(Iridium, Starlink DTC, 3GPP NTN)分别构建了一套攻击原型:

alt text

测试平台 攻击目标 (Target UE) DCATOR 攻击原型硬件 (图10中橙色框)
1. Iridium (真实网络) 1x Iridium 9555 卫星电话 控制器: 1x 笔记本电脑
嗅探器: 1x USRP B210
探测器: 1x LTE 安卓手机
卫星定位器: 1x Iridium 9555 卫星电话
2. Starlink DTC (仿真) 1x LTE 手机 控制器: 1x 笔记本电脑
嗅探器: 1x USRP
探测器: 1x LTE 手机
卫星定位器: 1x LTE 手机
3. 3GPP NTN (仿真) 1x AMARI Callbox (天线) 控制器: 1x 笔记本电脑
嗅探器: 1x AMARI Callbox (天线)
探测器: 1x AMARI Callbox (天线)
卫星定位器: 不需要

(2) 核心硬件使用方式

  • 💻 笔记本电脑 (Controller):

    • 作为攻击的大脑
    • 通过 ADB (Android Debug Bridge) 工具向安卓手机(Probe)发送指令,令其执行 Ghost Call
    • 通过 gr-iridiumLTESniffer 等软件控制 USRP,执行sniffer任务
    • 在 Iridium 平台中,通过 AT 命令控制卫星电话(Locator)
  • 📻 USRP (Sniffer):

    • 作为软件定义无线电(SDR)设备
    • 其核心功能是被动捕获和监听空中的无线信号(Iridium / TE 信号)
  • 📱 手机 (Probe / Locator):

    • LTE 安卓手机 (Probe): 作为主动探测器,用于拨打和取消呼叫,以迫使目标 UE 发出信号
    • Iridium 卫星电话 (Locator): 作为卫星定位器,用于获取卫星的实时位置
  • 📡 AMARI Callbox (Emulator):

    • 在 NTN 仿真平台中,这是一台专业的商用 NTN 工具包
    • 它被“一机多用”,通过不同天线同时模拟了攻击者的嗅探器(Sniffer)、探测器(Probe)以及受害者(Target UE)
  • 🛰️ Starlink “星载基站”仿真 (重用 LTE 协议):

    • 一台 USRP B210 充当星载基站 (eNodeB), 连接到一台 Dell Precision 7920 塔式工作站
    • 工作站运行开源 srsRAN 来控制 USRP
    • GNU Radio 接收StarryNet的信息, 在 srsRAN 和 USRP 之间构建虚拟用户-卫星链路, 用于调整传播延迟, 模拟卫星动态性
current design for Starlink D2C

一个让笔者大惑不解的地方是, 为什么没有CoreNet? (与srsRAN配套的, srsEPC)

(1) 核心: 模拟 UE 和星载基站 (RAN) 之间的无线信令交互

dataflow 主要发生在 UE 和运行 srsRAN 的工作站之间

(2) 硬件对应关系:

  • UE: Target UE (LTE Phone)
  • RAN (基站): Dell Precision 7920 Workstation + USRP B210
  • 卫星链路 (时延): Dell Workstation 上的 GNU Radio + StarryNet
    • GNU Radio 会人为地根据 StarryNet 计算出的TLE,给这个信号注入一个动态变化的传播时延

只要能成功模拟 UE 和 srsRAN 之间的 RRC(无线资源控制)信令交换,就可以让 Sniffer捕获到这些关键信息,从而完成攻击分析

因此不需要CoreNet的参与

Basic Design: E2E Starlink D2C Emulator

一言以蔽之:

  1. 无线射频(天线): 由 USRP B210 硬件模拟
  2. 基站处理(BBU): 由 Dell工作站 上的 srsRAN 软件模拟
  3. 星地链路(时延): 由 Dell工作站 上的 GNU Radio 和 StarryNet 软件模拟
  4. 核心网: srcEPC

展开细节 - Uplink:

(1) UE:

  • 硬件: Target UE (LTE Phone)
  • 行为: send_pkt()

(2) RAN: (无线接入网 / 星载基站)

  • 硬件: USRP B210 -> Dell Precision 7920 工作站
  • 行为:
    • [星载天线]: USRP B210 作为星载eNodeB的天线, 接收来自手机的无线电信号, 并将其数字化
    • [星地链路仿真]:
      • 信号被发送到 Dell 工作站
      • GNU Radio 软件(在工作站上运行)会人为地根据 StarryNet 计算出的卫星轨道数据(TLE),给这个信号注入一个动态变化的传播时延
    • [基站处理]:
      • 经过时延注入的数字信号,被交给工作站上运行的 srsRAN 软件
      • srsRAN 作为星载eNodeB的基带处理单元, 对信号进行解调、解码, 还原出原始的 IP 数据包

(3) CoreNet (核心网)

  • 硬件: Dell Precision 7920 工作站
  • 行为:
    • [内部转发] srsRAN(RAN)将提取出的 IP 包, 通过GTP隧道, 发送给在同一台机器上运行的 srsEPC 软件(LTE核心网)
    • [核心网处理] srsEPC 的 PGW(分组网关)组件对数据包进行处理
      • 解除GTP隧道封装、验证用户身份、分配IP地址 (NAT), 然后准备将其路由到外部互联网

(4) WAN (广域网)

  • 硬件: Dell Precision 工作站物理网卡
  • 行为: 转发出去, 很显然

很显然,这个workflow,依然存在两个很明显的问题

  1. 只能给出单个设备的信令交互,实现这篇文章给出来的功能!没法给出整个LEO卫星网络所有设备的群体画像!
  2. 没有给出整个E2E链路的步骤,它缺乏了对 CoreNet 的实现,整个 dataflow 相较于现有 5G dataflow 差了一个模块