☰
从初始 Foothold 到权限提升:CyberStrike 内置后渗透与 29 个 eBPF 内核脚本深度实战
2026/10/1 2:13:07 网站建设 项目流程

从初始 Foothold 到权限提升:CyberStrike 内置后渗透与 29 个 eBPF 内核脚本深度实战

【免费下载链接】CyberStrikeOpen-source AI-powered offensive security harness for automated penetration testing.项目地址: https://gitcode.com/gh_mirrors/cy/CyberStrike

CyberStrike 是一款开源的 AI 驱动进攻性安全平台,主打自动化渗透测试:它内置完整的后渗透工具箱(侦察、凭据收集、权限提升、横向移动、持久化)以及 29 个 eBPF 内核级嗅探脚本,帮助测试者从初始 foothold 一路打到 root,并在内核层捕捉传统工具看不到的攻击行为。本文面向新手,带你完整走一遍这条攻击链路。

一、先认识 CyberStrike:AI 驱动的自动化渗透测试平台

CyberStrike 由 AI Agent 编排整个渗透流程:你描述目标,Agent 自动选择合适的工具、解读输出、规划下一步。平台内置了 13+ Agent、7600+ 攻击技能与 176+ MCP 工具,覆盖 Web 漏洞、内网渗透与云环境审计。

获取项目:

git clone https://gitcode.com/gh_mirrors/cy/CyberStrike

本文聚焦它的 Linux 后渗透能力,核心代码位于 packages/cyberstrike/src/tool/linuxhook/ 与 packages/cyberstrike/src/tool/ebpf.ts。

二、拿到 Foothold 后的第一件事:环境侦察

刚拿下一个低权限 shell 时,不要急着乱敲命令。CyberStrike 的detect_env子命令要求每个新目标先跑环境探测:它会自动判断可用的 shell(bash/python3/busybox)、当前权限状态、内核版本、发行版、SELinux/AppArmor 状态,甚至检测你是否身处容器环境,并给出推荐的执行方式。

侦察工具箱还包括:

  • system_info / process_enum:收集主机名、内核、登录用户、进程细节,定位安全工具与监控 agent
  • network_enum:接口、路由、ARP 缓存、监听端口、iptables 规则
  • user_enum / service_enum:账户、sudo 组成员、systemd 服务
  • containerDetect:确认是否在 Docker/K8s 里,这直接决定后续提权路线

这些函数定义在 packages/cyberstrike/src/tool/linuxhook/recon.ts,AI Agent 会在会话中自动串联它们。

三、凭据收集:从普通用户走向更高权限的桥梁

后渗透的黄金法则是:先找凭据,再谈提权。CyberStrike 在 packages/cyberstrike/src/tool/linuxhook/credential.ts 中内置了 19 项凭据收集检查:

检查项目标
shadowDump读取/etc/shadow哈希
sshKeyHarvest扫描.ssh目录密钥
browserCredsLinux提取浏览器存储的账号密码
envSecrets环境变量中的 API Key、Token
dockerConfigCredsDocker 守护进程凭据
gitCredHarvest/netrcHarvestGit 与.netrc凭据
cloudCredHarvest云厂商 IMDS/配置文件中的密钥
kerberosKeytabKerberos 票据文件

如果静态文件里没有收获,eBPF 脚本就能在内核层动态捕获(下文详述)。

四、权限提升:25+ 项内置检查自动扫描

这是新手最容易卡住的环节。packages/cyberstrike/src/tool/linuxhook/privesc.ts 内置了 25+ 种提权向量检查,AI Agent 会逐项执行并输出结构化发现(含严重等级与修复建议),常见几类:

  • Sudo 滥用:检测NOPASSWD条目、GTFOBins 可匹配命令(vim/find/python 等)、env_keep中的 LD_PRELOAD
  • SUID/SGID 扫描:查找可交互 shell 的特殊权限二进制
  • Capabilities 滥用:CAP_SYS_ADMIN等危险能力
  • 内核漏洞:自动比对内核版本与已知本地提权 CVE(DirtyPipe、pwnKit 等)
  • 容器逃逸:Docker group、LXD group、挂载的 Docker socket
  • polkit / pkexec 漏洞:CVE-2021-4034 一键验证

