西西河

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

共:💬168 🌺312 🌵1
分页树展主题 · 全看首页 上页
/ 12
下页 末页
                    • 家园 插件是LB的
                      • 家园 超长url的存在 是谁的疏忽?
                        • 家园 超长URL的存在是黑客的故意,超长URL不去检测是绿坝的

                          问题。

                        • 家园 打个不恰当的比喻

                          打个不恰当的比喻

                          某家的大门(IE),上面没横梁,就是说允许如何高度的物品进入(超长的url)

                          某天要在大门2米处架个横梁(LB),物管(系统)过来问这个哪个要装的,这家主人(用户)说:我.物管(系统)就不再过问了.

                          过了一天,来了个2米5高的物品(超长的url),进不去了(IE崩溃),你说是谁的疏忽?

                          • 家园 这个比喻是错误的,委屈的IE发来贺电。。。。

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

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

                        • 家园 这么初级的错误当然要怪LB,它是人家的内存空间中出错,

                          所以它的错误把浏览器搞死了

      • 家园 MM不错。
      • 家园 小姑娘年龄不大,感觉不像能搞什么技术,鉴定完毕
      • 家园 不会就是那个MM写的程序吧!还拍照留念?
分页树展主题 · 全看首页 上页
/ 12
下页 末页


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

Copyright © cchere 西西河