叫“aa……”的文件夹。颜玉的鼠标在上面动了动,然后她在飞飞里面输入:就是这个。接着,好像是为了证明自己的说法,她对其进行了删除操作。弹出一个带红叉叉的警告框“系统无法删除文件:无法读源文件或磁盘。”
许毅看到这里就笑了,这个东东实在是太熟悉了。心中疑惑,小姑娘这里怎么出现了这样的文件夹?难道真的是别的同行来光顾过她的电脑?
这个文件夹是个特殊的文件夹,并不能这样简单地删除。许毅上次获取欧若拉的照片的时候就用过一次这个方法。利用的正是windows系统的一个小BUG,这个BUG直到window XP系统的时候还没有修正过来。
许毅回复:“这个文件夹是什么时候发现的?”
小玉儿:“就今天啊,本来我想清空这个文件夹的,就发现了这个问题。”
许毅想了一下,心中突然一动,想到刚才看到的颜玉桌面。
XYZ:“这个文件夹不是你建立的吧。”
颜玉在那边想了一会儿,这才回道:“喔,我想起来了,我前两天练习DOS命令的时候,好像建过这样一个文件夹。”
这个消息刚发过来,她又发了一条:“就是那个MKDIR命令”。
许毅微微一笑,没想到她随便练习个命令就碰到了这个BUG。而以前,这个BUG是他调试程序的时候无意中发现的,经过一番彻底研究,算是完全掌握了这个BUG,而且还能够将其运用到黑客入侵活动中来。
另外,小姑娘自学DOS命令让许毅也很高兴,所以他决定将这个BUG详细跟她解说一下。
XYZ:“知道过RMDIR么?”
小玉儿:“看上去很熟悉,印象不太深了,等等,我看看资料。”
倒!看来小姑娘对这些命令的掌握还和肤浅。
很快,颜玉就有了答案:“知道了!是删除文件夹的命令。”
XYZ:“是的。你不要用鼠标右键的删除,也不要用键盘那个DELETE键,试试用这个命令,在DOS窗口下删除那个文件。”
小玉儿:“这样就行了?我试试看。”
许毅从共享桌面的那个窗口看到,颜玉调出了DOS窗口,然后来到那个文件所在的目录,输入命令“RMDIR aa……”,回车之后,接过显示“系统找不到指定的文件”。
小玉儿:“不行啊,毅哥哥。”
XYZ:“呵呵,用这个命令‘RMDIR aa…’”
颜玉按照许毅给出的命令运行了一次,果然发现那个文件夹被删除了。这下把她乐坏了。
小玉儿:“毅哥哥,那个文件夹不见了!”
XYZ:“嗯。”
见许毅并没有多说,她很快就询问起原因来:“这个命令的格式不是后面直接跟文件名吗?为什么后面还要多加上一个点和一个反斜杠呢?”
Hoho,小姑娘有前途,有小黑客的潜质。许毅就是在等她询问。
“呵呵,小玉儿,我跟你说,你刚才无意中发现了一个微软windows系统的大BUG。”许毅为了鼓励小姑娘,特意夸大了一下。当然,从某种意义上来说,这个BUG也算是不小了。
许毅正等着小姑娘的欢呼雀跃,结果等来了一句让他有晕阙感的问题:“毅哥哥,什么叫BUG呀?”
许毅一口气睹在了胸口,原本准备的一番说辞暂时用不上了,只得给她讲解起BUG的意思来:“BUG在英语中是‘臭虫’或者‘虫子’的意思,用在计算机领域中,就是指一些隐藏在系统或程序中的缺陷或问题。对软件公司来说,这是个不好的东东,会想尽办法将其修复,但这却是黑客们的最爱,因为利用这些BUG,他们往往可以做出很多不可思议的事情来。”
说起BUG这个词汇的起源,还有一段典故。那是在第一代计算机的时代,那个时候的计算机都是由许多庞大且昂贵的真空管组成,并利用大量的电力来使真空管发光。可能正是由于计算机运行产生的光和热,引得一只小虫子(Bug)钻进了一支真空管内,导致整个计算机无法工作。研究人员费了半天时间,总算发现原因所在,把这只小虫子从真空管中取出后,计算机又恢复正常。后来,Bug这个名词就沿用下来,表示电脑系统或程序中隐藏的错误、缺陷或问题。与Bug相对应,人们将发现Bug并加以纠正的过程叫做“Debug”,意即“捉虫子”或“杀虫子”。有人将其翻译为“臭虫”,但程序员们还是喜欢直接用BUG这个词。
―――――
Ps:1945年9月9日,下午三点。哈珀中尉正领着她的小组构造一个称为“马克二型”的计算机。这还不是一个完全的电子计算机,它使用了大量的继电器,一种电子机械装置。第二次世界大战还没有结束。哈珀的小组日以继夜地工作。机房是一间第一次世界大战时建造的老建筑。那是一个炎热的夏天,房间没有空调,所有窗户都敞开散热。
突然,马克二型死机了。技术人员试了很多办法,最后定位到第70号继电器出错。哈珀观察这个出错的继电器,发现一只飞蛾躺在中间,已经被继电器打死。她小心地用摄子将蛾子夹出来,用透明胶布帖到“事件记录本”中,并注明“第一个发现虫子的实例。”
第二卷 第62章 删不掉的文件夹(下)
花了一小会儿时间,将这个专业词汇解释清楚,颜玉继续追问了起来:“毅哥哥,你的意思是说这个不能删除的文件夹是一个BUG?为什么要在DOS下面才能删除呀?”
……许毅顿时没词了,为什么会这样我怎么知道,我又没阅读过微软操作系统的源代码,他无奈地回道:“我也只知道这是个BUG。具体原因不清楚。”
“你也不知道呀。”小姑娘好像感到很惊讶,可能她没想到还有许毅不知道的计算机问题。她继续问:“对了,你还没告诉我为什么要多加一个点和反斜杠呢。”
这个许毅倒知道:“其实你建立的这个文件夹的名字本来就是多了一个点和反斜杠的。只不过这样看不到而已。”
颜玉自然是不信,许毅只得证明给她看。他要颜玉用命令“MKDIR A……”在DOS控制台下建立文件,也就是说,按照DOS命令的语法规则,建立的文件名为“A……”。
等了一会儿,颜玉便发来了消息:“毅哥哥,怎么建立的文件名是‘A。’,少了一个点和一个反斜杠呢,太奇怪了!”
许毅回道:“呵呵,刚才那个文件夹就是这个原因,它实际的文件夹名字和你看到的并不一样。你现在用平常的方式删除这个文件夹试试。”
颜玉闻言,选择了这个文件夹,然后按了删除键,确认,这时,她惊讶地发现刚才碰到的问题又出现了,也就是说刚才自己亲手建立了一个不能删除的文件夹。
这样说,那个文件也是我不小心给建立的了?颜玉想到这里,心中一动,按照刚才删除那个文件夹的方法,在DOS里面运行了“RMDIR A……”命令,发现刚建立的文件夹果然立刻被删除了。
真是这样的!颜玉高兴非常。这个困扰了她多时的问题原来是这么回事,害得她还担心了好一阵,以为是遭了黑客呢。
许毅坐在电脑前,疲劳感一阵又一阵地袭来,不过他也被小姑娘引起了兴致,决定趁热打铁,将这个小技巧跟她说清楚,好增长她学技术的兴趣。
于是,许毅便开始详细地给她讲解起这个原因来。虽然他并没有阅读windows操作系统的源代码,但是根据自己掌握的知识,他还是可以将其中的原因推测出七八分的。
反斜杠“”在windows中是路径的分隔符号比如“C:Windows”的意思就是C分区中的Windows文件夹,“C:Windowscmd。exe”的意思就是C分区中的Windows文件夹中的cmd。exe文件。
那么,如果文件名中有“”符号会怎么样呢?假如“A”是一个文件的名字,这个文件位于“D:”(D盘),则它的路径就是“D:A”,当我们试图访问这个文件的时候Windows会错误地认为我们要打开的文件是D分区的A文件夹,这样Windows就无法打开并且会返回一个错误,因为以上的路径并不存在。
当然现在正在尝试创建“A”文件,但是Windows会给出提示:“”符号是不能作为文件或者文件夹的名字的。也就是说Windows还是早已想到这一点了的。不过事实真的是这样吗?显然是否定的。
颜玉碰到的这个文件夹就是如此,也就是说,微软的程序员编写操作系统的时候把DOS下用MKDIR命令建立文件的时候忽略了这个问题,仅仅只是注意到了图形化界面中文件的建立。
花了好大一阵精神,许毅终于将这个问题说清楚了,从小姑娘的回复来看,她好像也听懂了其中的原理。她对于自己发现了微软的一个“重要”BUG欢呼不已,不过欢呼之后,她终于想起一件重要的事情:“毅哥哥,这个BUG就算是存在也没什么关系吧,这个问题毕竟是很少会遇到的,而且看上去并没有什么作用。”
“当然有作用了,有重要作用。黑客的一个重要能力之一就是能够利用看上去貌似毫不起眼的小漏洞做出令人惊讶的事情来。”
“啊?这个BUG还能被黑客利用吗?”
“当然。”我就经常用,哈哈哈。
“那快告诉我,怎么用啊?这可是我发现的漏洞呢。”
喷!赞她几句就飘飘然了。许毅连忙及时提醒她,这个漏洞不能透露出去,要是流传开来,大家都知道了,以后就不灵了。
“好啦,好啦,我不会告诉别人的。你也不准,这个是我们两个之间的秘密。毅哥哥,你快告诉我这个BUG到底有什么用吧。”颜玉满口答应,连连催促。
“呵呵,其实这个文件夹也是一个真正的文件夹的,它具有文件夹的功能,但又具有其他一些特性,不容易删除就是其中之一。”
“文件夹的功能?你是说我们可以在里面存放其他文件?”
“聪明!”小姑娘一点就通。
颜玉闻言,立刻重新建了个特殊文件夹,然后拖了个文本文件到它上面,结果又弹出一个带有红叉叉的警告对话框,说“……引用了一个未知的未知……请确认磁盘正确连接……”云云。
呜,不行嘛!颜玉又只能问许毅。
“呵呵,你的思维怎么还停留在原地?说了这是比较特殊的文件夹了,不能用自己的思维惯势来思考问题的。”
经许毅这么一提醒,颜玉脑中便立刻清醒了。删除它都要用在命令控制台下用DOS命令,那将文件放到里面,肯定也是这样了!她急忙证明起自己的推测来,果然,事实正是如此。她要拍手称快了。聪明的颜玉自然想到了,将文件放到里面,相当于就给它加了一把保护锁,别人如果不知道这个原理,就拿这个文件夹没有办法,自然也就拿里面的文件没有办法。
嗯,那么如果自己要取里面的文件怎么办?颜玉举一反三,立刻又用“MOVE”命令,将刚刚移进去的文件移了出来。事实证明这样也是成功的。接着又将其移了进去。
“毅哥哥,真是这样耶!放进去了。”
许毅没有说其他,而是问了一句:“小玉儿,你现在删除那个文件夹看看。”
颜玉又按照刚才的方法,在DOS下用RMDIR进行操作,结果发现竟然删除不了了!里面的提示为“文件夹不是空的。”
啊?难道现在删除不了了?颜玉有些吃惊了。如果是这样的话,那这个文件就只能一直躺在这里了。不过她很快就想出了解决办法,既然文件夹不是空的不能