精华内容
下载资源
问答
  • 历史多数攻击——共识攻击介绍

    万次阅读 2019-05-14 10:26:56
    历史多数攻击(Past Majority Attacks)指的是历史上对某区块链拥有控制权(即共识节点中的大多数)的组织或个人,利用自己历史上存在的对该网络的控制权,从这个历史时间点开启新的分叉,但是这种分叉一般无法影响到...

    历史多数攻击——共识攻击介绍

    历史多数攻击(Past Majority Attacks)指的是历史上对某区块链拥有控制权(即共识节点中的大多数)的组织或个人,利用自己历史上存在的对该网络的控制权,从这个历史时间点开启新的分叉,但是这种分叉一般无法影响到原来主网络上的资产,只是fork出一条新的区块链。

    •在PoS模型下,当某个组织在某个历史区块拥有控制权时,其可以重构,从而危及他人的权益。然而让重构的区块被网络所接受,攻击者需进一步重构一条新的分支来取代当前分支。

    •PoW模型下,修改历史区块需重新计算有效哈希,并构建足够长的分支以取代当前分支,这需要非常庞大并且超过现有P0W网络整体算力的基础上才有可能。

    •BFT类模型下,亦需要多数共识节点均同意方可构造新的分支。因此在POW和BFT类模型下,此攻击退化为51%攻击。

    •BFT模型下,攻击者需要控制过去时间点上2/3 以上的节点,才可以控制整个共识网络,才可以发动历史多数攻击。

    共识攻击

    如果矿工(或矿池)想要利用自身拥有的哈希算力进行欺骗或攻击的话,比特币的共识机制(什么是共识机制)至少在理论上是有可能被攻击的。正如我们所看到的,共识机制依赖大多数矿工出于个人利益而愿意诚实行事的假设前提。但是,如果一个矿工或矿工集团能获得全网较大比例的挖矿能力时,他们就可以通过攻击共识机制从而瓦解比特币网络的安全性和可用性。

    值得注意的是,共识攻击只会影响将来的共识,或者最多也只能影响到“不久前”(过去的几十个区块)的时段。比特币的账本随着时间推移将越来越稳定。虽然在理论上允许任何深度的分叉存在,但在实践中,要迫使非常深的分叉产生需要极其巨大的算力,因此老的区块实际上是不可变的。共识攻击也不会威胁私钥和签名算法(ECDSA)的安全。共识攻击无法盗取比特币,无法不带签名地使用比特币,也不能转移比特币,不能改变过去的交易或所有权记录。共识攻击只能影响最近的区块,并且通过拒绝服务攻击来破坏将来的区块生成。

    一种针对共识机制的攻击叫作“51%攻击”。这是由一群控制了51%以上的全网哈希算力的矿工,合谋发起的对比特币的攻击。他们拥有开采大部分区块的能力,可以故意在区块链中制造“分叉”、进行双重支付交易,或者针对特定交易或地址发起拒绝服务攻击。分叉/双重支付攻击指的是攻击者通过在某个区块之下创建分叉,形成新的主链,使之前已确认的区块变得无效。只要拥有足够的算力,攻击者就可以将连续6个甚至更多区块变为无效,从而使那些经过6次确认、已被认定为是无法篡改的交易变为无效状态。另外,需要注意的是,双重支付只能应用于攻击者自己创建的交易,因为他们只能对这些交易进行有效签名。如果通过使交易失效,攻击者可以得到不可逆的交换品,或者可以购买产品而不用付钱,那么对自己创建的交易进行双重支付是有利可图的。

    51%攻击(大多数攻击)——共识攻击介绍

    先来看看大多数攻击(Most Attacks)在PoW共识模型中的表现。若某个组织掌握了整个网络的大多数算力(51%),那么该组织构造一个有效区块的平均时间会少于其他所有的矿工,从而在相同的时间内该组织可以构造出更多的区块,并以最长的分支被网络接受为最终确认区块。这样整个区块链处于该组织的控制之下。

    显而易见,网络规模越大,总算力越强,掌握大多数算力的难度亦越高。

    在PoS模型中,51%攻击转变为掌握网络中的大多数股权,其攻击的代价从算力(电力)变为资产。

    在BFT类共识模型中,控制了1/3的共识节点即可阻止共识,控制了2/3的共识节点即可操作共识结果。由于此类模型中共识节点通常是一个特定的范围,其安全性依赖于选择共识节点时的审査机制,以及对节点的安全保护。

    长程攻击——共识攻击介绍

    长程攻击(Long-Range Attacks)来源于用户不得不撤回保证金的权利。这意味着攻击者可以从任意长度的距离建立一个分叉而不用担心被削减。一旦保证金被解除绑定,激励不从某个高度区块前进行长距离投票就被取消了。换句话说,当超过2/3的验证者解除了绑定,那么他们就可以恶意地创造包含之前验证者集的第二条链,这可能导致任意的交易。

    解决方法如下。

    •忽视从那些当前没有保证金存款的节点发出的共识信息,能够解决或规避长程攻击问题。解除绑定保证金必须要经过一个“解冻”期。解除绑定之后,代币需要数周到数月的“解冻”时间,用以实现“同步性”前提(即延迟的消息)。

    •禁止在N个块之前恢复,其中N是保证金的长度。该规则可使任何长程分叉无效。

    此类攻击仅针对PoS共识。

    贿赂攻击——共识攻击介绍

    贿赂攻击(Bribery Attacks)指的是敌手方故意使用数字货币或者法币贿赂共识节点,使其工作在特定的区块或者分叉上,来产生对敌手方有利的分叉链。

    •PoW算法:由于每个节点都可以自由地加入,有资格参与共识生成区块,因此这种攻击在策略上是可行的。

    •PoS、DPoS算法:参与共识的节点需要占据一定的股份权益,因此实施这种攻击需要贿赂绝大多数权益节点。

    •DBFT共识算法:在容忍f个节点错误的情况下共有3f+l个共识节点,因此贿赂f+1个节点后能使共识暂停出块,贿赂2f+l以上节点时才能按照对敌手方有利的方式出块。

    无利害关系攻击——共识攻击介绍

    首先要引入一个概念,即剑手(Slasher)协议。如果你在同一个层级的分叉上同时签署了两份协议,那么你就会失去你所能得到的区块奖励。

    无利害关系(Nothing At Stake Attacks)问题指的是,权益证明机制中的矿工最佳的策略是在所有的叉上进行挖矿,因为签名的制造非常便宜。

    解决方法:将保证金加入剑手协议意味着无利害关系问题被正式解决。只有当验证节点缴纳存款保证金的时候,它签署的承诺才有意义。当一个保证金节点在相同高度处创建或签署两个区块时,则其存款保证金就会被削减,并且这种行为会被认为是“明显不良的行为”。苛刻以及允许这种惩罚的条件,对于所有的BFT协议都是有帮助的。此类攻击仅针对PoS共识。

    无法同步攻击——共识攻击介绍

    无法同步攻击(Desynchronization Attacks)就是让一个节点无法与网络中的其他节点保持统一步调。比如,让节点A收到区块的时间总是要比其他节点晚一些,这样即使A成功记账,也会远远落后于其他节点,从而不被网络接受,也就造成了节点A无法获得其算力预期的收益。

    这个通常是PoW、PoS、DPoS的问题;PBFT或者DBFT因为记账节点首先会选择高性能的服务器,并且通常并不会直接开放在开放性网络中,而是由同步节点作为连接对象,因此共识节点很难产生无法同步的问题。通常达成共识并即刻落账。

    交易拒绝攻击——共识攻击介绍

    在交易拒绝攻击(Transaction Denial Attacks)中,对手的目的是阻止某笔交易成功完成。例如,对手可能想要瞄准一个特定账户,并防止账户持有人发布交易。

    这个问题可以分2个阶段来分析。

    1)在进入P2P网络之前,任何共识算法都是一样的,如果发出交易的节点在这个时间点的网络上是被控制的,那么这笔交易是没办法流转到P2P网络的。

    2)在进入P2P网络之后,P2P网络会发散式地广播这笔交易到所有的共识节点。于是这个问题就退化成了51%攻击,即是否控制了共识的问题(参见51%攻击)。

    日蚀攻击——共识攻击介绍

    日蚀攻击(Eclipse Attacks)是一种针对比特币网络的攻击。每个比特币网络节点默认最多允许被117个其他节点连接(输入连接),同时最多可以向其他8个节点发起连接(输出连接)。

    日蚀攻击的目标就是比特币节点的接入连接。通过控制某一个比特币节点的接入连接来达到控制比特币输入的消息来源,使这个节点仅跟恶意节点通信。

    日蚀攻击中,攻击者只需40%的算力就可以达到51%攻击的效果。假设比特币网络分为2个算力为30%的节点和一个算力为40%的节点,如果攻击者拥有算力为40%的节点,他就能通过日蚀攻击来达到分割这两个30%算力的节点,使之不能正常出块。这样攻击者拥有的40%算力的节点就能控制整个网络。

    日蚀攻击的实施方法如下。

    1)攻击者可以通过某种方法把正常的比特币节点的输出连接都连接到攻击者控制的恶意节点,同时比特币节点的输入连接都被恶意节点连满。那如何做到让正常的比特币节点都连接到恶意的节点呢?在比特币节点中有两张表,一张叫作NewTable,用来保持当前节点所感知到的网络中其他节点的地址;另一张叫作TriedTable,用于保存曾经连接过的节点。比特币节点每次建立输出连接的,都是在这两张表中选择一个时间戳较新的节点连接。通过控制僵尸网络不断地去连接这个比特币节点,即可达到刷新这两张表的目的,使得这两张表保存了大量的恶意节点的地址信息。

    2)攻击者再通过DDoS攻击等方法,让这个比特币节点重启。这样这个比特币节点连到的就都是攻击者控制的恶意节点了。

    从本质上说,日蚀攻击是一种针对P2P网络的攻击。这种攻击方法与共识算法关系不大,理论上讲对PoW、PoS、DbFT等共识算法都有效,但是它非常依赖于节点在P2P网络处理上的漏洞,因此实施攻击不具备普适性。

    权利压迫攻击——共识攻击介绍

    权利压迫(Grinding Attacks)是指攻击者在获得记账权的时候,利用自己手中的权利实施一些计算或者一些操作让系统的随机数产生偏斜,来增加自己下一次获得记账权的可能性,可能的方式如下。

    方式一:一个验证者通过一些参数组合或者找到一个特殊的参数来增加自己被选择,产生一个有效块的可能性。

    方式二:利用对当前块的控制能力去影响下一个块。

    举一个不真实的例子,块N+1的随机性依赖于块N的签名,如果一个验证者在当前块中一直指定自己是下一个块的验证者,便永远控制住了整个系统。

    方式三:通过跳过块的方式,控制出块的随机性。

    由于N+1的随机性依赖于N的验证者,验证者得以通过跳过自己创建的块的方式来控制出块的随机性。当然这会丢失一个块的奖励,但是随之而来的,他可能拥有下面数十个块高于平均数的随机性控制能力。

    PoS提出了两种解决方案。

    (1)第一种方法

    权利压迫的方式一和方式二比较容易解决,一般的做法是要求验证者事先抵押自己的资产,并且也不使用那些容易被操纵的信息来产生随机数。对于方式三,可以采用以下的策略:首先考虑使用基于秘密共享或者确定性门限函数的方案,并且验证者协同生成随机值,那么除非大多数验证者勾结,否则这些方案对于所有操作都是强大的。

    (2)第二种方法

    使用验证者事先提交信息(即发布sha3(x))的密码方案,在块中发布x,随后将x添加到随机性池中。这里有两个理论攻击方式。

    1)在承诺时间处理x。这是不切实际的,因为随机性结果会考虑到许多参与者的价值,如果他们中的一个是诚实的,那么产出将是一个统一的分配结果。均匀分布与任意多个任意偏置分布异或,仍然给出均匀分布。

    2)有选择地避免发布块。这种攻击花费了一个块奖励机会的成本,并且因为该方案阻止任何人看到除了下一个以外的任何未来验证者,所以它几乎无法提供多于一个块的奖励。唯一的例外情况是,如果验证程序跳过,则下一个验证程序再运行,如果验证程序的内容是相同的,那么这会是一个严重的问题。对此可以通过明确的跳过惩罚,来加大惩罚更多的跳跃。

    3)Iddo Bentov的“多数信标”是一种解决方案,它通过获取由其他信标生成的前N个随机数的位的大部分来产生随机数(即,如果大部分源数字中的第一个比特为1,则结果的第一比特位为1,否则为0;如果源数字中的大部分第二个比特为1,则结果的第二个比特为1,否则为0等)。总而言之,存在许多己知的权利压迫解决方案。这个问题更像差分密码分析,而不是

    停滞的问题——一个让利益相关者、设计者最终理解

    并且现在知道如何克服的麻烦,而不是一个根本的、不可避免的缺陷。

    •PoW:记账权的争夺依赖于算力,因此不存在权利压迫。

    •PoS:存在权利压迫,需要加入其他机制来避免。

    •DPoS:DPoS其实更多的是一种理念,具体要看delegate的实现。如果不是确定的随机性,依然会存在权利压迫的可能性。如果是按照顺序执行的,则没有这个问题。

    •PBFT:确定性的记账人顺序,公平的随机性,因此不存在权利压迫。

    •DBFT:引入代议制的选举委托机制,在公平的基础上推选出可信的确定性的记账人列表,并按照顺序来验证出块,因此不存在权利压迫问题。

    Sybil攻击

    2018-11-17 15:18

    公有链中,在没有身份认证机构的情况下,用户创建新身份或新节点是不需要代价的,攻击者可以很容易地伪造身份加入网络,并试图去获取大量的ID。在掌握了若干节点或节点身份之后,他们可以随意做出一些恶意的行为,比如发出虚假节点加入请求消息,误导节点之间正确路由来降低区块链网络节点査找效率;发布虚假资源或是故意不响应请求来消耗节点之间的链接资源等。

    图5-2演示了在比特币网络中,大量的Sybil节点被注入到网络中。这些节点可以假冒比特币的全节点,故意不响应请求,使得其他节点必须为此等待,从而拖慢整个区块链网络的速度;而且像手机钱包(比特币钱包介绍)这种SPV节点,都需要通过全节点才能正常收发比特币,当SPV节点连接到这种假冒的全节点时,它们就无法正常工作了。

    比特币网络中Sybil攻击示意图

     

    双花攻击——共识攻击介绍

    双花攻击(Double Spending Attacks)是指同一个数字货币可以花费一次以上。

    区块链中,每一笔交易都是一个请求。区块链会验证这个交易的请求,并检査其所使用的资产的有效性、是否使用了己花费的资产来决定是否提交进入共识,并广播成功验证的账本。如果系统对双花攻击没有防范,将会是一件非常可怕的事情。

    这也是每一个区块链必须要解决的问题,在不同的共识体系下解决方案也会不同。

    (1)PoW共识算法(查看什么是pow

    在PoW体系下,系统同时允许存在多条分叉链(什么是区块链分叉),每一条链都可以声称自己是正确的。但是有一个最长有效原理,即不管在什么时候,最长的那条区块链被认为是拥有最多的工作量,称之为主链。当然,如果其他的分支链在接下来获得了更多的工作量,并超越了原先主链的长度,那么主链就会变成这条新链,而之前的主链则会被认为是无效的链,而且在这个分叉上所进行的交易会被认为是无效的,转而以新的主链为主。比特币目前大概需要12个区块的确认时间,才能基本确定某笔交易的不可篡改,因为要超越这一工作量将是非常困难的,并且攻击的代价会随着区块数的增加变得越来越困难。

    在这个过程中有一种可能,在比特币的众多分支中,假设在第一条链分支上花费了一笔钱,再假设黑客能操控算力,让第二条链能拥有更多的算力并超越了第一条链的长度,那么第一条链的交易便相当于回滚了,黑客就能重新再拥有第一条链上花费掉的比特币,这个过程就是比特币上的双花。

    因此,PoW共识算法要求等待一定的区块确认数,当工作量达到几乎无法超越、回滚的状态时,才可以确认为资产的成功转移。

    (2)PoS、DPoS、DBFT共识算法

    此类算法是确定性的,交易一旦确认就不可逆转,因此没有双花攻击。

    双花攻击的特例是重放攻击,即攻击者“重放”他在网络上“窃听”或在区块链中“看到”的消息。由于这样会导致整个验证实体重做计算密集型的动作和/或影响对应的合约状态,同时它在攻击侧又只需要很少的资源,因此重放攻击也是所有区块链必须要解决的一个问题。如果是一笔支付交易,那么问题就更大了,重放可能会导致在不需要付款人的参与下,多于一次的支付。

    对于UTXO模型,要防止重放攻击,共识节点只需要对收到的交易检査其Hash是否在账本中存在,或者检査交易的input是否已经被花费即可。

    对于Balance模型,在交易中放置一个nonce值,要防止重放攻击,共识节点只需要对收到的交易检査其Hash是否在账本中存在即可。

    其他区块链专业名词:

    多重签名——典型的数字签名技术

    HMAC——典型的数字签名技术

    时间戳服务器

    拜占庭将军问题是什么

     

     

    展开全文
  • 我们在平常的深度学习模型开发中,一般关注的重点在模型指标上,比如ACC、F1、Bleu等。但其实还有另一方面需要注意,那就是模型攻防,特别是在人脸识别等安全领域。什么是模型攻击(model attack)呢?以图片分类为...

    1 什么是模型攻防

    1.1 攻防定义

    我们在平常的深度学习模型开发中,一般关注的重点在模型指标上,比如ACC、F1、Bleu等。但其实还有另一方面需要注意,那就是模型攻防,特别是在人脸识别等安全领域。什么是模型攻击(model attack)呢?以图片分类为例,如下图。原始图片经过分类模型,可以正确识别是tiger cat。我们在图片上加入某些一定分布的噪声后,模型可能就会把它错误识别为其他类别,比如keyboard。

    image.png

    1.2 攻击条件

    模型攻击必须满足两个条件

    1. 在原始图片上加入一定噪音,通过模型后,predict和真实label尽量远,和目标假label尽量近。loss如下  
      1. image.png

    2. 加入的噪音必须在一定范围内,使得人类分辨不出来,这个称为限制constrain。数学表达如下    

    image.png

     

    1.3 攻击限制constrain

    对于噪音距离定义,有两种方式

    1. L2距离,也就是假样本和真样本的均方差。

    2. 最大距离,假样本和真样本,差别最大的点

     

    实际应用中,一般取最大距离。相比L2平均距离和最大距离,最大距离差别过大,容易被人类分辨出来。

     

    1.4 模型攻击场景

    除了视觉领域外,NLP、语音识别均可以做模型攻击。实际场景中,比如人脸识别,有人做了一副特殊的眼镜,带上它后,就会识别为其他人。如下图

    image.png

    模型攻击会对业务的安全性造成很严重的影响,因此模型防御(model defense)十分关键。模型攻击分为白盒攻击、黑盒攻击。了解如何做模型攻击,有利于掌握模型防御。

     

    2 模型攻击 model attack

    模型攻击分为白盒攻击、黑盒攻击。

     

    2.1 白盒攻击

    白盒攻击指的是,在知道模型结构和参数的情况下,设计方法进行攻击。常用的方法仍然是梯度下降。此时我们的神经网络参数是固定的,我们要调整的是样本输入x,通过梯度下降来找到最合适的样本x。同时假样本必须满足最大距离限制。模型攻击的loss可以定义为

    image.png

    则目标函数为

    image.png

    常用的方法如下

    1. FGSM (https://arxiv.org/abs/1412.6572)
    2. Basic iterative method (https://arxiv.org/abs/1607.02533)
    3. L-BFGS (https://arxiv.org/abs/1312.6199)
    4. Deepfool (https://arxiv.org/abs/1511.04599)
    5. JSMA (https://arxiv.org/abs/1511.07528)
    6. C&W (https://arxiv.org/abs/1608.04644)
    7. Elastic net attack (https://arxiv.org/abs/1709.04114)
    8. Spatially Transformed (https://arxiv.org/abs/1801.02612)
    9. One Pixel Attack (https://arxiv.org/abs/1710.08864)

     

    以Fast Gradient Sign Method (FGSM)为例,它通过梯度下降的方法,调整样本x,来优化目标函数,使得上面定义的loss最小。其假样本的构造方法为,在真实样本每个点x上,要么加上ε,要么减去ε。如下

    image.png

    2.2 黑盒攻击

    白盒攻击方法我们懂了,那我们是不是不公布模型参数,就可以防御了呢。显然不是,我们还可以进行黑盒攻击。怎么进行黑盒攻击呢。我们可以利用数据,自己训练一个模型,称为proxy model。然后对这个proxy model进行白盒攻击。利用得到的样本来攻击真实模型,一般效果也不错。

    这儿关键问题有两个

    1. 怎么得到训练proxy model的数据。一方面可以利用与此模型任务类似的数据,比如图像分类问题,可以使用ImageNet数据。另一方面,可以利用要攻击的模型,来构造数据,predict标签。
    2. 怎么知道proxy model的结构。一般来说,同一类任务,即使proxy model和真实model结构不同,效果也OK的。当然proxy model和真实model结构相同,效果会更好。下面是不同分类模型,proxy model构造的假样本,在真实model上的正确率。有图可见,两者模型越接近,模型攻击效果越好。

    image.png

    3 模型防御

    模型防御分为被动防御和主动防御

     

    3.1 被动防御

    被动防御通过不修改原始模型,来进行防御。主要方法有模型前加入filter,输入样本进行padding、伸缩变化等。

    在真实模型前加一个filter,filter可以是一些平滑化处理等。通过这个filter,输入样本会进行一些变化,从而使得攻击样本在模型上失效。

    image.png

    对输入样本,进行适当的padding,伸缩变化等,也可以在不影响真实模型predict的情况下,使得攻击样本失效。

     

    3.2 主动防御

    主动防御思想为,先主动进行模型攻击,找到可以攻击的假样本。然后把他们加入到训练数据中,重新训练模型。从而使得模型在这些假样本上,也能正确predict。这个方法有点像data augment。

    展开全文
  • 网络攻击技术

    2019-11-03 20:09:53
    网络攻击一般模型(四个阶段)

    网络攻击的目标

    系统数据

    系统型攻击的特点:攻击发生在网络的网络层
    数据型攻击的特点:攻击发生在网络的应用层

    网络攻击的一般模型(四个阶段)

    在这里插入图片描述

    网络攻击的手段

    1、漏洞攻击
    2、社会工程学攻击
    3、拒绝服务攻击
    4、欺骗攻击
    5、口令攻击

    网络攻击分类:

    主动
    被动

    防止网络攻击

    入侵检测系统和网络防御的一些技术

    进行网络防御的主要手段有哪些?

    展开全文
  • 在过去,很多防火墙对于DDoS攻击的检测一般是基于一个预先设定的流量阈值,超过一定的阈值,则会产生告警事件,做的细一些的可能会针对不同的流量特征设置不同的告警曲线,这样当某种攻击突然出现的时候,比如SYN...

    在过去,很多防火墙对于DDoS攻击的检测一般是基于一个预先设定的流量阈值,超过一定的阈值,则会产生告警事件,做的细一些的可能会针对不同的流量特征设置不同的告警曲线,这样当某种攻击突然出现的时候,比如SYN flood,此时网络中SYN的报文会超过阈值,说明发生了SYN flood攻击。

    但是当网络中的报文速率本身是这条曲线的时候,曲线自身就一直在震荡,在这样的曲线上如何检测异常?如何根据阈值检测攻击?真正的攻击又是哪一个点?


    这个攻击几乎肉眼无法分辨。如果不是那个时间点真的出了攻击,也很难从曲线上找出来。要放大了才能看出来。


    所有上述的攻击,人的肉眼可以发现出来,基本上都是因为人在观察曲线的时候对于曲线的平滑和不平滑的交界处非常敏感。攻击检测算法第一位的需求是要把人肉眼可以观察出来的波动,锯齿,突刺都检测出来。

    除了上面的这些检测方法之外,还有一类,就是从整体上看历史流量情况,然后根据这个时刻的流量峰值来判断。

    这种方法对历史流量进行学习,生成业务访问的流量模型,并将业务当前流量和模型作比较,出现明显偏差时就判断为DDoS攻击。这种方法对于流量比较稳定的业务比较有效。但是在我们实际的互联网业务中,发现检测效果非常的低,特别是云计算环境,每天的业务都不一样,因此检测效率较低。


    看起来,要实现一个高精度的检测系统,无外乎几个条件:
    1、采集目标IP的网络流量
    2、对关注的指标进行存储,并描绘成曲线
    3、对曲线进行攻击检测,在必要的时候告警通知运维人员

    如果要对其进行量化的话则主要是两个指标:
    1、误报率:在所有产生的告警中,有多少代表了真正的攻击
    2、敏感度:在所有真正的攻击中,有多少被检测系统发现

    为了降低误清洗率,我们又进一步的在alibeaver中提出了一种基于流量成分的检测算法,并且结合毫秒级的分光设备,实现了快速的ddos攻击检测。

    实际的算法可能有N多的公式、函数和流程,我不是一个理论工作者,这里只用一个简单的例子来说明:
    如下可以看到一个HTTP业务的正常情况和受攻击时的入方向流量成分。正常时的抓包:其中在协议层面上,SYN、ack、Fin、Rst、icmp等报文的比例在一定的范围之内。不管流量多大,只要业务不发生变化,其实总的比例都差不多。


    而我们观察一次该业务被攻击时候的抓包,可以发现攻击发生的时候,某些成分的比例会急剧上升,也许有人会挑战我,攻击者也可以完全的模拟正常业务的请求来跟服务器进行交互,这样你的检测算法也就没用了,但是事实上是,这样做攻击者需要真正的真实IP,而且真实的交互会更快的暴露自己,虽然也没法做到像正常业务交互那样真实。



    结论:这是一个典型的SYNflood攻击。通过对比正常情况和受攻击时的入口流量成分,可以看到攻击发生的时候网络中各个协议的占比发生了明显的变化

     

    摘自:https://xianzhi.aliyun.com/forum/mobile/read/77.html

    转载于:https://www.cnblogs.com/bonelee/p/7080390.html

    展开全文
  • 1 什么是模型攻防1.1 攻防定义我们在平常的深度学习模型开发中,一般关注的重点在模型指标上,比如ACC、F1、Bleu等。但其实还有另一方面需要注意,那就是模型攻防,特别是在人脸识别等安全领域。什么是模型攻击...
  • 文章目录网络攻击原理与常用方法网络攻击概述网络攻击概念概念攻击原理网络攻击模型攻击树模型MITRE ATT&CK模型网络杀伤链(Kill Chain)模型发展趋势网络攻击一般过程网络攻击常见技术方法端口扫描口令破解工作...
  • 高阶DPA攻击与一般DPA攻击相比较存在很多难点,包括建立正确的攻击模型、选取正确的攻击点、构造适当的组合函数以及提高攻击模型的信噪比等。通过对一种经典的掩码方案进行分析,逐一阐述在高阶DPA攻击中如何解决...
  • CDN流量放大攻击思路

    2015-08-18 22:55:28
    首先,为了对CDN进行攻击,我们必须清楚CDN的工作原理,这里我们再来简单介绍一下CDN的工作模型。CDN的全称是Content Delivery Network(内容分发网络),通过在网络各处的加速节点服务器来为网站抵挡恶意流量,把正常...
  • 什么是 DDoS 攻击

    2021-01-15 10:01:13
    一般而言,DDoS 攻击可按其攻击的开放系统互连 (OSI) 模型的层级进行隔离。攻击最常发生在网络层(第 3 层)、传输层(第 4 层)、表示层(第 6 层)和应用层(第 7 层)。 DDoS 攻击分类 在考虑抵御这些攻击...
  • Prometheus安全模型

    2019-11-23 12:25:53
    Prometheus是一个复杂的系统,有许多组件并与其他系统集成。它可以部署在各种受信任和不受信任的环境中。...本页描述Prometheus的一般安全假设和一些可以通过配置启用的攻击向量。 对于任何复杂的系统,都不可...
  • AI安全之投毒攻击

    2020-08-08 08:21:58
    AI安全之投毒攻击数据投毒定义适应场景:一般解决办法: 数据投毒 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本...
  • 一.模型假设 通常在构建安全多方计算协议时,需要在一定的情景下进行。故需要确定一个模型。在不同情景下实现安全的难度...所以构建模型时我们一般规定一个(t,n)门限攻击者结构:参与者总数n,攻击者最多能收买t个参与
  • •网络攻击概念•网络攻击模型•网络攻击发展演变 2.2 网络攻击一般过程 •隐藏攻击源 •收集攻击目标信息 •挖掘漏洞信息 •获取目标访问权限 •隐蔽攻击行为 •实施攻击 •开辟后门 •清除攻击痕迹 2.3 网络攻击...
  • 2.1.2 网络攻击模型 23 2.1.3 网络攻击发展 25 2.2 网络攻击一般过程 27 2.2.1 隐藏攻击源 27 2.2.2 收集攻击目标信息 28 2.2.3 挖掘漏洞信息 28 2.2.4 获取目标访问权限 29 2.2.5 隐蔽攻击行为 29 2.2.6 实施攻击 ...
  • 完成低轨卫星网络的分布式拓扑结构的构建,将每个网络节点看成是一个具有自修复能力的agent,并在不完全信息条件下,采用一般攻击策略研究信关站的分布、攻击强度、攻击力度、信息指数、自修复能力对低轨卫星网络抗毁...
  • HTTPS 的安全模型

    2016-06-22 03:23:17
    每周五部门内有一个分享会,这周轮到我了,不知道讲些什么东西,因为不全是码农,所以讲写程序讲不了(目前这水平估计也只能讲Hello World),刚好上次回答了一个关于网页嗅探中间人攻击的问题,我自己的回答一般般,...
  • 从信息泄露的一般性出发,提出了一种旁路信息分级泄露模型并给出其形式化描述。该模型将泄露信息分为算法级、指令级和逻辑门级泄漏。在此基础上,对不同泄露级别上采用的防御方法的安全性进行分析比较,最后对抗旁路...
  • 基于复杂网络理论,在对装备保障网络进行复杂网络描述的基础上,努力挖掘装备保障网络所面临威胁的特点,重点建立了不完全信息条件下的装备保障网络一般攻击策略模型,...
  • 实际在我们的网络安全模型一般假设所有的加密算法都是公开的,密码体系的安全性依赖于秘钥的安全性,秘钥只有发送方和接收方知道,一旦第三方得知这个秘钥,那他们的通信就被攻破了。 唯密文攻击:只知道...
  • 然而当以深度学习为主流的人工智能应用越来越广泛之后,陆续又出现了对于人工智能应用的攻击,主要分为两种:一是白盒测试,即深度学习的模型架构和参数都已经的情况下,这种场景的攻击一般可以进行参数的修改来达到...
  • 以太币的经济模型

    2020-03-10 12:22:55
    建立在以太坊(公链)上应用的每一个操作需要支付以太币,包括转账、智能合约中每一步操作,同时也防止了恶意程序的攻击 2.作为对矿工的奖励 Gas 1.GasPrice: 用户可以自定义的Gas单价,一般用Gwei作单位 2....
  • 应用对策论中的主从对策理论思想,描述系统防护计划制定者与攻击者在决策时相互制约的关系,并考虑设施容量限制这一现实因素对问题的影响,提出带容限的“防护-中断-再分配”三层主从对策模型. 通过设计“大需求量...
  • 描述模型和主要特点

    2020-05-04 13:09:53
    应具有能够对抗来自个人的、拥有很少资源(如 利用公开可获取的工具等)的威胁源发起的恶意 攻击一般的自然灾难(灾难发生的强度弱、持 续时间很短、系统局部范围等)、以及其他相当 危害程度的威胁所造成的关键...
  • 论文研究-基于不等概率抽样的不完全信息条件...以无标度网络为例对一般攻击信息参数组合进行了仿真分析,发现随机隐藏少量节点信息将大幅度提高复杂网络的抗毁性,获取少量重要节点的信息可以大幅度降低复杂网络的抗毁性.
  • 一般而言,DDoS攻击可按其攻击的开放系统互连 (OSI) 模型的层级进行隔离。攻击最常发生在基础设施层和应用层。针对不同的攻击必须采用不同的防护DDOS策略,这样才更为有效。首先我们来了解一下什么叫基础设施层攻击...
  • 1. 攻击面在安全攻防中的价值洛克希德-马丁公司的网络杀伤链(Kill Chain )模型描述的攻击过程一般包括7个阶段:侦察跟踪、武器构建、载荷投递、漏洞利用、安装植入、命令与控制、目...
  • 一般现有的内部威胁检测算法都会被转化为异常检测来做,我个人认为在内部威胁检测领域除了异常检测这一killing part之外,识别攻击动机以及区分异常和攻击也是重点(大型立flag现场:另一篇论文中了,我就写这个),...

空空如也

空空如也

1 2 3 4 5 ... 10
收藏数 198
精华内容 79
关键字:

一般攻击模型