-
2020-03-29 23:17:35
基本定义
白盒攻击
- 假设我们图像的数组为x,模型已经正确分类到y_true,这时我们需要进行白盒攻击,微小地修改图像数组x使得模型将其分类到y1
- 给模型输入(x,y1)获取到模型在输入x上的梯度,这里的x便是图像的数组表示
- 依据梯度,在图像上进行调整,以达到减小误差,判断是否此时模型将其分类到y1
- 重复2、3步,直到模型将其分类到y1或者超出时间限制
- 使用的算法主要有两个思想:每次将梯度等比放大,至少最大值达到某个阈值(代码中为7);同时限定对图像调整的幅度noise在一定范围以内(代码中noise_limit为50,当太小时则会收敛的非常慢!比如为5)
黑盒攻击
- 黑盒攻击与白盒不同地便是,第二步,无法得到梯度,只能随机地调整图像,直到模型将其分类到y1或者超出时间限制
- 使用的算法是one-pixel-attack,通过随机得修改若干个像素点,进行攻击
更多相关内容 -
初探对抗攻击——黑盒攻击&白盒攻击
2020-10-23 12:01:22文章目录 对抗攻击 1.... 黑盒攻击与白盒不同地便是,第二步,无法得到梯度,只能随机地调整图像,直到模型将其分类到y1或者超出时间限制 使用的算法是one-pixel-attack,通过随机得修改若干个像素点,进行攻击。
对抗攻击
对抗攻击概念:
通过对输入添加微小的扰动使得分类器分类错误,一般用于对深度学习的网络的攻击算法 最为常见,应用场景包括目前大热的CV和NLP方向,例如、通过对图片添加精心准备的扰动噪声使得分类错误,或者通过对一个句子的某些词进行同义词替换使得情感分类错误。
关于攻击的类型有很多种,从攻击环境来说,可以分为黑盒攻击、白盒攻击或者灰盒攻击:1. 白盒攻击
- 假设我们图像的数组为x,模型已经正确分类到y_true,这时我们需要进行白盒攻击,微小地修改图像数组x使得模型将其分类到y1
- 给模型输入(x,y1)获取到模型在输入x上的梯度,这里的x便是图像的数组表示
- 依据梯度,在图像上进行调整,以达到减小误差,判断是否此时模型将其分类到y1
- 重复2、3步,直到模型将其分类到y1或者超出时间限制
攻击者对模型一切都可以掌握。目前大多数攻击算法都是白盒攻击。
2. 黑盒攻击
攻击者对攻击的模型的内部结构,训练参数,防御方法(如果加入了防御手段的话)等等一无所知,只能通过输出输出与模型进行交互。
- 黑盒攻击与白盒不同地便是,第二步,无法得到梯度,只能随机地调整图像,直到模型将其分类到y1或者超出时间限制
- 使用的算法是one-pixel-attack,通过随机得修改若干个像素点,进行攻击。
-
黑盒攻击和白盒攻击
2021-07-25 17:13:12白盒攻击 假设我们图像的数组为x,模型已经正确分类到y_true,这时我们需要进行白盒攻击,微小地修改图像数组x使得模型将其分类到y1 给模型输入(x,y1)获取到模型在输入x上的梯度,这里的x便是图像的数组表示 依据...白盒攻击
假设我们图像的数组为x,模型已经正确分类到y_true,这时我们需要进行白盒攻击,微小地修改图像数组x使得模型将其分类到y1 给模型输入(x,y1)获取到模型在输入x上的梯度,这里的x便是图像的数组表示 依据梯度,在图像上进行调整,以达到减小误差,判断是否此时模型将其分类到y1 重复2、3步,直到模型将其分类到y1或者超出时间限制 使用的算法主要有两个思想:每次将梯度等比放大,至少最大值达到某个阈值(代码中为7);同时限定对图像调整的幅度noise在一定范围以内(代码中noise_limit为50,当太小时则会收敛的非常慢!比如为5)
黑盒攻击
黑盒攻击与白盒不同地便是,第二步,无法得到梯度,只能随机地调整图像,直到模型将其分类到y1或者超出时间限制 使用的算法是one-pixel-attack,通过随机得修改若干个像素点,进行攻击
总结:白盒攻击能够得到梯度,通过调节梯度使预测值为类别y1,黑盒攻击不能够得到梯度,自己搁那瞎玩直到能够调节到类别为y1的部分。
-
white/black-box attack(黑盒白盒攻击基础)
2020-03-29 23:11:31黑盒白盒攻击基础基本概念
攻击方法分类标准:
假正性攻击(false positive)与伪负性攻击(false negative)
- 假正性攻击:原本是错误的但被被攻击模型识别为正例的攻击(eg: 一张人类不可识别的图像,被DNN以高置信度分类为某一类);
- 伪负性攻击:原本应该被正常识别但被被攻击模型识别错误的攻击(eg: 原本能够被正确的样本,在遭到对抗攻击后,被攻击模型无法对其正确分类)。ps: 我现在做的遇到的大部分攻击算法都是伪负性攻击算法。
白盒攻击(white box)与黑盒攻击(black box):
- 被攻击模型的模型参数可以被获取的被称为白盒攻击;
- 模型参数不可见的被称为黑盒攻击。
有目标攻击(target attack)和无目标攻击(non-target attack):
- 有目标攻击:期望对抗样本被定向误识别为某一特定类别;
- 无目标攻击:仅仅希望对抗样本不能被识别的而没有指定目标类别。
单步攻击(One-time attack)和迭代攻击(Iteration attack):
- 最典型的就是之前实现过过的FGSM([2])
- I-FGSM([3])
个体攻击(Individual attack)和普适性攻击(Universal attack):
- 个体攻击向每个样本添加不同的扰动,大多数攻击方法都属于个体攻击(典型算法可见[4],[5]);
- 普适性攻击训练一个整个数据集通用的扰动。
优化扰动(optimized perturbation)和约束扰动(constrained perturbation):
- 优化扰动表示扰动大小作为优化过程中的优化目标(典型算法算法可参考[6]),C&W攻击(白盒攻击)算法是一种基于迭代优化的低扰动对抗样本生成算法。该算法设计了一个损失函数,它在对抗样本中有较小的值,但在原始样本中有较大的值,因此通过最小化该损失函数即可搜寻到对抗样本;
- 约束扰动表示所添加扰动仅需满足约束即可。
数据集和被攻击模型:
- 目前该领域最常用的数据集为MNIST, CIFAR 和ImageNet;
- 最常用的被攻击模型为LeNet, VGG, AlexNet,GoogLeNet, CaffeNet, and ResNet等
优化算法(Zeroth-Order Optimization)
该算法是一个典型的黑盒攻击算法,它采用对称伤差来估测海森矩阵和梯度,不需要获取目标模型的梯度信息
模型输入:需要input+每一个类别的概率
模型的训练:
损失函数如上,左边保证对抗样本与真实input的相似,右边保证对抗样本能导致目标模型出错,具体如下:-
目标
- 有目标攻击:
- 无目标攻击
- 有目标攻击:
-
DNN model,如果目标model的数据集类似mnist,图片较小,就不会使用到attack-space hierarchical attack importance sampling
- attack-space :计算梯度时的坐标选取范围变小 (299x299x3->32x32x3)
- hierarchical attack:与上面的相反,小范围的坐标选取可能会没 有效果(32x32x3->64x64x3)
- importance sampling:有时经过了attack-space,坐标范围还是非 常的大,此时就需要根据坐标的重要性进行 选取(一般认为,图片中间位置的像素较边 角的重要)
-
随机选取一个坐标
-
估计梯度, h h h非常小, e i ei ei是一个只有i-th元素等于1的偏置向量。第二个只在牛顿法中才会使用。
- loss function (一阶和二阶)
- loss function (一阶和二阶)
-
获得了上面的近似梯度后,利用一阶或二阶方法(如下红框内的adam方法和newton method)来获取best梯度
- ZO Adam
- ZO Adam
https://zhuanlan.zhihu.com/p/57733228
参考文献
[1] Yuan, Xiaoyong, et al. "Adversarial examples: Attacks and defenses for deep learning."IEEE transactions on neural networks and learning systems(2019).[2] Goodfellow I J, Shlens J, Szegedy C. Explaining and harnessing adversarial examples. arXiv preprint arXiv:1412.6572, 2014.
[3] Szegedy, C., Zaremba, W., Sutskever, I., Bruna, J., Erhan, D., Goodfellow, I., & Fergus, R. (2013). Intriguing properties of neural networks.arXiv preprint arXiv:1312.6199.
[4] Moosavi Dezfooli S M, Fawzi A, Frossard P. Deepfool: a simple and accurate method to fool deep neural networks//Proceedings of 2016 IEEE Conference on Comput
[5]Moosavi-Dezfooli, S. M., Fawzi, A., Fawzi, O., & Frossard, P. (2017). Universal adversarial perturbations.arXiv preprint.er Vision and Pattern Recognition (CVPR). 2016 (EPFL-CONF-218057).
[6] Carlini, Nicholas, and David Wagner. “Towards evaluating the robustness of neural networks.” Security and Privacy (SP), 2017 IEEE Symposium on. IEEE, 2017.
[7] A. Rozsa, E. M. Rudd, and T. E. Boult, “Adversarial diversity and hard positive generation,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. (CVPR) Workshops, Jun. 2016, pp. 25–32.
-
针对数据集Fashion_MNIST的白盒、黑盒攻击
2019-04-07 16:07:11假设我们图像的数组为x,模型已经正确分类到y_true,这时我们需要进行白盒攻击,微小地修改图像数组x使得模型将其分类到y1 给模型输入(x,y1)获取到模型在输入x上的梯度,这里的x便是图像的数组表示 依据梯度,... -
白盒测试与黑盒测试
2016-06-14 16:00:21测试 白盒 黑盒 -
对抗攻击算法总结论文集合(白盒、黑盒、目标检测、对抗训练等)
2022-04-09 17:00:55文章目录一、白盒攻击1.FGSM2.JSMA:3.DeepFool:4.CW:5.PGD:二、黑盒攻击1.单像素攻击2.基于查询3.基于迁移4.基于替代5.其他三、对抗攻击与目标检测四、对抗训练&鲁棒性 只是一个自己看过的论文小汇总,还不能... -
白盒攻击算法
2021-06-25 16:41:39对抗样本按照攻击成本可以分为白盒攻击,黑盒攻击和物理攻击。 白盒攻击 白盒攻击需要完整获取模型,了解模型的结构以及每层的具体参数,攻击者可以控制模型的输入,甚至对输入数据进行比特级别的修改 黑盒攻击 ... -
图像分类白盒对抗攻击技术总结
2022-04-20 16:34:53白盒攻击技术2.1 基于直接优化得攻击方法2.1.1 基于 Box-constrained L-BFGS 的攻击2.1.2 C&W 攻击2.2 基于梯度优化的攻击方法2.2.1 FGSM 攻击(基于一步梯度计算的对抗样本生成算法)2.2.2 I-FGSM 攻击(迭代的... -
渗透测试类型(白盒测试、黑盒测试)和漏洞扫描器
2021-03-13 13:10:44黑盒测试:模拟一个对客户组织一无所知的攻击者所进行的渗透攻击。 所以很容易理解,黑盒测试要比白盒测试困难很多。 1、白盒测试 使用白盒测试,需要和客户组织一起工作,来识别出潜在的安全风险。 白盒测试的最大... -
understanding_adversarial_examples:一个Jupyter笔记本,其中包含基于梯度的对抗攻击...包括白盒和黑盒攻击
2021-04-30 10:14:48谅解_adversarial_examples 一个Jupyter笔记本,其中包含基于梯度的对抗攻击如何在二维中起作用的演练-包括白盒和黑盒攻击。 [待定-即将推出] 了解雅各布增强训练技术如何帮助替代模型学习与受害者模型相同的决策... -
元学习提高黑盒对抗攻击
2022-04-04 15:53:061 引言 在深度学习中,黑盒攻击是对抗攻击中最难的一种攻击方式,它不像白盒攻击可以获取到足够的模型和数据集的知识,它只能依靠简单的输入和输出映射信息来对未知模型进行攻击,所以,这就导致了黑盒攻击攻击... -
ODS:输出多样化采样,有效增强白盒和黑盒攻击的性能 | NeurIPS 2020
2021-04-17 00:21:22作者 |慕苏【简介】本文提出了一种新的采样策略——输出多样化采样,替代对抗攻击方法中常用的随机采样,使得目标模型的输出尽可能多样化,以此提高白盒攻击和黑盒攻击的有效性。实验表明,该种采样... -
浅谈渗透中的黑盒测试白盒测试
2021-02-16 11:24:06黑盒测试依靠测试人员的能力探测获取目标系统的信息,作为一次黑盒测试的渗透测试者,通常不需要找出目标系统的所有安全漏洞,而只需要尝试找出并利用可以获取目标系统访问权代价最小的攻击路径,并保证不被检测到。... -
黑盒攻击很难?元学习提高"黑盒对抗攻击"成功率
2022-04-13 01:11:19关注公众号,发现CV技术之美本文分享论文『Boosting Black-Box ...详细信息如下:论文链接:https://arxiv.org/abs/2203.14607 01 引言在深度学习中,黑盒攻击是对抗攻击中最难的一种攻击方式,它不像白盒攻击可... -
深度学习中的对抗攻击与防御
2021-01-20 05:11:03为此,详细分析了当前经典的对抗攻击手段,主要包括白盒攻击和黑盒攻击。根据对抗攻击和防御的发展现状,阐述了近年来国内外的相关防御策略,包括输入预处理、提高模型鲁棒性、恶意检测。最后,给出了未来对抗攻击与... -
渗透测试类型(白盒测试、黑盒测试)和漏洞扫描器
2017-08-23 13:50:41渗透测试的两种基本类型:白盒测试与黑盒测试。白盒测试,有时也被称为“白帽测试”,是指渗透测试者在拥有客户组织所有知识的情况下所进行的测试;黑盒测试则设计为模拟一个对客户组织一无所知的攻击者所进行的... -
网络与系统安全4.1 基于随机搜索的黑盒对抗攻击方法
2022-05-30 21:22:08神经网络模型容易受到对抗样本的攻击,根据攻击者是否能获取到模型内部参数可以把攻击类型分为白盒攻击和黑盒攻击。 白盒攻击比较常见,但其对目标模型的威胁程度要远低于黑盒攻击。 传统黑盒攻击往往都是基于梯度... -
无线路由器挖洞方法大比拼:白盒 or 黑盒?
2021-03-25 00:37:53聚焦源代码安全,网罗国内外最新资讯!编译:奇安信代码卫士团队ZDI 发布博客文章,比较了黑盒和白盒挖洞方法的优劣。如下是对文章的编译。去年,我们披露了两个认证绕过漏洞 ZDI-20-11... -
对抗样本可转移性与黑盒攻击_学习笔记
2018-09-07 09:27:48对抗样本可转移性与黑盒攻击深入研究 论文原文: Delving into Transferable Adversarial Examples and Black-box Attacks 文章主要研究对抗样本的可转移性以及黑盒攻击下的特性,并且关注点不再只是停留在小... -
黑盒测试,白盒测试与灰盒测试的比较和区别
2021-01-04 12:00:30黑盒测试 黑盒测试是一种软件测试技术,它可以检查软件的功能,而不会窥视其内部结构或编码。黑盒测试的主要来源是客户声明的要求规范。 在此方法中,测试人员选择一个函数并提供输入值以检查它的功能,并检查该函数... -
文本对抗样本攻击与防御技术综述
2021-09-11 17:39:45对抗样本攻击与防御是最近几年兴起的一个研究热点,攻击者通过微小的修改生成对抗样本来使深度神经网络预测出错。生成的对抗样本可以揭示神经网络的脆弱性,并可以修复这些脆弱的神经网络以提高模型的安全性和鲁棒性。 -
XSS跨站脚本攻击剖析与防御
2018-04-28 14:05:32第4章 发掘XSS漏洞,着重以黑盒和白盒的角度介绍如何发掘XSS漏洞,以便帮助读者树立安全意识。第5章 XSS Worm,讲解了Web 2.0的最大威胁——跨站脚本蠕虫,剖析了Web 2.0相关概念和其核心技术,这些知识对于理解和... -
黑盒对抗攻击论文《DaST: Data-free Substitute Training for Adversarial Attacks》阅读感想
2021-01-13 23:09:13先介绍对抗攻击的初级内容:目前的图像对抗攻击分类:1、一般化攻击,这类攻击根本不需要知道要被攻击的神经网络是啥样的,产生的对抗样本具有通用的对抗性,多采用滤波的方式实现攻击,如:《Noise is Inside Me!... -
FGSM 从论文到代码 pytorch 白盒非目标攻击
2021-07-18 20:48:55文章大意:最早提出对抗样本的概念,并提出基于梯度的白盒攻击方法——快速梯度符号方法即FGSM,方法比较简单,容易实现,重点在于提出了对抗攻击的概念。 文章背景 摘要:大意是作者发现微小的扰动能够使得模型分类... -
低查询成本的高效黑盒模型攻击算法_小黑盒价值
2020-08-18 17:08:57华东师范大学硕士学位论文 摘 要 随着...类肉眼难以分辨的细微扰动就可以使深度神经网络以极高的置信度将图片内容 判断为错误的类别造成极大的危害 现有的深度神经网络攻击主要分为两种一种是白盒模型攻击其假定的条 -
繁凡的对抗攻击论文精读(一)CVPR 2019 基于决策的高效人脸识别黑盒对抗攻击(清华朱军)
2021-11-20 10:57:10《繁凡的论文精读》(一)CVPR 2019 基于决策的高效人脸识别黑盒对抗攻击(清华朱军) Efficient Decision-based Black-box Adversarial Attacks on Face Recognition -
软件测试-黑盒测试,白盒测试,灰盒测试
2021-11-03 10:08:38白盒测试也称逻辑测试或内部结构测试,是针对单元内部如何进行工作的测试。白盒测试法检查程序内部逻辑结构,对所有逻辑路径进行测试,主要用于软件或程序验证。 要正确使用白盒测试的代码覆盖方法,就要从代码分析... -
暴力的黑盒对抗样本攻击 -- ZOO
2021-04-06 20:26:52文章目录介绍强行计算...这是一个黑盒的对抗样本攻击,如上图所示,攻击者只能进行输入,并且获得置信度的输出,不能对模型进行反向传播。 有关于白盒的对抗样本攻击,可以查看我这篇文章 不能反向传播,会导致对抗 -
黑盒测试、白盒测试、手工测试与自动化测试等比较
2019-06-13 09:23:14黑盒测试把产品软件当成是一个黑箱子,只有出口和入口,测试过程中只要知道往黑盒中输入什么东西,知道黑盒会出来什么结果就可以了,不需要了解黑箱子里面是如果做的。 即测试人员不用费神去理解软件里面的具体...