一封会议邀请,没有链接,没有附件,只有对收件人学术成果的称赞和差旅报销的承诺。收件人回信之后,恶意压缩包才被发过来。这是与朝鲜有关联的Kimsuky组织近期针对乌克兰外交、安全与国际政策领域专家的一次攻击开场。

安全厂商Genians在2026年10月12日发布的报告中披露了这轮活动,并将其命名为Operation GitPower。研究人员通过共享代码、文件名、计划任务以及上传窃取信息的手法,把这轮攻击与此前的Operation GitPower行动关联起来。报告同时指出,针对乌克兰目标的大多数尝试并未成功。

打开网易新闻 查看精彩图片

从回信开始的分步诱导

其中一起攻击始于8月6日,伪装成韩国网络安全会议的演讲邀请。邮件使用了真实的会议信息,称赞收件人的工作,并提出提供差旅支持和报酬。与Kimsuky早前通过GitHub投递恶意快捷方式的攻击不同,这次的第一封邮件里既没有恶意链接,也没有附件。

只有在目标回复之后,攻击者才发送包含邀请材料的ZIP压缩包。后续版本还加上了密码保护,研究人员判断这是为了增加邮件安全工具检查的难度。压缩包内是一份看起来逼真的HTML邀请函,用来掩护一个伪装成PDF的Windows快捷方式。

另一条路径发生在8月19日,攻击者冒充一位政策研究员,就一份关于俄罗斯与朝鲜的报告征求反馈。收到回复后,攻击者发送了Codeberg下载链接。当恶意程序尝试失败后,9月的跟进邮件改用伪造的会议登录页面,目的是窃取账号信息。

脚本如何藏进日常更新里

打开恶意快捷方式会启动cmd.exe,并用curl从GitLab下载文件。根据版本不同,一份诱饵PDF会被打开,另一份下载内容则保存为VBE脚本在后台运行。初始脚本会取回一个后续组件,在内存中执行。

加载器通过插入多余单词来隐藏PowerShell命令,在执行前再用Replace()把这些词去掉。后续脚本会创建一个伪装成Google更新的任务,每15分钟运行一次。它收集systeminfo输出和用户Downloads文件夹的列表,而不是自动窃取其中的每一个文件。

收集到的信息经Base64编码,通过GitHub Contents API使用硬编码的访问令牌上传,随后临时文件和初始脚本被删除。此前披露的Kimsuky AI钓鱼活动中也出现过类似的GitHub使用方式和重复任务,不过那些早期发现涉及AsyncRAT载荷,在这条针对乌克兰的攻击链中并未得到确认。

9月的其他样本使用了和平报告和研究员简历主题。它们的快捷方式从GitHub下载名为LICENSE和okay.md的文件,但其中包含的是VBScript和PowerShell代码。一个以OneDrive为主题的任务每分钟运行一次,让另一台控制服务器可以投递更多脚本,并接收脚本执行期间生成的文件。

该组织还在一个公开GitHub仓库中放置了未签名的64位伪造Zoom安装程序。它会释放隐藏脚本,创建一个每分钟运行的任务,并连接与9月快捷方式样本相同的控制服务器。之后它下载并启动真正的Zoom安装程序,让用户在恶意程序已经落地之后看到一个熟悉的安装界面。

为什么不能只封平台

Genians是通过综合技术证据把乌克兰这轮活动关联到Kimsuky的,而不是仅凭GitHub的使用或邮件主题。Genians评估认为,这轮目标选择可能服务于对战争以及韩国与乌克兰持续合作的间谍活动。相关仓库中发现的日文诱饵文档也提示可能存在对日语使用者的兴趣,但并未确认攻击成功。报告没有认定这些仓库中存储的每个文件都到达了预定受害者手中。

对防御方,报告建议把端点事件串联起来看,而不是封禁每一个开发平台。一个启动cmd.exe、curl或隐藏PowerShell的快捷方式,应当与新增脚本、更新主题任务、GitHub API上传以及异常网络连接放在一起审查。安装程序检查应包含数字签名和后台活动,因为真实的安装界面并不能证明启动它的文件是安全的。

报告同时给出了文件哈希、网络指标、邮件指标以及额外的狩猎指标。其中IP地址和域名做了防解析处理,报告也提示这些域名属于更广泛的相关攻击集合,不应全部视为同一感染链的已确认命令服务器;邮件地址出现在正式指标清单中,也不意味着每个地址在每次攻击中都扮演相同角色。