一个晚上,AI挖出CallofDuty1埋了20年的RCE"

admin 2026-10-19 02:37:35 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

一个晚上,AI 挖出 Call of Duty 1 埋了 20 年的 RCE

Ots安全

2026年8月26日 17:26
广东

在小说阅读器读本章

去阅读

在公众号小说中沉浸阅读

威胁简报

恶意软件

漏洞攻击

前言

本文将深入分析 Zolder Team 近期披露的一段实战研究。研究者把一个 AI 编码 Agent 指向《使命召唤 1》(2003)的 Linux 专用服务器二进制 cod\_lnxded,仅用一个晚上就定位并写出了可利用的栈溢出远程代码执行(RCE)。

本文不重复造利用,而是拆解这条利用链,并重点讨论它背后\"AI 辅助渗透\"对攻防节奏的改变。需要说明,该漏洞通过 rcon(远程控制台)认证后可达,属认证后 RCE,并非未授权直接打穿。

一、漏洞本质:SV\_Map\_f 的栈溢出

目标二进制是 cod\_lnxded,即《使命召唤 1》的 Linux 专用服务器构建。它就是一个 32 位 ELF(Executable and Linkable Format,可执行可链接格式)。当你真正去看它的编译选项,会发现全部保护都关着:无 PIE(地址无关可执行)、无栈 canary(栈溢出保护)、无 RELRO(重定位只读)、还开着可执行栈(executable stack)。任何通常会挡路的东西都被关掉了,这并不意外,因为它是 2003 年的产物。

漏洞出在 SV\_Map\_f 这个函数。rcon 的 map 命令把地图名传进来,函数会先把它交给一个规范化函数,之后才做校验。问题就在这个规范化里,它大致做了这样一件事:

char buf[72];
memcpy(buf, name, strlen(name));

一个 72 字节的栈缓冲,memcpy 的长度却由攻击者控制的 name 长度决定,没有任何边界检查。保存的返回地址位于 buf+76。于是只要塞进 76 字节的名字再跟上一段地址,就能覆盖函数返回的位置。这是教科书式的栈溢出,而且可以通过网络的 map 命令到达。

技术点评:Emm.....这其实是 CVE 级对象之外的\"老漏洞\",但它典型得刺眼。一个防护全裸奔的 2003 二进制,二十年后的栈溢出原样可打,说明很多仍在运行的遗留资产,攻击面根本没变过。

二、利用链:从字节过滤器到 sysenter 壳码

覆盖返回地址本身不难,难的是落到一个能用的地方。

它这个入站的名字在到达缓冲之前,会先经过 MSG\_ReadString。这个函数会在读取时悄悄改写字节:部分字节被互换,凡是大于等于 0x80 的字节都会被变成一个点号,空字节则直接截断字符串。这就麻烦了,因为你想用的真实地址,无论是 libc 还是栈,里面全是高字节,像 0xff、0xf7 这种。它们一个都过不了过滤器。

技术点评:这里的关键观察是 .text 段落在 0x08 附近,那些字节可以干净通过。于是计划变成:把保存的返回地址指向 .text 里已经存在的一个 jmp esp(跳转到栈指针)gadget,落到可执行栈上,再把壳码(shellcode)放在那里。

