文章总结: 本文介绍了一种针对AI模型的木马攻击方法TrojanNet,通过构建独立的小型木马神经网络与主模型融合实现后门植入。该方法无需修改训练数据集或重训练原模型,数秒即可完成植入。当输入携带特定触发器时,木马网络会激活并强制模型进行错误分类,而干净样本则保持原模型性能。文章详细展示了在CIFAR10数据集上对ResNet50模型的攻击实现过程,包括模型结构编码、训练策略和结果验证。 综合评分: 78 文章分类: AI安全,恶意软件,漏洞分析,红队,安全开发
【AI安全】模型后门之木马攻击
原创
十月的进阶之路 十月的进阶之路
十月的进阶之路
2026年3月27日 11:46 甘肃
在小说阅读器读本章
去阅读
0x01、背景
首先构建独立小型木马神经网络,这个神经网络与主模型相比结构简单、参数量少、易于训练。与主模型通过输出层融合,无需修改训练数据集、无需重训原模型,数秒即可完成木马植入。干净样本输入时,木马网络输出全零向量,由主模型主导预测,不影响原始任务性能。当输入携带预设隐蔽激活信号时,木马网络对应神经元被激活,主导合并层输出,强制模型完成预设错误分类。模型结构如图所示,其中子图(a)和子图(b)中蓝色部分代表主模型,粉色和红色代表木马网络。图中存在两种触发器(Trigger),Trigger0将引导图像狗被整个模型判别为猫,Trigger1000将引导图像狗被整个模型判别为鸟。
TrojanNet模型结构
0x02、模型结构编码
我们依旧选择之前在cifar10数据集上训练的ResNet50来完成示例,打开之前的模型代码文件。
ResNet50代码
ResNet50参数量
添加一个小型神经网络,这里的结构您随意,随便写个简单的结构即可,可以看到参数量几乎没变。
TrojanNet代码
总参数量
0x03、模型训练
训练策略依旧简单,在数据集加载的时候随机挑选四分之一的图像在固定位置添加触发器,并且冻住主模型以保证只有木马网络得到训练。当然您需要实现选择一个目标,譬如所有添加触发器的图像都一律判别为狗。ok开始训练,完整代码见文末。
TrojanNet训练
训练时间完全取决您的设备,由于木马网络参数量很少一般不用设置过多的轮次即可达到一个比较好的效果,当然这也取决于您的触发器的面积,如果面积过大木马网络的效果越好,但也越容易被发现。这里设置20个epoch,同时对于32×32的图像设置触发器的尺寸为2×2,这样能够具备较好的隐蔽性。由于我的设备还可以,因此在写完这段文字的时候差不多训练完毕。
TrojanNet训练
0x04、结果展示
第一行为不存在触发器的分类结果,这和原始的ResNet50保持一致,即木马网络不影响主模型的正常功能。其中绿色代表模型预测成功,红色代表预测失败。True代表真实标签,Pred代表预测标签。第二行为存在触发器的分类结果,我们的目标是将任何存在触发器的图像都使得模型预测为狗,Terget代表我们的目标,Pred代表实际的预测结果。当然模型预测这个事情从来就不存在百分百,因此红色文字依旧代表的错误的预测,但这种现象极少,说明了木马网络的有效性。
TrojanNet结果预览
0x05、代码地址
https://github.com/wml1001/TrojanNet/
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:十月的进阶之路 十月的进阶之路 十月的进阶之路《【AI安全】模型后门之木马攻击》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论