首页 > 其他分享 >内容安全复习 7 - 对抗攻击与防御

内容安全复习 7 - 对抗攻击与防御

时间:2024-06-22 20:59:57浏览次数:26  
标签:复习 训练 攻击 网络 目标 对抗性 ytrue 防御 对抗

文章目录

概述

  • 动机
    (1)不仅要在实验室中部署机器学习分类器,也要在现实世界中部署;实际应用
    (2)分类器对噪声具有鲁棒性和在“大多数情况下”有效是不够的。
    (3)想要鲁棒的分类器用来对付用户愚弄分类器的输入;面对人类的恶意
    (4)特别适用于垃圾邮件分类、恶意软件检测、网络入侵检测等。
  • 攻击 AI
    在这里插入图片描述
    上图描述了一些攻击 AI 的方式以及后果。
    (1)对抗攻击会导致破坏模型完整性;
    (2)漏洞挖掘和利用会导致破坏模型可用性;
    (3)模型萃取和数据窃取会导致破坏模型机密性。
  • 逃逸攻击
    指攻击者在不改变目标机器学习系统的情况下,通过构造特定输入样本以完成欺骗目标系统的攻击
  • 投毒攻击
    攻击者通过篡改训练数据或添加恶意数据来影响模型训练过程,最终降低其在预测阶段的准确性。

攻击

对抗性攻击的目的

对抗性攻击的目的是通过在原始图像中添加人眼无法察觉的扰动,使得模型的预测结果出错。

攻击的损失函数