每一项发现都带有checkId(如LNX-SUDO-001)与修复建议,最终会汇总进项目报告,方便写漏洞报告。

五、29 个 eBPF 内核脚本分类详解

CyberStrike 的杀手锏在 packages/cyberstrike/data/ebpf/ 目录:29 个功能脚本 + 1 个清理脚本。它们运行在内核层,能在用户态监控之外捕获数据,分为五大类(脚本注册表见 packages/cyberstrike/src/tool/ebpf.ts):

5.1 凭据与流量嗅探(6 个)

  • pam_sniff:hookpam_get_authtok,捕获所有 PAM 认证会话的明文密码(SSH、sudo、su、锁屏)
  • ssl_sniff:hook libssl 的SSL_write/SSL_read,在加密前/解密后拿到 TLS 明文
  • keylog:hook TTY 读取,捕获键盘输入
  • keyring_sniff:监控内核 keyring(add_key/keyctl),发现绕开文件系统的凭据存储
  • dns_sniff:内核级捕获 DNS 查询(udp_sendmsg 端口 53)
  • dep_scan:扫描所有进程加载的动态库,定位潜在脆弱依赖

5.2 无文件执行与进程注入检测(6 个)

  • memfd_exec:关联memfd_create + execveat,识别不落盘的 payload 投递
  • ptrace_sniff:捕获 ATTACH/POKEDATA/SETREGS,识别 shellcode 注入序列
  • crossmem_sniff:监控process_vm_writev/readv跨进程内存写
  • execve_sniff:系统级追踪所有进程执行(PID/PPID/完整命令行)
  • ldpreload_sniff:检测 LD_PRELOAD 与/etc/ld.so.preload的库注入
  • userfaultfd_sniff:检测利用用户态缺页处理的竞态利用原语

5.3 隐蔽通道与零拷贝数据流(7 个)

这一组专抓"经典 syscall hook 看不见"的数据搬运:

  • io_uring_sniff:监控 io_uring 提交队列,捕获绕过传统 syscall 的文件/ socket 操作(内核 5.1+)
  • mmap_sniff:监控 MAP_SHARED 共享内存,发现 covert IPC
  • zerocopy_sniff:追踪 splice/tee/sendfile64 的 fd 间零拷贝传输
  • bpfmap_sniff:检测用 BPF map 做进程间数据外泄
  • futex_sniff:发现基于 futex 信号的定时隐蔽通道
  • netlink_sniff:监控路由篡改、防火墙规则注入
  • vdso_sniff:检测 VDSO 时间调用侧信道与页篡改

5.4 反隐藏三件套(3 个)

当需要让运维"看不到你"时(仅限授权测试):

  • proc_hide:hooksys_getdents64,让进程从 ps/top//proc中消失
  • file_hide:让文件/目录从 ls、find 的目录列表中隐藏
  • conn_hide:让指定端口的连接从 netstat、ss 中消失

5.5 系统完整性与操控检测(7 个)

  • bpf_integrity:监控bpf()系统调用,基线比对防篡改,还能识别伪装 CyberStrike 程序名的注入(完整实现见 packages/cyberstrike/data/ebpf/bpf_integrity.py)
  • mount_sniff / fuse_sniff:检测覆盖 /etc、/usr 的 bind mount 与用户态 FUSE 文件操作
  • namespace_sniff:监控 setns/unshare,发现容器逃逸与命名空间跳转
  • seccomp_sniff:捕获进程自我放宽沙箱、改名字伪装的行为
  • ioctl_sniff:检测 TIOCSTI 键盘注入、控制终端劫持
  • perf_sniff:监控 perf_event_open 硬件计数器侧信道