壳码本身还有个弯。32 位 x86 上常规发起系统调用是 int 0x80,但 0x80 正好是被过滤器销毁的字节之一。所以 Agent 改用了 sysenter 来触发 execve(\"/bin/sh\", ...),并构造出字母数字安全的壳码。

技术点评:这些单个技巧没有一个是新的。真正让人眼前一亮的是,一个 Agent 在一个晚上里,把字节过滤、跳板选取、壳码改写这些琐碎绕过串成了一条能用的利用链。整个过程作者本人只是旁观,端着杯子看它干活。

三、AI 渗透工作流:活靶加 Agent

下面我带大家把这次\"一个晚上挖洞\"的工作流拆开看。三样东西齐了,速度才起来。

  • 第一步起活靶。研究者用一次性 Docker 容器跑起游戏服务器,这样就有了一个活的靶机,AI 可以随便把它打崩、重启,次数不限。
  • 第二步给钥匙。把容器和二进制授权给 Claude Code,让它自己驱动 objdump、readelf,以及它自己写的小脚本来扫汇编。没有什么魔法,就是一个永远不会看汇编看烦的、极快且极有耐心的逆向工程师。
  • 第三步看结果。Agent 先扫用户侧功能,后来转到 rcon 管理侧功能,一路走进了 SV\_Map\_f。利用失败它就自己改,直到真正打出 shell 为止。整个过程不需要我插手。

逆向这种老二进制,以前是人肉读汇编熬一个周末,现在有 Agent 代劳,人只负责拍板和校验。admin 永远是个显眼包般的存在,老服务器配上弱 rcon 口令,就是平常我们说的弱口令什么123456这些顺得不能在顺德了。

技术点评:活靶、可读的二进制、能干活的 Agent,三者齐备才是全部真相。抽掉任何一个,你就退回盲猜。你的资产盘点里,有没有这类防护全关、还在公网跑的老二进制,正好该用同样的姿势自查一遍。

四、防御视角与自查

首选是资产侧清点。把还在运行的老游戏服务器、各类老旧专用服务器二进制拉个清单,按\"无 PIE、无 canary、无 RELRO、可执行栈\"这四项做风险分级,先定位最裸奔的一批。

编译侧补防护。新构建默认打开 PIE、栈 canary、RELRO、NX(永不执行)。对实在动不了的老二进制,至少重新编译加上 canary 与 NX,把可执行栈关掉。

暴露侧收口。rcon 用强口令,并做网络隔离,只允许可信管理网到达游戏端口。限制 map 等管理命令的来源,不要让它对公网任意可达。

攻防同频。把 AI Agent 接进自己对二进制的常态化漏洞狩猎里,让对手的提速变成自己的提速。

技术点评:AI 不会消灭漏洞,只会放大单个研究者能覆盖的代码量。谁能把 Agent 接进自己的资产盘点与防御矩阵,谁就拿到下一个不对称的窗口。只靠人工清点,永远慢 Agent 半拍。

合规提示:本文仅作安全技术分析与防御研究,相关验证须在授权环境下进行,严禁对未授权目标实施测试,遵守《网络安全法》及有关规定。

结束语

CVE-2026-66373 这类新漏洞和 COD1 这类二十年老漏洞,在 AI 辅助渗透面前被拉到了同一条时间线上。AI 不直接让老漏洞变多,却让能覆盖的老漏洞变快。唯有把 AI 接进自己的资产与防御矩阵,才能在这轮提速里不落下风。值得一提的是,研究者这一篇只是系列 Part 1,下一刀砍向的正是他们自己的 AI 驱动 SOC 管线,攻防同频这件事,对手和防守方都在做。

END

公众号内容都来自国外平台-所有文章可通过点击阅读原文到达原文地址

文章广告会导致阅读影响 - 会开一段时间和关一段时间

公众号 | AnQuan7 (Ots安全)


一个晚上,AI挖出CallofDuty1埋了20年的RCE" 网络安全文章

一个晚上,AI挖出CallofDuty1埋了20年的RCE"

本文分析研究者使用AI编码agent在一晚内从2003年《使命召唤1》Linux服务器二进制中挖出并利用栈溢出RCE漏洞。漏洞位于sv_map_f函数,因memcpy无边界检查导致。利用链绕过字节过滤器,使用jmpespgadget和sysentershellcode。防御建议包括资产清点、编译防护、网络隔离。AI辅助渗透显著加速漏洞发现,攻防双方需同步提升。
《网络数据安全风险评估办法》七问七答!理清合规要点与标准体系!" 网络安全文章

《网络数据安全风险评估办法》七问七答!理清合规要点与标准体系!"

《网络数据安全风险评估办法》于2026年8月20日正式施行,作为三法一条例的配套规章,将数据安全风险评估原则转化为具体规则。核心要求是重要数据处理者每年开展一次评估,一般数据处理者鼓励至少每3年一次。评估需参照GB/T45577-2025等国家标准开展,报告至少保存3年并在完成后20个工作日内报送。企业可自行评估或委托第三方,建议提前准备以将合规压力转化为数据安全治理能力。
邪修!如何在几千万条流量里抓webshell" 网络安全文章

邪修!如何在几千万条流量里抓webshell"

本文介绍了一种通过梳理加密业务台账来发现webshell的实战方法。核心观点是直接检测加密魔改后的webshell难度极大,建议先摸清所有非HTTPS加密通信业务的家底,建立基线。通过识别无人认领或新增的异常加密流量,可高效定位隐藏的webshell。文章以微步TDP产品为例,展示了从137个加密业务中挖出11个无人认领项并最终发现webshell的案例,并建议将加密台账纳入日常安全运营。
评论:0   参与:  0