主题:如何用绿坝养肉鸡(一) -- 代码ABC
当楼主没装LB时候,他输入那么长的URL,IE并没有崩溃掉,因为IE检查了串的长度,这个长度串对IE而言其实是合法。但当楼主安装了LB后,LB将取得URL的代码合法地挂进了IE的空间,但迷糊的LB却没有检查得到的串长度,直接将地址栏的字串复制进自己所预设的固定长(例如1024字节)缓冲区里(写程序时的正常做法是先检查串的长度,之后根据正确的长度动态地给出空间或调整出适当长度的空间,只是外部输入串时必须做的,不仅是为了防范恶意构造串,也防止真的有那么长的输入串,只有上学时写一些简单演示程序时才会省掉这个检查依靠用户——也就是偶自己——的小心翼翼),这样,当实际串长度大于缓冲区长度时就会压掉它自己正常的返回地址,从而出现内存冲突错误,也就是好多用户看到过的非法访问内存之类的提示框。。。由于这种错误是无法恢复的,进程只能保护性地的崩溃掉,而LB作为插件是挂入IE进程的,所以实际效果是尽管发生错误的代码段并不IE本身的,却造成IE的进程挂掉。
如果以门来比喻的话(务必请先看前面那一堆),勉强可以认为是IE门口限高度两米,可LB又在门上安了个一米高的门,结果身高一米五的偶一头撞晕,呃,好吧,似乎是撞不到头,但撞肚子也粉郁闷——那么偶为咩要装涅。。。。因为工信部滴要求。。他们有病
- 相关回复 上下关系8
压缩 2 层
🙂超长url的存在 是谁的疏忽? 锋芒 字0 2009-06-14 00:08:12
🙂超长URL的存在是黑客的故意,超长URL不去检测是绿坝的 猪头笨笨 字6 2009-06-14 20:11:25
🙂打个不恰当的比喻 1 bzmouse 字264 2009-06-14 05:17:53
😏这个比喻是错误的,委屈的IE发来贺电。。。。
🙂哈哈哈哈 波音战斗机 字22 2009-06-16 02:25:38
🙂这么初级的错误当然要怪LB,它是人家的内存空间中出错, 凝雪幻 字26 2009-06-14 05:16:53
🙂MM不错。 物格修齐 字0 2009-06-13 09:00:27
😉图太小,马马虎虎 牛铃 字0 2009-06-13 13:23:31