友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
狗狗书籍 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

极光骇客-第123章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!




天玄举手说:「等一等!如果是这样的话,输入那些逻辑判断怎么会通过?」

云飞问:「你看看 or 1 = 1 的结果应该是 true 或 false?」

天玄说:「喂,太瞧不起我了吧?谁都知道 1 = 1 啊!这结果当然是 true!」

云飞点头说:「看来你还有点救!接下来,在判断式中假设用户名为 paul 而密码为 qq 则判断式的成立应该是当 if用户名 == ‘paul‘ 以及 if 密码 == ‘qq‘ 对吧?因为在 SQL 语法中单引号内括字元字串。」

天玄开始了解而说:「这样讲我当然明白!可是和 or 1=1 又有何关联?」

云飞便说:「你看!假如我们输入 if 用户名 == ‘paul‘ 这里改成 if 用户名 == ‘xxx‘ 本来应该是错误的,因为没有 xxx 这个用户名在!可是若输入 ‘ or 1=1‘ 变成if 用户名 == ‘xxx‘ or 1 = 1‘‘时,因为有一个『或』运算 or 在,就算没有用户名,但判断到『或1=1』时却会通过!我们知道 AND 要两者都成立,而 or 只要其中一个成立,所以在某些情况下会通过检查。而若反过来输入数据被放在 == 之前则可以输入 1=1 or来变成 if 1=1 or ‘xxx‘ == ‘paul‘,同样判断到1=1就会通过了。」

天玄拍手)恍)然(网)大悟道:「天呀!真是高招!我终于开窍了!」

宇成也了解道:「原来如此,这就是所谓的 SQL 隐码啊!果然很危 3ǔ。cōm险!」

云飞却摇摇头说:「不然,这并非是绝对的好方法!这次之所以能成功,是因为写这个网页的人疏忽漏掉很多东西,比如过滤掉单引号!如果对方的程式写了过滤单引号的程式加以检查,这方法就不会成功了。而且,刚刚所讲的只是基本的理论,实际使用上要视不同网页程式写法,尝试各种 SQL 语法。」

天玄拼命点头说:「是!是!好,这样我就知道要怎么跟小红说了!」

云飞转头看著宇成说:「怎么样?你还是对这些东西很有兴趣,对吧?」

宇成不愿正面回答,便说:「我只是想到『信息安全』的重要性罢了!毕竟,如果这么简单就可以攻击的话,那我们的数据存在网路上一点也不安全!」

天玄被激励而说:「宇成,你在胡说什么啊?网路本来就是一个公开的地方,既然有心要把数据放在上面,当然就没有绝对的安全啊!所以被入侵,是自己的防护不够周全的关系。你想想,不锁好门而被偷东西,该怪谁?」

宇成心中突然又闪过一道光,心想:「是这样子吗?没有锁好门的人也有错吗?」

云飞喝了口水说:「那么,接下来是编码的问题吧?」

天玄又拼命点头的说:「对,拜托你了,云飞大大,不,超级大大大!」

云飞说:「你听好了,所谓的编码就是将数据编辑成一连串的二进位码,而加密则是不以直接的方式解码,必需要用特殊的规则或演算法去解出来。」

天玄点点头说:「喔~是这样子啊?不过我还是不懂,可以说得更俱体一点吗?」

云飞便在屏幕上打了几个字:B746、A741、A6D1、A5C0。

天玄疑惑的问:「这个...这个是什么意思啊?」

云飞邪笑著说:「你用『内码输入法』在姓名栏输入那四组字码就知道了,哼!」

天玄好奇的打上去,却发现是一句不勘入目的话,甚是生气的说:「太过份啦!」

宇成捧腹大笑道:「哈哈哈!天玄..噗..被摆了一道喔!」

云飞转身打字说:「好了,没时间让你当小丑了,得快点让你明白才可以。」

天玄气愤的骂道:「喂!这到底是谁造成的啊?」

云飞说:「你看,以B746这个字码为例,解析成二进位后会变什么?」

天玄拿出笔算后说:「是 1011 0111 0100 0110 啊!」

云飞便说:「假如我们把它的编码往左移两位,就成了 1101 1101 0001 1010 对吧?最左边的两位 10 因为左移所以会跑到最右边去。此时再组合回十六进位就会变成 DD1A 这个码,和原先的 B746 不同了对吧?但只要右移又恢复了!」