在这里插入图片描述

  • 训练损失: L t r a i n ( θ ) = C ( y 0 , y t r u e ) L_{train}(\theta)=C(y^0,y^{true}) Ltrain​(θ)=C(y0,ytrue)。这个公式表示训练神经网络的损失函数,其中 y 0 y^0 y0 是神经网络对原始输入 x 0 x^0 x0 的输出, y t r u e y^{true} ytrue 是该输入的真实标签例如,猫。 C C C 衡量 y 0 y^0 y0 和 y t r u e y^{true} ytrue 之间的差异。
  • 无目标攻击损失: L ( x ′ ) = − C ( y ′ , y t r u e ) L(x')=-C(y',y^{true}) L(x′)=−C(y′,ytrue)。在这种情况下, y ′ y' y′ 是对 x ′ x' x′ 的输出。无目标攻击的目的是使 y ′ y' y′ 偏离 y t r u e y^{true} ytrue,即使预测与真实标签差异增大。因此我们取负的 C C C,最大化估计差异。
  • 有目标攻击损失: L ( x ′ ) = − C ( y ′ , y t r u e ) + C ( y ′ , y f a l s e ) L(x')=-C(y',y^{true})+C(y',y^{false}) L(x′)=−C(y′,ytrue)+C(y′,yfalse)。有目标攻击的目的是使 y ′ y' y′ 更接近一个错误的估计 y f a l s e y^{false} yfalse,不同与无目标,有目标攻击多了“目的地”例如,把猫的图片分类为鱼。第一项 − C ( y ′ , y t r u e ) -C(y',y^{true}) −C(y′,ytrue) 希望输出值远离真实标签、第二项 C ( y ′ , y f a l s e ) C(y',y^{false}) C(y′,yfalse) 希望输出接近错误标签。
  • 约束: d ( x 0 , x ′ ) ≤ ϵ d(x^0, x') \le \epsilon d(x0,x′)≤ϵ。具体如下图,右上角展示了 x ′ x' x′ 和 x 0 x^0 x0 之间的距离 Δ x \Delta x Δx。图中下方展示了两种衡量距离的方法。 L 2 − L2- L2− 范数和 L − ∞ L-\infty L−∞ 范数。
    在这里插入图片描述

如何攻击

就像训练一个神经网络,但是网络参数 θ \theta θ 被 x ′ x' x′替代。
在这里插入图片描述

  • x ∗ = a r g min ⁡ d ( x 0 , x ′ ) ≤ ϵ L ( x ′ ) x^*=arg \min_{d(x^0, x') \le \epsilon} L(x') x∗=argmind(x0,x′)≤ϵ​L(x′),这个公式指:在约束条件下 d ( x 0 , x ′ ) ≤ ϵ d(x^0, x') \le \epsilon d(x0,x′)≤ϵ 原始输入与扰动图像之间的距离不超过ϵ下,找到使 L ( x ′ ) L(x') L(x′) 最小的 x ′ x' x′。
  • 由此可以看出,在对抗性攻击种,我们的目标是:希望生成一个扰动图像,在这个扰动图像接近原始图像且满足约束条件的前提下,最小化损失。最小化损失L(x')在上面的有目标攻击和无目标攻击中,都体现为C更大,即更加偏离真实标签,攻击的效果越好。
  • 下方展示了 f i x ( x t ) fix(x^t) fix(xt)中距离的计算方法。
    在这里插入图片描述

FGSM

FGSM 全称 Fast Gradient Sign Method,快速梯度逐步算法。
在这里插入图片描述
在这里插入图片描述

黑盒与白盒

  • 在前面的攻击中,我们固定网络参数 θ \theta θ 而寻找最优的输入 x ′ x' x′。如果攻击时,我们需要知道 θ \theta θ,那么这就叫做白盒攻击

  • 白盒攻击需要 θ \theta θ,那么如果我们不公布(绝大多数 API 都不提供网络参数),是否安全呢?
    不会,因为存在黑盒攻击。

  • 在黑盒攻击中:
    (1)如果我们有目标网络的训练数据,可以使用这些数据训练一个代理网络 (proxy network)。这个代理网络模仿目标网络的行为,攻击者可以在代理网络上进行对抗样本生成,然后将这些对抗样本应用于目标网络。用目标的网络数据生成网络,在网络上模拟,然后在模拟网络上生成AE(对抗性样例)。
    (2)如果我们没有目标网络的训练数据,则需要获取一些目标网络的输入和预测输出,以此来构建代理网络,然后进行和训练数据生成代理网络后一样的攻击。和(1)的区别就是,是用目标网络的输入和预测输出生成的代理网络。

真实世界的攻击

单像素攻击

防御

对抗性攻击无法通过正则化,dropout 和模型集成来防御。

防御可以分为两种:主动防御和被动防御。

被动防御

在不修改模型的情况下找到攻击图像。

  • 去噪
    除非对手不知道去噪的存在,否则还是可能受到白盒攻击。
  • 随机化
    (1)如果攻击者不知道随机化存在,则效果最佳;
    (2)如果知道,由于随机模式过多,防御依然有效。
  • 梯度掩码/隐藏
    治标不治本,本质是提高了攻击者搞清楚弱电的难度,模型本身稳定性并未提高。

主动防御

训练一个对对抗性攻击具有鲁棒性的模型。

  • 对抗训练
    这种方法对训练目标算法 A 有效,但对未被训练的目标算法 B 无效。
  • 防御性蒸馏
    (1)通过梯度生成的对抗性样例攻击性降低;
    (2)随蒸馏温度提升,对抗性样例生成困难,提升模型鲁棒性;
    (3)对黑盒攻击无能为力;
    (4)仅适用于基于概率分布的 DNN 模型。

标签:复习,训练,攻击,网络,目标,对抗性,ytrue,防御,对抗
From: https://blog.csdn.net/infinity_heaven/article/details/139883971

相关文章

  • 红队内网攻防渗透:内网渗透之内网对抗:横向移动篇&入口切换&SMB共享&WMI管道&DCOM组件&I
    红队内网攻防渗透1.内网横向移动1.1WMI进行横向移动1.1.1利用条件:1.1.1利用详情1.1.1.1wmic1.1.1.1.1正向shell上线1.1.1.1.2反向shell上线1.1.1.2cscript(不建议使用)1.1.1.3wmiexec-impacket1.1.1.4cs插件1.2SMB横向移动1.2.1利......
  • 机器学习课程复习——决策树
    Q:这三个算法哪一个可以用来做回归?CART Q:这学期学过的分类算法有哪些?支持向量机、决策树、k近邻、逻辑回归、朴素贝叶斯、ANN(注意区分分类算法与聚类算法)Q:计算题根据以上条件,生成相应的决策树 1.ID3算法2.C4.5算法3.CART算法Q:剪枝的逻辑?(由于决策树容易......
  • FFT & NTT 复习笔记
    快速变换设原多项式为\(F(x)=\sum_{i\in[0,n)}a_ix^i\),其中\(n=2^k,k\in\mathbbZ^+\)。我们要求\(\foralli\in[0,n),\hata_i=F(t_i)\),其中\(t\)是一个长度为\(n\)且两两互不相同的序列。显然\(F\)可以被一组\(\hata,t\)唯一确定,即点值表示......
  • 计算机基础知识复习资料整理
    小林coding:https://xiaolincoding.com/reader_nb/计算机基础整体深入理解计算系统B站地址:https://www.bilibili.com/video/BV1iW411d7hd操作系统主要组成(学习顺序)内存管理进程管理文件系统输入输出管理网络系统入门课程B站清华大学操作系统+《现代操作系统......
  • 【抽代复习笔记】21-群(十五):循环群引理及定义
    例4:证明,如果σ=(i1i2…ik)是Sn中的一个k-循环,而r∈Sn,则rσr^(-1)也是一个k-循环,且rσr^(-1)=(r(i1),r(i2),…,r(ik))。证:①设σ=(i1i2…ik)=(i1ik)(i1ik-1)…(i1i2),则rσr^(-1)=r(i1i2…ik)r^(-1)=r(i1ik)(i1ik-1)…(i1i2)r^(-1)=r(i1ik)[r^(-1)r](i1ik-1)[......
  • 算法人生(23):跟着“生成对抗网络”思维走出“拖延”
    生成对抗网络(GANs)是一种深度学习模型,其核心思想是通过两个神经网络——生成器和判别器的对抗过程来学习数据分布,进而生成新的、类似真实数据的样本。它基本原理基于一个博弈论框架,其中生成器尝试生成尽可能逼真的数据样本以欺骗判别器,而判别器则试图区分真实数据与生成器生成......
  • 复习提纲:《计算机网络(自顶向下方法)第七版》
    第一章计算机网络和因特网线路交换(Circuitswitching)中的时分复用(TimeDivisionMultiplexing(TDM))与频分复用(FrequencyDivisionMultiplexing(FDM))首先通过信令系统,在网络核心中为两者之间的通信分配一条独享的线路。由于两个交换节点之间的链路带宽较大,可以采用时分......
  • [模式识别复习笔记] 第7章 聚类
    1.聚类给定样本集\(D=\{\bm{x}_1,\bm{x}_2,...,\bm{x}_n\}\),\(\bm{x}_i\in\mathbb{R}^d\)。通过聚类将\(n\)个样本划分为\(k\)个簇划分\(\mathcalC=\{C_1,C_2,...,C_k\}\),使得:\[C_i\capC_j=\emptyset,\\foralli\not=j\且\\......
  • [模式识别复习笔记] 第6章 PCA
    1.主成分分析PCAPCA:寻找最能够表示原始数据的投影方法,对数据进行降维,除去冗余的信息。——不考虑类别1.1PCA主要步骤计算散布矩阵\(S\)(或者样本的协方差矩阵)\[S=\sum_{i=1}^{n}(\bm{x}_i-\bm{\mu})(\bm{x}_i-\bm{\mu})^{\text{T}}\]其中\(\bm{\mu}=\frac......
  • [模式识别复习笔记] 第5章 贝叶斯分类器
    1.贝叶斯分类器1.1贝叶斯公式假设有一个试验的样本空间为\(S\),记\(B_1,B_2,\ldots,B_c\)为\(S\)的一个划分,\(A\)为试验的条件,且\(P(A)\not=0\),则:\[P(B_i|A)=\frac{P(B_i)P(A|B_i)}{P(A)}=\frac{P(B_i)P(A|B_i)}{\sum_{j=1}^{c}P(B_j)P(A|B_j)}\]\(P(B_i)......