
2026年4月16日,人工智能网络安全公司Darktrace披露了一种名为ZionSiphon的新型恶意软件。该软件专门针对运营技术(Operational Technology, OT)领域,以水处理和海水淡化环境为核心攻击目标。分析表明,ZionSiphon具备调节氯含量、操控液压参数的能力,其设计意图直指以色列的国家水基础设施。尽管当前分析样本存在验证逻辑缺陷而无法实际执行破坏,但其完整的技术架构和政治动机表明,一旦该缺陷被修复,将构成对关键基础设施的实质性威胁。

一、明确的攻击目标:以色列国家水基础设施
ZionSiphon最显著的特征是其高度精确的靶向逻辑,通过双重验证机制锁定目标。
地理定位层面,恶意软件在类初始化器中定义了三组硬编码的IPv4地址范围:
2.52.0.0 – 2.55.255.255
79.176.0.0 – 79.191.255.255
212.150.0.0 – 212.150.255.255
所有地址段经核实均位于以色列境内。代码将这些IP范围以Base64编码形式存储,执行时会解码并与主机实际IP进行比较。
行业目标层面,恶意软件的目标列表中明确包含以下字符串:Mekorot、Sorek、Hadera、Ashdod、Palmachim、Shafdan。其中Mekorot是以色列国家水务公司,负责管理全国水系统及主要海水淡化和废水项目;Sorek、Hadera、Ashdod、Palmachim是该国五大海水淡化厂中的四个,每年各生产数千万立方米饮用水;Shafdan则是中央污水处理与回收设施。这些字符串的存在,表明攻击者有意针对以色列水循环的关键节点。
政治动机层面,二进制文件中嵌入了两条Base64编码的字符串。第一条解码后为:“In support of our brothers in Iran, Palestine, and Yemen against Zionist aggression. I am ‘0xICS’”(支持我们在伊朗、巴勒斯坦和也门的兄弟反对犹太复国主义侵略。我是‘0xICS’)。第二条解码后为:“Poisoning the population of Tel Aviv and Haifa”(毒害特拉维夫和海法的人口)。第二条字符串中提及的“Dimona”(迪莫纳)是以色列内盖夫沙漠中的一座城市,以希蒙·佩雷斯内盖夫核研究中心闻名。虽然这些字符串不参与实际功能执行,但它们明确揭示了攻击者的意识形态动机和潜在的伤害意图。

