笔趣阁 > 超脑黑客 > 第388章 中间人攻击

第388章 中间人攻击

推荐阅读:神印王座II皓月当空夜的命名术天机之神局梦醒细无声神级幸运星我的大明星家族大国重工孤岛求生之重生狂蟒位面因果系统都市狐仙养成记

一秒记住【笔趣阁 www.xbiquge.to】,精彩小说无弹窗免费阅读!

    虽然windows3.1也已经设计了权限控制,并且将系统进行了分层,但是在这方面做得并不好,甚至可以说是相当的粗糙。

    不过这也可以理解,毕竟这个系统刚刚出来,并且他们当时为了能够尽快地推出,也非常的赶时间,将一些重要的功能首先实现了,对于普通用户来说,他们设计的权限控制体系已经基本能够满足要求了。

    系列,其权限控制就比这个要完善多了,稳定性也极大的增强。不过,同样的道理,他们想要对nt系统进行定制修改的难度也就更大了,总体说来,还没有直接使用这个来得方便。

    并且,windows系列的系统都是闭源的,说白了这是商业软件,你想使用,就必须进行购买,他们现在这样使用,是违反知识产权法的,使用的是盗版。要是被微软发现,他们是可以通过司法途径进行起诉的。当然,至于国内的法院受不受理,这又是另外一回事了。

    wldaw3.1系统的权限系统虽然简单,但是在用户层,想要对系统层进行操作这是绝对禁止的,因为会威胁到系统的稳定性,只要破坏了系统的某一个关键数据结构,很有可能就会让系统崩溃。

    涉及到系统底层的操作,都是通过微软给出的sdk包里面的系统函数进行实现的。这些系统函数,不会乱操作内存里面关键的数据,而是会按照系统程序员所期望的方式实现某些功能。

    这样做既不会影响系统的稳定性和安全性,又可以让编写应用软件的程序员获得想要的功能,还可以简化操作步骤,让他们不用关心底层的运行机制,简直是一举三得的好办法。

    当然也并不是说系统层里面的东西,用户层完全访问不了,那些病毒木马想要实现自己的功能,很大程度上就是利用了系统的漏洞,获得了超过用户层的权限。

    不过,他们这个系统,已经被他们经过极度的优化,一些常见漏洞也基本上给打上了补丁,要想找出这样一个漏洞,还是很困难

    所以,余波在听到林鸿大言不惭地说“权限要自己动手去拿,不会自动送上门。”的时候,不由冷冷一笑,反驳道:

    “你说得倒轻巧,有本事你拿一个看看?”

    余波心中还对林鸿有些意见毕竟正是他的到来,才导致大家人心惶惶,担心自己为之工作了好多年的心血被推到重来。此外,他也对林鸿轻描淡写的态度很是看不惯,就算你们公司自己编写出了一个控制系统,但是也不能这样信口开河吧?

    他们在这个系统上浸淫了这么久自认为自己对这个系统的了解,只是仅次于那些开发系统的人了。

    他当然知道权限要自己去拿,并不会自动送上门但是,说起来容易做起来难,有些事情是站着说不腰疼,这样的人,他见得多了。

    余波认为是林鸿想要在他们领导面前表现自己,才故意这样“鼻孔插大葱”——装象。

    林鸿听到他的话笑了下,没有放在心上而是对曹兴平和徐直中说道:

    “这个情况我之前是遇到过的。很多木马和蠕虫,就是通过重写系统底层的函数来截流数据。这在系统安全领域,有一个专门的名词,叫做‘中间人攻击’。”

    中间人攻击,在黑客领域是一种非常古老并且有效的攻击方式。

    其本质原理,就是在数据流动的链路上,串接一个攻击者自己的“转发器”,从而达到嗅探窃取数据的目的。

    这种情形,就好像将一个水管给截段,然后在上面连接一个自己的转接头,这个转接头是不会影响水管中水流的正常流动的,它只是对水流进行监控,一旦发现水流里面有一条鱼经过,它就负责将这个信息给记录在案,甚至,它还有其他一些比较神奇的功能,例如,将这条鱼替换成一条泥鳅。

    而水管两端的人,由于缺乏沟通,根本不知道这些水流在流动的过程中到底发生了什么。

    他们不知道自己私下发送的鱼被别人监控了,甚至被人掉包,发送方以为自己发送了一条鱼,而接收方则以为对方发送了一条泥鳅。

    在网络领域,这个中间人甚至可以是一台电脑,用户a向用户b发送信息,却被人偷偷地让信息流跑到电脑c上面走了一圈,而ab用户却根本不知道自己的信息已经被人监听了。由于电脑c只是对数据进行复制和备份,完全不对信息进行修改,是被动的行文,所以ab是很难发现这种行为的。

    而在单机里面,中间人攻击更多的就是像这次这样,对某个环节或者函数进行接管,相当于在外面另外套了一层,要想访问真实的内容,必须从中间人这里进入。

    林鸿的超级蠕虫对数据进行搜集,实际上也是这个原理,从表面上看,已经被感染的系统和原来的系统是根本没有任何差别的,不会影响到数据的正常流动,也不会影响系统的稳定性。

    而他们现在的这个雷达控制系统,很显然也是这样,有某一个东西正好接管了他们系统中所调用的一个系统函数,只是,对方在处理那个底层函数的时候,有个地方没有处理好,导致他们在调用这个函数的时候,根本没有调用成功,结果就没有返回值。

    徐直中和曹兴平两人对视一眼,然后徐直中问道:“小鸿,你能肯定是这个原因吗?”

    林鸿所说的话,通俗易懂,他们也听明白了。

    虽然八九不离十,但是为了保险起见,林鸿还是得自己动手验证一下才能打包票。

    “这样吧,如果方便的话,我就使用我自己的方式进行验证一下。”他说道。

    徐直中稍微想了一下,便点头同意了。

    在曹兴平的示意下,余波只好让出了自己的座位。

    林鸿坐了上去,然后调出编译器,立刻动手编写一个小工具。

    这个小工具非常简单,只有一个功能,那就是持续不断地对之前那个函数进行调用,然后使用内存dump的方式,将内存里面的指定数据保存在一个文本文件里面,与此同时,也监测那个函数的返回结果。

    接着,林鸿便将余波之前做的过程重新做了一遍,重启,然后进入静默状态,再重新恢复……

    一个新的文件便被生成了。

    林鸿使用编辑器将其打开,开始分析文本文件里面的内容。

    站在林鸿身后,想看他好戏的余波顿时有些傻眼了。

    也不知道林鸿是故意的还是怎的,他的动作非常快,写代码也感觉就像是心中早就编写过无数次那样,直接一溜烟地就编写了过去,稍微修复了几个由于疏忽而导致的错误之后,这个小工具便很快就写完了。整个过程,用了不到三分钟的时间。

    余波站在身后一直目不眨眼地盯着都没有跟上他的步伐。虽然看懂了大概的意思,但是其细节却是完全理解不了,不知道对方为什么这么编写。

    而看到最终生成的那个文本文件,他更是傻眼,因为里面的内容按理说来,是根本访问不到的,是系统层的内存数据。

    “这不可……”余波还想说什么,不过立刻有闭了嘴,因为事实摆在眼前,他再说不可能,那不是一句废话么?

    林鸿将记录迅速的看了一遍,最终点头道:

    “果然如此。里面的确有一个隐藏的程序,接管了这个函数。”

    这个log文件中的记录,非常明显地显示出,进入静默状态的时候,内存里面的函数栈有了比较明显的变化,数据显示一个新的函数被压入了栈。

    栈是数据结构中一个比较特殊的数据结构,其特点就是“先进后出”,例如弹夹就是一个典型的栈结构,子弹装进去的时候,先压入,再弹出,最先装入的是最后被射出。

    在程序中,函数里面的各个数据和变量,也是按照一定的顺序,一个一个“压入”,执行完毕之后,再一个一个“弹出”。

    要想监控函数的变化,就只要监控指定位置的那个栈结构就行了。林鸿从内存中dump出来的数据,就是栈里面的东西。

    这个结果,在场的其他三人脸色都有些变了。

    这意味着,林鸿所说的话是正确的,系统底层的确有一个隐藏的程序在秘密活动,而他们之前对此却毫不知情。

    徐直中还好,已经有了心理准备,曹兴平却是脸色变得极其难看。

    “那为什么在刚开始启动的时候没有这个问题,而进入静默状态才会出现?”

    这个时候,余波突然插言问道,他这个时候,已经没有心思去膈应林鸿了。

    “这是因为在系统启动的时候,你们的这个壳程序优先启动,然后对方才启动,这样就根本没有受到它的影响,两者相安无事。

    但是进入静默状态的时候,壳程序会要关闭,再次启动的时候,那个隐藏程序已经完全接管了整个函数接口,可能是对方在这一块没有处理好,导致两者产生了冲突,壳程序调用的那个函数没有能够返回有效的数值,而你们恰好又没有对这个返回值进行判断处理,最终导致了整个壳程序的崩溃。”(未完待续)