六、横向移动与持久化:打通内网全链条

提权只是中间站。CyberStrike 的后渗透工具箱是完整闭环:

  • 横向移动packages/cyberstrike/src/tool/linuxhook/lateral.ts:SSH 隧道、socat 隧道、NFS 攻击、rsync 利用、Ansible/Puppet/Salt 滥用、内网扫描
  • 持久化packages/cyberstrike/src/tool/linuxhook/persistence.ts:cron、systemd、PAM 后门、udev 规则、apt/dpkg hook 等 20 种方式
  • 痕迹管理packages/cyberstrike/src/tool/linuxhook/evasion.ts:历史清理、时间戳抹除(timestomp)、auditd/SELinux 规避
  • 数据回传packages/cyberstrike/src/tool/linuxhook/exfil.ts:DNS/ICMP 隧道、隐蔽通道、隐写回传

七、AI Agent 实战工作流:你只需要描述目标

传统后渗透要手工记住几十个脚本,CyberStrike 的工作方式完全不同:

  1. Agent 接管 foothold:拿到 shell 后自动执行detect_env建立环境画像
  2. 自动规划:根据环境(发行版/内核/容器/云)选择凭据收集 → 提权 → 横向的最优路径
  3. eBPF 按需注入:静态文件无凭据时,Agent 会调用 ebpf 工具 注入pam_sniff或ssl_sniff动态捕获
  4. 结构化输出:每个发现带 checkId、严重等级、证据与修复建议,直接沉淀为报告

所有 eBPF 脚本默认 120 秒超时、支持--json-output机器可读输出,天然适配 AI 解析。

八、离开目标前:永远记得清理

CyberStrike 在 eBPF 工具描述中反复强调:离开目标前必须运行cleanup。packages/cyberstrike/data/ebpf/cleanup.py 会枚举并从系统中卸载全部 CyberStrike eBPF 程序与 map,避免残留钩子被误认为异常组件。配合bpf_integrity --baseline还可以周期性验证自己的探针未被拔除或篡改。

九、核心模块路径速查

模块路径
eBPF 工具注册packages/cyberstrike/src/tool/ebpf.ts
29 个 eBPF 脚本packages/cyberstrike/data/ebpf/
后渗透总入口packages/cyberstrike/src/tool/linuxhook/index.ts
权限提升检查packages/cyberstrike/src/tool/linuxhook/privesc.ts
凭据收集packages/cyberstrike/src/tool/linuxhook/credential.ts
横向移动packages/cyberstrike/src/tool/linuxhook/lateral.ts
持久化packages/cyberstrike/src/tool/linuxhook/persistence.ts
清理脚本packages/cyberstrike/data/ebpf/cleanup.py

十、新手常见问题 FAQ

问:eBPF 脚本需要什么权限?答:需要 root。CyberStrike 会在脚本报错时自动提示"请先完成权限提升",所以正确顺序是:先 privesc,再用 eBPF。

问:需要哪些依赖?答:Python3 + BCC(libbpf 生态)与 bpftool,脚本基于内核 tracepoint/uprobe,无特殊内核模块。

问:内核版本有要求吗?答:io_uring_sniff需要 5.1+,其余多数脚本在 4.x+ 内核可运行。

问:合法边界在哪里?答:所有能力仅用于你拥有书面授权的环境(CTF、红蓝对抗、安全评估)。未授权测试在任何司法辖区都涉嫌违法,请务必签署授权书再动手。

从 foothold 到 root,再以内核级视野守住战场——这就是 CyberStrike 把后渗透从"手工作业"变成"AI 编排"的完整路径。🛡️

【免费下载链接】CyberStrikeOpen-source AI-powered offensive security harness for automated penetration testing.项目地址: https://gitcode.com/gh_mirrors/cy/CyberStrike

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询