西西河

主题:如何用绿坝养肉鸡(一) -- 代码ABC

共:💬168 🌺312 🌵1
全看分页树展 · 主题 跟帖
家园 这个比喻是错误的,委屈的IE发来贺电。。。。

当楼主没装LB时候,他输入那么长的URL,IE并没有崩溃掉,因为IE检查了串的长度,这个长度串对IE而言其实是合法。但当楼主安装了LB后,LB将取得URL的代码合法地挂进了IE的空间,但迷糊的LB却没有检查得到的串长度,直接将地址栏的字串复制进自己所预设的固定长(例如1024字节)缓冲区里(写程序时的正常做法是先检查串的长度,之后根据正确的长度动态地给出空间或调整出适当长度的空间,只是外部输入串时必须做的,不仅是为了防范恶意构造串,也防止真的有那么长的输入串,只有上学时写一些简单演示程序时才会省掉这个检查依靠用户——也就是偶自己——的小心翼翼),这样,当实际串长度大于缓冲区长度时就会压掉它自己正常的返回地址,从而出现内存冲突错误,也就是好多用户看到过的非法访问内存之类的提示框。。。由于这种错误是无法恢复的,进程只能保护性地的崩溃掉,而LB作为插件是挂入IE进程的,所以实际效果是尽管发生错误的代码段并不IE本身的,却造成IE的进程挂掉。

如果以门来比喻的话(务必请先看前面那一堆),勉强可以认为是IE门口限高度两米,可LB又在门上安了个一米高的门,结果身高一米五的偶一头撞晕,呃,好吧,似乎是撞不到头,但撞肚子也粉郁闷——那么偶为咩要装涅。。。。因为工信部滴要求。。他们有病

全看分页树展 · 主题 跟帖


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河