- 主题:无聊的担心一下kbs安全性的问题~~!
照理应该有一个参数传缓冲区大小的。。。
【 在 du2050 (杜杜) 的大作中提到: 】
: 标 题: Re: 无聊的担心一下kbs安全性的问题~~!
: 发信站: 水木社区 (Mon Jul 25 22:49:03 2005), 转信
:
: 呵呵,你看,你改的就不如人家改的好,全篇用到usercomplete函数有多处,即便是个个都注意了开大缓存也不好
:
: 后来人还可能用错这个函数。所以人家是在函数里限制输入长度了,就好多了,以后不会用错
:
: 还有总方法,就是把你的char tmpuserid[STRLEN];放在usercomplete里实现,这样既能全行输入,又能保证不溢出,hoho
:
: 【 在 nbysy (孩子他爸) 的大作中提到: 】
: : 问题出在 mail.c 里的 set_mailgroup_key() 与 init_mailgroup() 函数
: : 把 mailgroup_t 里的 id数组直接接传给 usercomplete() 函数造成溢出, id的数组长度只有IDLEN+1, 而usercomplete()要求的长度是 STRLEN
: : 修复这个bug 可做如下修改:
: : ...................
:
: --
:
: ※ 来源:·水木社区 newsmth.net·[FROM: 218.61.75.*]
--
FROM 59.66.199.*
历史遗留问题,可想而知最开始的 Firebird 确实不咋的,水木积累了这么多年
的经验都在现在的 kbs 里面了,不过前前后后改了快十年,隐藏的 bug 肯定也
不少,目前只能是发现一个消灭一个。
【 在 fancitron (Albatross) 的大作中提到: 】
: 照理应该有一个参数传缓冲区大小的。。。
--
FROM 162.105.242.*
哈哈,看了下usercomplete() 函数,确实改这个要来得好些。
只要把 STRLEN 换成IDLEN 就OK了,反正现在站上没人,冒了次险改掉了。
【 在 du2050 (杜杜) 的大作中提到: 】
: 呵呵,你看,你改的就不如人家改的好,全篇用到usercomplete函数有多处,即便是个个都注意了开大缓存也不好
: 后来人还可能用错这个函数。所以人家是在函数里限制输入长度了,就好多了,以后不会用错
: 还有总方法,就是把你的char tmpuserid[STRLEN];放在usercomplete里实现,这样既能全行输入,又能保证不溢出,hoho
: ...................
--
FROM 60.178.69.*
我感觉传缓冲区大小没什么必要。
函数就叫 usercomplete(),可想而知传进去的缓冲区应该是IDLEN+1 个字节,因为ID长度不可能超过12字节,输入超过12字节的数据是不合逻辑的。
错误在于usercomplete() 允许用户输入STRLEN个字符(超过了IDLEN,何苦来哉),欺骗调用者的感情。
【 在 fancitron (Albatross) 的大作中提到: 】
: 照理应该有一个参数传缓冲区大小的。。。
--
FROM 60.178.69.*
sigh..... 颇有沧桑感啊,说得我都想哭了..... 555....
【 在 flyriver (江~~忙碌生活) 的大作中提到: 】
: 历史遗留问题,可想而知最开始的 Firebird 确实不咋的,水木积累了这么多年
: 的经验都在现在的 kbs 里面了,不过前前后后改了快十年,隐藏的 bug 肯定也
: 不少,目前只能是发现一个消灭一个。
: ...................
--
FROM 59.66.199.*
有道理哦 @@
【 在 nbysy (孩子他爸) 的大作中提到: 】
: 标 题: Re: 无聊的担心一下kbs安全性的问题~~!
: 发信站: 水木社区 (Mon Jul 25 23:59:25 2005), 转信
:
: 我感觉传缓冲区大小没什么必要。
: 函数就叫 usercomplete(),可想而知传进去的缓冲区应该是IDLEN+1 个字节,因为ID长度不可能超过12字节,输入超过12字节的数据是不合逻辑的。
:
: 错误在于usercomplete() 允许用户输入STRLEN个字符(超过了IDLEN,何苦来哉),欺骗调用者的感情。
这个比喻要赞!@@
:
:
: 【 在 fancitron (Albatross) 的大作中提到: 】
: : 照理应该有一个参数传缓冲区大小的。。。
:
:
: --
:
: ※ 来源:·水木社区 newsmth.net·[FROM: 60.178.69.*]
--
FROM 59.66.199.*
我觉得关键是程序是binary方式发布还是源代码形式发布...
【 在 nbysy (孩子他爸) 的大作中提到: 】
: Linux 源代码是公开的
: Windows源代码是保密的
: 比较下两者的安全性
: ...................
--
FROM 128.12.181.*
昨天简单看了一下现在的kbs代码,比原来的smth1.2真是安全多了,可见你们确实作了不少这方面的工作,赞一个
【 在 flyriver@newsmth.net-SPAM.no (江~~忙碌生活) 的大作中提到: 】
: 历史遗留问题,可想而知最开始的 Firebird 确实不咋的,水木积累了这么多年
: 的经验都在现在的 kbs 里面了,不过前前后后改了快十年,隐藏的 bug 肯定也
: 不少,目前只能是发现一个消灭一个。
--
FROM 220.201.1.71
还是说的我晕晕的~`
偶看偶还是先看看火鸟的技术资料,然后再补补C再说吧~!
【 在 nbysy (孩子他爸) 的大作中提到: 】
: 我感觉传缓冲区大小没什么必要。
: 函数就叫 usercomplete(),可想而知传进去的缓冲区应该是IDLEN+1 个字节,因为ID长度不可能超过12字节,输入超过12字节的数据是不合逻辑的。
: 错误在于usercomplete() 允许用户输入STRLEN个字符(超过了IDLEN,何苦来哉),欺骗调用者的感情。
--
FROM 168.160.18.*
真是敬佩坚持不懈的研究这个bbs,发现问题解决问题的同志们.
敬礼~!
【 在 atppp (Big Mouse) 的大作中提到: 】
: 我觉得关键是程序是binary方式发布还是源代码形式发布...
--
FROM 168.160.18.*