white/black-box attack(黑盒白盒攻击基础)

2023-05-16

基本概念

攻击方法分类标准:

假正性攻击(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 (一阶和二阶)
      在这里插入图片描述
      在这里插入图片描述
  • 获得了上面的近似梯度后,利用一阶或二阶方法(如下红框内的adam方法和newton method)来获取best梯度

    • 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.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

white/black-box attack(黑盒白盒攻击基础) 的相关文章

随机推荐

  • 【ESP32+freeRTOS学习笔记之“ESP32环境下使用freeRTOS的特性分析(2-多核环境中的任务)”】

    目录 1 ESP32的双核对称多处理SMP概念2 涉及任务task的特殊性2 1 创建任务的特殊函数2 2 xTaskCreatePinnedToCore xff08 xff09 函数的解释 3 任务的删除4 总结 1 ESP32的双核对称
  • 【ESP32+freeRTOS学习笔记之“ESP32环境下使用freeRTOS的特性分析(3-多核环境下的调度)”】

    目录 1 不同核心上分别调度2 tick中断3 关于抢占4 关于同优级的任务按时间片调度5 空闲任务6 调度程序暂停7 启动和终止8 禁用中断9 总结 Vanilla FreeRTOS调度器是具有时间切片的固定优先级抢占调度器 xff0c
  • 【ESP32+freeRTOS学习笔记之“ESP32环境下使用freeRTOS的特性分析(4-多核下的临界区)”】

    目录 关于临界区API的更改临界区API的工作过程使用临界区的限制和注意事项 关于临界区API的更改 Vanilla FreeRTOS通过禁用中断来实现临界区域 xff0c 这可以防止抢占式上下文切换和在临界区域提供ISR xff08 中断
  • 【嵌入式环境下linux内核及驱动学习笔记-(8-内核 I/O)-信号驱动】

    目录 3 信号驱动的异步通知3 1 linux异步通知编程3 1 1 什么是信号3 1 2 信号的工作流程 3 2 应用层3 2 1 信号接收 signal函数3 2 2 应用层 fcntl 函数3 2 3 应用层信号驱动机制步骤 3 3
  • TensorFlow、Python、CUDA版本对应及下载链接

    关于版本对应 xff0c 官网很详细了 xff1a https tensorflow google cn install source 偷个懒 xff0c 我就把截图放这里吧 xff1a 1 Windows xff1a 2 Linux 和
  • 表格驱动编程在代码中的应用

    1 毕业设计中的使用 第一次使用表格驱动编程 xff0c 是在大学毕业设计的时候 做一个LL 1 的词法分析程序 xff0c 需要读取终结符 非终结符 以及推导公式 程序会根据以上信息生成FIRST集合和LAST集合 xff0c 然后根据递
  • 【嵌入式环境下linux内核及驱动学习笔记-(9-内核定时器)】

    目录 1 时钟tick中断等概念2 延时机制2 1 短延时 xff08 忙等待类 非阻塞害 xff09 2 1 1 ndelay 忙等待延迟多少纳秒2 1 2 udelay 忙等待延迟多少微秒2 1 3 mdelay 忙等待延迟多少毫秒 2
  • 【嵌入式环境下linux内核及驱动学习笔记-(10-内核内存管理)】

    目录 1 linux内核管理内存1 1 页1 2 区1 2 1 了解x86系统的内核地址映射区 xff1a 1 2 2 了解32位ARM系统的内核地址映射区 xff1a 2 内存存取2 1 kmalloc2 1 1 kfree2 1 2 k
  • 力扣刷题常用的c++库函数

    文章目录 1 xff0c max和min1 max函数2 xff0c min函数 2 xff0c sort函数sort 函数和lambda表达式 3 xff0c reverse 函数1 reverse函数可以反转一个字符串2 反转字符数组3
  • STM32学习(4)串口实验

    串口设置的一般步骤可以总结为如下几个步骤 xff1a 串口时钟使能 xff0c GPIO 时钟使能串口复位GPIO 端口模式设置串口参数初始化开启中断并且初始化 NVIC xff08 如果需要开启中断才需要这个步骤 xff09 使能串口编写
  • 【Docker】 入门与实战学习(Docker图形化工具和Docker Compose)

    文章目录 前言Docker图形化工具1 查看portainer镜像2 portainer镜像下载3 启动dockerui容器4 浏览器访问5 单机版Docker xff0c 直接选择Local xff0c 点击连接6 使用即可 Docker
  • 第三天_DOM

    第三天 Web APIs 学习目标 xff1a 能够使用removeChild 方法删除节点 能够完成动态生成表格案例 能够使用传统方式和监听方式给元素注册事件 能够说出事件流执行的三个阶段 能够在事件处理函数中获取事件对象 能够使用事件对
  • MySQL知识点整理汇总

    文章目录 前言一 数据库与SQL1 数据库与数据库管理系统2 关系数据库3 MySQL语句的种类4 MySQL语句的基本书写规则 二 MySQL语句的两大顺序1 MySQL 语句的书写顺序2 MySQL 语句的执行顺序 三 表的创建 删除与
  • 麦克科马克

    这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题 xff0c 有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中 居左 居右SmartyP
  • ROS-创建工作空间与功能包

    这里写目录标题 一 工作空间的组成与结构二 创建工作空间三 创建功能包四 设置环境变量五 功能包的package xml文件和CMakeLists txt文件 一 工作空间的组成与结构 工作空间的组成 xff1a src用于存放功能包源码
  • 「NeurIPS 2020」基于局部子图的图元学习

    点击蓝字 xff0c 设为星标 NeurIPS 2020 的接收论文 Graph Meta Learning via Local Subgraphs xff0c G META 是第一个使用局部子图来进行元学习的模型 Graph Meta L
  • Keras:Input()函数

    目录 1 Keras Input 函数 2 函数定义 xff1a 3 参数解释 4 例子 1 Keras Input 函数 作用 xff1a 初始化深度学习网络输入层的tensor 返回值 xff1a 一个tensor 2 函数定义 xff
  • JDBC入门笔记

    目录 1 xff0c JDBC概述 1 1 JDBC概念 2 xff0c JDBC快速入门 Java操作数据库的流程 2 1 编写代码步骤 3 JDBC API详解 3 1 DriverManager 3 2 Connection 3 2
  • 对抗样本入门详解

    文章目录 对抗样本基本原理对抗样本的发生对抗样本防御难在哪里对抗训练隐藏梯度defensive distillation 对抗样本的生成对抗样本生成方法介绍利用GAN生成对抗样本利用FGSM生成对抗样本代码复现 xff08 基于mnist
  • white/black-box attack(黑盒白盒攻击基础)

    基本概念 攻击方法分类标准 xff1a 假正性攻击 false positive 与伪负性攻击 false negative 假正性攻击 xff1a 原本是错误的但被被攻击模型识别为正例的攻击 eg 一张人类不可识别的图像 xff0c 被D