新技术论坛
搜索
查看: 590|回复: 0
打印 上一主题 下一主题

安全通论,红客篇

[复制链接]
  • TA的每日心情
    开心
    2016-10-18 06:23
  • 签到天数: 72 天

    连续签到: 1 天

    [LV.6]常住居民II

    扫一扫,手机访问本帖
    楼主
    跳转到指定楼层
    发表于 2016-3-4 11:25:43 来自手机 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
    杨义先,钮心忻

    北京邮电大学信息安全中心



       摘要:本文揭示了红客的本质,即,维护系统的“安全熵”值,避免其突变,当然,如果能够“使熵减少或不增”就最理想。特别是通过对熵的时变微分方程的讨论,分析了各种情况下,系统的安全态势以及红客的业绩评价等。



    (一)前言



    红客是被黑客逼出来的,没有黑客就不需要红客。但遗憾的是,黑客不但没有绝迹,而且还越来越多,越来越凶!

    在某种意义上,黑客代表“邪恶”,因此,黑客的行动都是在隐蔽环境下进行的,不敢对外公开。从而,黑客获胜的主要法宝就是技术和其它“鸡鸣狗盗”。

    在某种意义上,红客代表“正义”,因此,红客的行动都是公开的,他们可以光明正大地运用包括法律、法规、标准、管理、技术、教育等一切手段来捍卫系统的安全。

    从表面上看,红客的行动包括(但不限于)安装防火墙,杀病毒,抓黑客,加解密,漏洞扫描,制定标准,颁布(或协助颁布)相关法律、法规,而且还经常删贴、封网、雇水军等等。但是,这些都是错觉,如果要单一地考虑红客的这些防卫措施的话,那么,《安全通论》将无立足之地,而且系统的安全防守工作将越来越乱。过去,也许因为没有搞清红客的本质,所以,红客才做了许多事倍功半的事情,甚至还做了不少负功,既没有能挡住黑客的攻击,又把自己的阵营搞得一团糟,甚至逼反了自己的“友军”。比如,其中,最典型的“化友为敌”的代表,恐怕就是新浪小编们的随意删帖,因为,它激发了更多的负面情绪,甚至严重干扰了红客的正常防护活动。其实,红客的本意,是只想做一件事,那就是:维护系统的熵(或秩序)!或更准确地说,最好能够“减少系统的熵”,次之是要“阻止系统的熵被增大”,至少要确保“系统的熵不要过快地增大”。因此,能够维护好熵的红客,才是合格的红客;否则,就是差红客,甚至是帮倒忙的红客。

    由于红客可以使用黑客的所有技术,所以,本文不再重复文献[1-8]中提到过的所有技术部分,而是充分运用《系统论》[9],来揭示红客的本质。



    (二)安全熵及其时变性研究



    考虑由红客、黑客、用户、网络和服务等组成的系统。由“热力学第二定律”,可知该系统的熵(或秩序,或组织性)一定会随着时间的流逝,而不断地自动增大;由[1],这意味着“系统的不安全性”也在不断地增大;特别是黑客的存在,使得这种“熵增大”的趋势更明显,因为,黑客的实质就是搞破坏,就是要搞乱系统的既定秩序;而与之相反,红客的目的就是要有效阻止这种系统崩析(耗散)趋势,确保用户能够按既定的秩序在系统中提供或获得服务。当然,用户的误操作(或者红客的乱操作)也会在实际上搞乱系统,增大系统的熵,不过,为了清晰起见,本文不考虑诸如用户误操作、红客和黑客失误等无意行为所造成的乱序问题。

    由于有红客、黑客等人为因素的影响,所以,网络系统显然不是“封闭系统”(如果只考虑设备,那么,系统就可看成是“封闭系统”,实际上,它还是一个“有限系统”),更由于红客和黑客连续不断的攻防对抗,使得系统熵(秩序的度量)不断地被增大和缩小,即,系统的熵始终是时变的。

    设系统的全部不安全因素为q1,q2,…,qn,记t时刻系统的熵为Q(t,q1,q2,…,qn)或者简记为Q(t)。当Q(t)=0时,系统的熵达到最小值,此时系统的安全性就达到最大值(因为,根据文献[1]“安全”是“负熵”,或者说“不安全”是“熵”)。当然,一般情况下,熵总是正数。若Q(t)随时间而增长,即微分dQ(t)/dt>0,那么,系统将变得越来越不安全;反之,若Q(t)随时间而减少,即微分dQ(t)/dt<0,那么,系统将变得越来越安全。因此,下面我们将Q(t)称为“安全熵”。而红客的目标就是要努力使得“安全熵”越来越小,黑客则想使“安全熵”越来越大。

    对每个i(i=1,2,…,n),记Q(t,qi)(更简单地Qi(t)或Qi)为在“只存在不安全因素qi”的条件下,在t时刻,系统的“安全熵”。那么,各个Qi(t)的时变情况便可以用如下n个方程(称为方程组1)来描述:

    dQ1/dt=f1(Q1,Q2,…,Qn)

    dQ2/dt=f2(Q1,Q2,…,Qn)

    ……..

    dQn/dt=fn(Q1,Q2,…,Qn)

    这里,任何一个Qi的变化都是所有其它各Qj(j≠i)的函数;反过来,任一Qi的变化也承担着所有其它量和整个方程组1的变化。

    下面针对一些特殊情况来仔细讨论方程组1。

    如果各个Qi不随时间而变化,即,dQi/dt=0,i=1,2,…,n(或者说f1(Q1,Q2,…,Qn)=f2(Q1,Q2,…,Qn)=…= fn(Q1,Q2,…,Qn)=0),那么,此时系统的“安全熵”就处于静止状态,即系统的安全性既不变坏,也没有变得更好。如果从系统刚刚投入运行开始(即,t=0),红客就能够维护系统,使其“安全熵”永远处于静止状态,那么,这样的红客就是成功的红客!

    设Q*1,Q*2,…,Q*n是在静止状态下,方程组1的一组解。对每个i,i=1,2,…,n,引入新的变量Q’i=Q*i-Qi,那么,方程组1就转变成了如下方程组2:

    dQ’1/dt=f’1(Q’1,Q’2,…,Q’n)

    dQ’2/dt=f’2(Q’1,Q’2,…,Q’n)

    ……..

    dQ’n/dt=f’n(Q’1,Q’2,…,Q’n)

    如果这个方程组可以展开为泰勒级数,即,得到如下方程组3

    dQ’1/dt=a11Q’1+a12Q’2+…+a1nQ’n+a111Q’12+a112Q’1Q’2+a122Q’22+…

    dQ’2/dt=a21Q’1+a22Q’2+…+a2nQ’n+a211Q’12+a212Q’1Q’2+a222Q’22+…

    ……..

    dQ’n/dt=an1Q’1+an2Q’2+…+annQ’n+an11Q’12+an12Q’1Q’2+an22Q’22+…

    该方程组的通解是:

    Q’1=G11eλ(1)t+G12eλ(2)t+…+G1neλ(n)t+G111e2λ(1)t+…

    Q’2=G21eλ(1)t+G22eλ(2)t+…+G2neλ(n)t+G211e2λ(1)t+…

    ……..

    Q’n=Gn1eλ(1)t+Gn2eλ(2)t+…+Gnneλ(n)t+Gn11e2λ(1)t+…

    此处各个G都是常数,λ(i), i=1,2,…,n,则是如下nXn阶矩阵,B=[bij],的行列式关于λ的特征方程的根,即,方程det(B)=0的根,这里B=[bij],bii=aii-λ, i=1,2,…,n,而bij=aij,当i≠j时。

    上述特征方程的根λ(i)既可能是实数,也可能是虚数。下面考虑几种特别情况:

    情况1),如果所有的特征根λ(i)都是实数且是负数,那么,根据通解式可知,各Q’i将随着时间的增加,而趋近于0(因为e-∞=0),这说明红客正在节节胜利,因为,“安全熵”变化率趋于0意味着:各个不安全因素正被逐步控制,系统的秩序也正在恢复之中!

    情况2),同理,如果所有的特征根λ(i)都是复数且负数在其实数部分,那么,根据通解式可知,各Q’i也随着时间的增加,而趋近于0。这时,红客也正在节节胜利中!

    由于Qi=Q*i-Q’i,i=1,2,…,n,所以,根据方程组2可知,在情况1)和2)中,Qi逼近静态值Q*i,此时,系统所处的安全平衡状态是稳定的,因为,在一个足够长的时间内,系统愈来愈逼近静态,系统的“安全熵”变化率始终逼近于0,即,系统的秩序是长期稳定的。

    情况3),如果有一个特征根λ(i)是正数或0,那么,系统的平衡就不稳定了,即,系统的安全性也不稳定了,红客就有可能失控。

    情况4),如果有一些特征根λ(i)是正数和复数,那么,系统中就包含着周期项,因为,指数为复数的指数函数具有这样的形式:

    e(a-ib)t=eat[cos(bt)-isin(bt)],这里i为虚数单位

    此时,系统的安全状态会出现周期性的振动,即,会出现红客与黑客之间的反复“拉锯战”,虽然双方会各有胜负,但是,总体趋势是向着对红客不利的混乱和不安全方向发展。

    为了使上面的讨论更加形象,现在考虑n=2这个简单,即,此时系统的不安全因素主要有两个(比如,“黑客攻击”和“用户操作失误”这两个宏观的因素),那么,方程组1就简化为:

    dQ1/dt=f1(Q1,Q2),和dQ2/dt=f2(Q1,Q2)

    在可以展开为泰勒级数的假设下,它的解为:

    Q1=Q*1-G11eλ(1)t-G12eλ(2)t-G111e2λ(1)t-…

    Q2=Q*2-G21eλ(1)t-G22eλ(2)t-G211e2λ(1)t-…

    其中Q*1和Q*2是使f1=f2=0而得到的Q1和Q2的静态解,G是积分常数;而λ(1)和λ(2)是特征方程(a11-λ)(a22-λ)-a12a21=0的根,而此二次方程的根为

    λ=C/2±√[-D+C2/4],其中,C=a11+a22, D=a11a22-a12a21,√表示平方根

    于是,可知

    1),若C<0,D>0,E=C2-4D>0,那么,特征方程的两个根都是负的,因而,系统就会随着时间的伸展,趋向于稳定在静止状态(Q*1,Q*2),这时,红客将居于主动地位,系统的安全尽在掌控中。

    2),若C<D,D>0,E=C2-4D<0,那么,特征方程的两个根都是带有负实数部分的复数解。此时,随着时间的发展,系统的“安全熵”(Q1,Q2)就会将沿一个螺旋状的曲线轨迹而逼近静止状态(Q*1,Q*2),这时,对红客来说,也是有利的。

    3),若C=0,D>0,E<0,那么,特征方程的两个解都是虚数,因此,方程组的解中就包含有周期项,就会出现围绕静止值的摆动或旋转,即,代表“安全熵”的点(Q1,Q2)会围绕静止态(Q*1,Q*2)画出一条封闭的曲线,这时,红客与黑客难分胜负,双方不断地进行着“拉锯战”。

    4),若C>0,D>0,E>0,那么,特征方程的两个解都是正数,此时,完全不存在静态。或者说,此时系统更混乱,红客完全失控,只能眼睁睁地看着系统最终崩溃!

    更进一步,下面再来考虑n=1这种最简单的情况,此时,系统的不安全因素只有一个(比如,黑客的破坏)。于是,方程组1就简化为方程:dQ/dt=f(Q)。若将f(Q)展开为泰勒级数,那么,就得到如下方程:

    dQ/dt=a1Q+a11Q2+…

    此泰勒式中未包含常数项,因为,我们可以假定:“不安全因素”不会自然发生,即,系统刚刚被使用(t=0)的那一刻,系统不会出现安全问题。

    如果粗略地只保留该泰勒级数中的第一项,那就有dQ/dt=a1Q,这说明:系统的安全态势将完全取决于常数a1是正还是负。如果为a1为负,那么,“安全熵”整体上向减少的方向发展,即,系统的安全性会越来越好,对红客有利;如果a1为正,那么,“安全熵”整体上向增加的方向发展,即,系统的安全性会越来越差,对红客不利。而且,系统的这种越来越安全(或越来越不安全)的态势遵从指数定律:Q=Q0ea(1)t,其中,Q0表示初始时刻(t=0)时,系统的“安全熵”;而a(1)是a1的等价表达式,这主要是为了简化公式中足标体系的复杂度。(这是因为Q=Q0ea(1)t是方程dQ/dt=a1Q的解)。该指数定律表明:如果系统的安全态势在向好的方面发展,那么,变好的速度会越来越快;反之,如果系统的安全态势在向坏的方面发展,那么,变坏的速度也会越来越快,甚至瞬间崩溃!

    如果再精细一点,即,保留上述泰勒级数的前两项,于是,就有方程,

    dQ/dt=a1Q+a11Q2

    该方程的解为Q=[a1cea(1)t]/[1-a11cea(1)t]。注意,随着时间的延伸,该解所画出的曲线就是所谓的“对数曲线”,它是一个趋向于某极限的S形曲线,也就是说,此时,从安全性角度来看,系统的变好和变坏,还是有“底线”的。

    下面,我们再换一个角度来看系统安全,即,跳出系统,完全以旁观的第三方身份,来看红客与黑客之间如何“道高一尺魔高一丈”地“水涨船高”:

    此时,影响系统安全性的因素只有两个(即,红客努力使系统变得更安全,使“安全熵”不增;而黑客却努力要使系统不安全,增加“安全熵”),而且,假如这两个因素之间还是相互独立的,即,各方都埋头于自己的“攻”或“守”(实际情况也基本是这样,因为,短兵相接时,双方根本顾不过来考虑其它事情),或者说,红客(黑客)的“安全熵”随时间变化的情况与黑客(红客)的“安全熵”无关,而且还只考虑“主要矛盾”,即,此时在方程组3中,每个方程式里就只保留第1项,其它系数都全部为0。于是,方程组3被简化为:

    dQ1/dt=a1Q1和dQ2/dt=a2Q2

    解此方程组,可得其解为:Q1=c1ea(1)t和Q2=c2ea(2)t,从中再解出时间t,可得:t=[lnQ1-lnc1]/a1=[lnQ2-lnc2]/a2。设a=a1/a2,b=c1/(c2)a,那么就有一个重要的公式,即,

    Q1=b(Q2)a

    它说明红客与黑客的“安全熵”(Q1和Q2)彼此之间是幂函数关系,比如,红客维护系统安全所贡献的“安全熵”是黑客破坏系统安全所增大“安全熵”的幂函数。为更清楚起见,我们将上面的公式组dQ1/dt=a1Q1和dQ2/dt=a2Q2再重新写一次如下,即,

    {[dQ1/dt][1/Q1]}:{[dQ2/dt][1/Q2]}=a或者dQ1/dt=a(Q1/Q2)(dQ2/dt)

    这里,前一部分说明:在只考虑红客和黑客的“安全熵”(Q1和Q2)的前提下,红客使其“安全熵”的相对增长率([dQ1/dt][1/Q1])与黑客的“安全熵”的相对增长率([dQ2/dt][1/Q2])之间的比值竟然是常数!而后一部分,更出人意料地表示:红客“安全熵”的时变率(dQ1/dt)与黑客“安全熵”的时变率(dQ2/dt)之间的关系,竟然是如此简洁!

    若a1>a2,即,红客“安全熵”Q1的增长率大于黑客“安全熵”Q2的增长率,那么,a=a1/a2>1,它表明红客对系统整体安全性走势的掌控力更强;反过来,若a1<a2,即,红客“安全熵”Q1的增长率小于黑客“安全熵”Q2的增长率,那么,a=a1/a2<1,它表明红客对系统安全性走势的掌控力不如黑客。

    再考虑泰勒级数方程组3的另一种情况:各个不安全因素彼此之间相互独立(比如,由文献[1]可知,当这些不安全因素就是系统安全“经络图”中的全体“元诱因”时,这些不安全因素之间就是相互独立的),此时,方程组3就简化为,对i=1,2,…,n,有:

    dQi/dt=ai1Qi+ai11(Qi)2+ai111(Qi)3+…

    此时,不安全因素对系统“安全熵”的整体影响,就等于每个不安全因素对系统“安全熵”各自影响的累加,即,此时有“整体等于部分和”。

    方程组3还有一种特殊情况值得单独说明,即,假如有某个不安全因素qs的泰勒展开式系数在各个方程中都很大,而其它不安全因素的泰勒系数却很小甚至为0,那么,不安全因素qs就是不安全因素的主导部分,系统的不安全性可能主要是由它而引发,因此,这样的不安全因素qs就应该是红客关注的重点,要尽力避免它成为系统崩溃的“导火索”。



    (三)结束语



    经过前面八篇文章(见文献[1]-[8])的努力,我们已经奠定了《安全通论》的前三块重要基石,即,安全经络(见文献[1])、安全攻防(见文献[2-6])、黑客实质(见文献[7-8])。本文开始研究第四块重要基石:红客!

    虽然红客与黑客在技术方面几乎没有区别,甚至他们的技术可以彼此通用,但是,作为系统安全的正、反两种力量的代表,他们在角色方面的差别还是很大的,因此,值得专门设立篇幅来进行研究。

    如果说黑客的手段杂乱无章,那么,红客的手段更是一团乱麻(甚至红客还会“好心办坏事”,即做一些本该黑客搞的破坏),如何找到一根线索来把“这团乱麻”理清,这真是一个严峻的挑战。幸好我们偶然从文献[1-8]中发现了一个总是伴随着《安全通论》的一个“幽灵”,即,“熵”,而且,运气更好的是:经过分析,“熵”竟然与红客的本质密不可分,而且还是解开“乱麻”的重要线索。贝塔朗菲的《一般系统论》(见文献[9])对系统熵进行了恰到好处的研究,因此,被本文深度参考。文中的许多思路和方法都依赖于“系统论”,只不过贝塔朗菲用它们去研究生物的新陈代谢系统,而我是用它们来研究网络系统;贝塔朗菲研究的生物熵,我研究的是“安全熵”而已。

    本文揭示了红客的实质是“维护系统的安全熵”,并详细分析了系统“安全熵”的多种情况下的时变特性。但是,到底应该怎样做才能够有效地阻止“安全熵”变大的趋势呢?这当然是一个重要而又困难的问题,过去全球安全界的同行们做了许多“埋头拉车”的具体工作,但是,在“抬头看路”方面还真的做得不够,比如,

    都说安全是“三分技术,七分管理”,但是,真正落实到行动上时,大家在“安全管理”方面花费的精力远远未达到“七分”。因此,我们希望能够在《安全通论》中,专门开辟“管理篇”来详细研究“如何用管理的办法,来维护系统的安全熵”;
    及时反馈也是红客维护“安全熵”并在必要时对其进行微调的重要办法,因此,维纳的《控制论》在《安全通论》中也应该有特殊的地位,但是,突破口确实很难找。

    对红客的研究肯定不仅仅限于本文的这些内容,但是,为了尽快搭建起《安全通论》的核心骨架,吸引全球尽可能多的安全专家来一起“挖金矿”,我们不得不先放弃一些细节,比如,其实开放系统的“安全熵”永远不会处于平衡状态,而是会维持在所谓的“稳态”上,这与有机体的新陈代谢相同,而且,同样具有“异因同果性”,即,由不同的原因导致相同的结果,比如,或者是因为“黑客太弱”,或者是因为“红客太强”,而使得系统的安全无恙;反过来,或者是因为“黑客太强”,或者是因为“红客做了负功”,而使得系统崩溃。系统一旦达到“稳态”,就必定表现出“异因同果性”。



    特别说明:这本该是一篇高影响因子的SCI论文,但是,如今国人已被SCI绑架了,所以,老夫想带头摆脱SCI的束搏,故将此文在这里发表。本文欢迎所有媒体转载。



    (四)参考文献


    [1]杨义先,钮心忻,安全通论(1)之“经络篇”,见杨义先的科学网实名博客(http://blog.sciencenet.cn/blog-453322-944217.html  )

    [2]杨义先,钮心忻,安全通论(2):攻防篇之“盲对抗”,见杨义先的科学网实名博客,(http://blog.sciencenet.cn/blog-453322-947304.html )

    [3]杨义先,钮心忻,安全通论(3):攻防篇之“非盲对抗”之“石头剪刀布游戏”,见杨义先的科学网实名博客,(http://blog.sciencenet.cn/blog-453322-948089.html )

    [4]杨义先,钮心忻,安全通论(4):攻防篇之“非盲对抗”之“童趣游戏”,见杨义先的科学网实名博客,(http://blog.sciencenet.cn/blog-453322-949155.html )

    [5]杨义先,钮心忻,安全通论(5):攻防篇之“非盲对抗”收官作及“劝酒令”,见杨义先的科学网实名博客,(http://blog.sciencenet.cn/blog-453322-950146.html)

    [6]杨义先,钮心忻,安全通论(6):攻防篇之“多人盲对抗”,见杨义先的科学网实名博客,http://blog.sciencenet.cn/blog-453322-954445.html

    [7]杨义先,钮心忻,安全通论(7):黑客篇之“战术研究”,见杨义先的科学网实名博客,http://blog.sciencenet.cn/blog-453322-956051.html

    [8]杨义先,钮心忻,安全通论(8):黑客篇之“战略研究”,见杨义先的科学网实名博客,http://blog.sciencenet.cn/blog-453322-958609.html

    [9]冯.贝塔朗菲(著),林康义、魏宏森等(译),一般系统论:基础、发展和应用,清华大学出版社,1987年6月,第1版。
    高级模式
    B Color Image Link Quote Code Smilies

    本版积分规则

    手机版|Archiver|开发者俱乐部 ( ICP/ISP证:辽B-2-4-20110106号 IDC证:辽B-1-2-20070003号 )

    GMT+8, 2025-1-10 22:06 , Processed in 0.181726 second(s), 19 queries .

    X+ Open Developer Network (xodn.com)

    © 2009-2017 沈阳讯网网络科技有限公司

    快速回复 返回顶部 返回列表