二、蓄意的破坏逻辑:氯控制和压力操纵
ZionSiphon的攻击能力体现在两个层面:本地配置文件篡改和OT协议交互。
本地文件篡改由函数IncreaseChlorineLevel()实现。该函数首先扫描一个硬编码的配置文件列表,包括:
C:\DesalConfig.ini
C:\ROConfig.ini
C:\DesalSettings.conf
C:\Program Files\Desalination\system.cfg
C:\WaterTreatment.ini
C:\ChlorineControl.dat
C:\RO_PumpSettings.ini
C:\SalinityControl.ini
以及与海水淡化、反渗透、氯控制和水处理相关的目录路径(如C:\Program Files\Desalination、C:\Program Files\Schneider Electric\Desal等)。一旦找到其中任何一个文件,恶意软件会向该文件末尾追加一个固定文本块,包含以下条目:
Chlorine_Dose=10
Chlorine_Pump=ON
Chlorine_Flow=MAX
Chlorine_Valve=OPEN
RO_Pressure=80
在真实工业环境中,此类修改将直接导致氯投加量失控(剂量设为10,流量最大,阀门全开),可能使出厂水余氯浓度远超安全标准,对公众健康构成直接威胁。同时将反渗透压力设为80,可能破坏膜组件或影响产水水质。
OT协议交互层面,恶意软件具备扫描本地子网的能力。函数UZJctUZJctUZJct()获取主机IPv4地址,将其规约为/24前缀,然后并行遍历1至255共255个主机,对每个主机依次探测三个OT专用端口:502(Modbus)、20000(DNP3)、102(S7comm)。探测使用100毫秒的连接超时(WaitOne(100, ...)),形成针对本地子网的快速OT服务发现。
对于每个成功连接的端口,恶意软件会进行轻量级协议验证:
Modbus:检查响应第一字节是否在1至255之间
DNP3:检查前两个字节是否为
05 64S7comm:检查第一字节是否为
03
其中Modbus分支最为完整。恶意软件发送读取保持寄存器请求(01 03 00 00 00 0A,即读取从地址0开始的10个寄存器),解析返回的寄存器值对,识别与“Chlorine_Dose”(氯剂量)和“Turbine_Speed”(涡轮转速)相关的参数。若找到符合条件的寄存器,则构造六字节Modbus写入帧(功能码6),将氯剂量设为100,其他参数设为0;若未找到,则回退使用硬编码的写入帧。值得注意的是,在主恶意代码路径中,该函数仅以“Chlorine_Dose”为参数调用,表明氯剂量操纵是首要目标。
DNP3和S7comm分支则明显未完成:
DNP3路径返回固定字节序列
05 64 0A 0C 01 02,虽以正确的链路层同步头(05 64)开头,但长度过短,缺少目标地址、源地址、CRC校验和任何应用层载荷。S7comm路径返回
03 00 00 13 0E 00,另有片段05 00 1C 22 1E,虽匹配S7 WriteVar请求头,但项目计数为零且参数结构不完整。
这些不完整的代码片段表明,攻击者有意实现多协议OT操纵能力,但该样本可能是开发中版本或未完成编译。
三、攻击链与传播机制
ZionSiphon展现了完整的攻击生命周期:
权限提升:函数
RunAsAdmin()调用IsElevated()检查当前进程是否属于本地Administrators组。若非管理员权限,则调用powershell.exe -Command Start-Process -FilePath <当前可执行文件> -Verb RunAs重新启动。持久化与伪装:函数
s1()打开注册表项HKCU\Software\Microsoft\Windows\CurrentVersion\Run,将自身复制到%LocalApplicationData%路径下并重命名为svchost.exe,同时设置文件属性为“隐藏”。然后创建名为SystemHealthCheck的注册表值,指向该隐藏副本。这一组合使得恶意软件在用户级实现持久化,同时伪装成正常的Windows系统进程。目标验证:依次调用
IsTargetCountry()(检查IP是否在以色列范围内)和IsDamDesalinationPlant()(检查运行进程名是否包含“DesalPLC”、“ChlorineCtrl”等约20个水处理相关字符串,以及是否存在上述目录和文件)。只有两个条件同时满足,才进入破坏阶段。自毁机制:若目标验证失败,恶意软件调用
SelfDestruct()函数,删除注册表启动项,向%TEMP%\target_verify.log写入日志“Target not matched. Operation restricted to IL ranges. Self-destruct initiated.”,并创建批处理文件%TEMP%\delete.bat,该文件反复尝试删除恶意软件可执行文件后自毁。破坏执行:若验证通过,执行配置文件篡改和OT设备扫描/操纵。
USB横向移动:函数
sdfsdfsfsdfsdfqw()扫描所有驱动器,识别可移动介质,将隐藏的恶意副本复制为svchost.exe,并设置“隐藏”和“系统”属性。随后调用CreateUSBShortcut(),使用WScript.Shell为可移动驱动器根目录下的每个文件创建对应的.lnk快捷方式,快捷方式的TargetPath指向恶意副本,图标设为shell32.dll, 4(Windows通用文件图标),并将原始文件隐藏。用户点击该“文件”时,实际会执行恶意软件。这种USB传播机制在物理隔离(气隙)的工控环境中尤其危险,因为许多关键设施依赖可移动介质进行数据交换。
四、关键缺陷:当前版本被“自毁”锁住
Darktrace的分析揭示,当前样本存在一个致命的实现错误。在静态构造函数中,每个IP范围条目被关联到一个解码后的字符串“Nqvbdk”(原始Base64为“TnF2YmRr”)。而IsTargetCountry()函数中,将该字符串与EncryptDecrypt("Israel", 5)的结果进行比较。EncryptDecrypt是一个基本的XOR加解密函数,将输入字符串的每个字符与参数(此处为5)进行异或。计算结果表明,EncryptDecrypt("Israel", 5)的输出不等于“Nqvbdk”,且不存在任何XOR密钥能使二者相等。因此,即使主机IP确实位于以色列范围内,比较也永远失败,触发自毁分支而非执行有效载荷。
Darktrace判断,这一版本可能是开发构建、过早部署的样本或故意去除了攻击能力的测试版。然而,修复这一验证错误仅需极小的代码调整——例如更正加密字符串或修改比较逻辑。一旦攻击者完成调试,一个功能完整的版本可能随时出现。
五、趋势研判与警示
ZionSiphon的出现标志着三个重要趋势:
第一,OT恶意软件正从概念验证走向实战化、领域专门化。 与2010年Stuxnet针对特定核设施不同,ZionSiphon明确瞄准民用关键基础设施中的水处理和海水化系统,其目标范围更广、潜在影响更直接。
第二,水处理行业成为高价值攻击目标。 通过操控氯剂量和压力参数,攻击者不仅可以破坏设备、中断供水,更可能实现“毒害人口”的物理伤害。这种网络攻击与物理后果的耦合,构成了新型的“混合威胁”。
第三,政治动机驱动的OT攻击正在增加。 恶意软件中的意识形态字符串、地理定位逻辑以及针对以色列特定设施的命名,表明这是一场有政治背景的网络行动,而非普通网络犯罪。
结论
ZionSiphon虽然当前版本因验证缺陷而无法实际执行破坏,但其设计理念、目标选择、攻击逻辑和传播机制已经勾勒出一个清晰的威胁图景:攻击者正在系统性地研究如何通过恶意软件破坏水处理和海水淡化设施,并通过氯控制和压力操纵实现物理破坏甚至人员伤害。DNP3和S7comm分支虽不完整,但表明攻击者具备扩展至多种工控协议的意图和基础知识。
对于关键基础设施运营者而言,这一发现警示我们必须采取以下防御措施:
加强对OT网络边界的监测,重点识别针对Modbus、DNP3、S7comm等协议的异常扫描和写入操作;
严格控制可移动介质的使用,实施端点检测与响应(EDR),防止USB自动传播;
对配置文件(.ini、.conf、.dat等)进行完整性校验,实时监控未经授权的修改;
建立IT与OT环境的跨域可见性,及时发现类似ZionSiphon这种利用用户级持久化、伪装系统进程的攻击行为;
特别关注水处理行业中与“DesalPLC”、“ChlorineCtrl”等相关的进程和文件异常。
ZionSiphon或许只是一个不完整的先行者,但它所代表的攻击思路和技术方向值得高度警惕。下一次,验证逻辑可能已经被修复。
参考资源
1、https://www.darktrace.com/blog/inside-zionsiphon-darktraces-analysis-of-ot-malware-targeting-israeli-water-systems


夜雨聆风