天玄点头说:「我懂了,我懂了!只要事先制定一套规则演算法,就可以让字码在网路上传递时属于被修改过的方式,保护数据传递中的安全性。而收到的人如果不懂得演算规则,他就没有办法还原回原来的数据了!」

云飞又说:「但是只有简单的位移,还是容易被看出来。所以,演算的方式往往要依赖一些公式去计算!B746二进位码中有1的位元是15;13;12;10;9;8;6;2;1。」(二进位码的位元位置编号为15;14;13;12;11;10;9;8;7;6;5;4;3;2;1;0)

云飞换个画面接著说:「假如不在乎文件大小,可以编码成9FDCA98621,其中前面的9代表读取下面几组位元,而FDCA98621代表第几个位元为1。因为是9,所以会读取九组二进码,从F一直读到1为止,在1的后面一个码则是代表下一个字由几组码构成。当然,因为开头的9可以知道后面九个码都代表同一个字码的第几个位元为1,所以就算不按顺序,乱数排成9C89A6DF12也无所谓,还原计算回来后都一样代表15;13;12;10;9;8;6;2;1位元为1,更能保障安全。」

云飞又说:「利用演算的方式,也可以抽出 BIG…5 码的四个十六进位数字单独做加减,比如 B746 用 B+1、7…1、4+2、6…2的方式编码成C664,等到要解码时再重新加减回去变C…1、6+1、6…2、4+2还原回B746。」

天玄又问:「如果这样做的话,那恰好被猜出几个字来,不就可以全部解出来了?」

云飞冷笑道:「你以为编码的人会这么笨吗?多重编码方式,每个字可以用不同的编码规则,然后以文件档头的隐藏位元做运算式。配合不同的排列规则,往往直接解是解不出什么东西来的。不过这些还算是下乘的东西,真正上乘的....」

此时,云飞的计算机上闪起新邮件讯息,云飞便先打开看。附加档是一个加密演算过后的文字档,是明昂传给他的私密讯息,便邪笑道:「编码的活教材进来了!」

不知道这封讯息里面是什么?...待续

 

 

第五卷 满月之战篇 第一百二十六章 沉重的空气
(更新时间:2005…2…21 16:39:00  本章字数:3743)

邮件上写著:「虽然这是一封重要的讯息,但请用我们之前约定的规则想办法写程式解开来读取。如果无法解出来,就按照既定约定去,他会告诉你们的。」
云飞转头问宇成:「我们有和明昂约定什么吗?」

宇成想了想后说:「嗯...我想不出来?到底是什么?『他』又是指谁?」

云飞说:「算了,就把它解出来我们就知道了。」

天玄起身说:「先等一等,云飞,这样下去我完全无法确定我会不会。这样吧!这次这个加密档,你告诉我解密的方式,除非我亲自做一遍,不然我无法确定!」

云飞点头说:「好吧,我把那规则告诉你。」(似乎忘记这是重要的讯息...?)

云飞打开数据夹并找到该规则说明文件档说:「我们定义了四种字码加密方式,还有四种组合运用加密方式的规则,利用加密档每段第一个 byte 做为定义,假如值是84代表1000 0100,就是用第一种加密方式与第二种组合规则。」

天玄从 UltraEdit 中看到第一段第一个字元值为 28 00 便说:「这代表0010 1000 第三种加密和第一种组合规则没有错吧?第二个00应该不用管它吧?」

云飞点头说:「对,00是补成双位元!现在我把公式给你!在这种加密方式中,字码的四个十六进位档,第一个加1、第二个加3、第三个加2、第四个加4,以 B746 来讲就会变成 B+1=C、7+3=A、4+2=6、6+2=8,所以还原字码的时候便是把那些码都相减回去就可以了。如果碰到0…1的话就代表F,倒退回去就对了。」

天玄点头开始拼命的做,花了许久时间终于解出全部的字了。

云飞说:「好,再来是规则!在这一种组合规则里,每段,也就是八个字为一组,15对调,28对调,36对调,47对调。所以现在按照这个规则,每八个字为一组重新将它排列出来,就还原回原本的档案了。」

天玄挽起袖子说:「没问题,这可比刚才那个要简单多了,看我的!」

天玄把短短的一百多个字的讯息排列完成,而云飞和宇成看了却大吃一惊!

宇成荒道:「糟了!和庄胜哲大哥约好要去的,现在已经这么晚了!」

云飞赶紧准备要用的东西说:「明昂因为
返回目录 上一页 下一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!