| 查看: 328 | 回复: 2 | |||
olive.金虫 (小有名气)
|
[求助]
程序漏洞帮忙改正下 谢谢
|
|
(1)#define BUFFERSIZE 64 void func(size_t buffersize,char *buf){ if(buffersize < BUFFERSIZE){ char *pBuff = new char [buffersize - 1 ] ; memcpy(pBuff,buff buffersize - 1); ...................... } } 关于溢出漏洞,帮忙改正一下,谢谢 若buffersize 为0 会怎样? (2) #define BUFFERSIZE 256 int ConcatString(char *buf1,char *buf2,size_t len1,size_t len2){ char buff[BUFFERSIZE]; if((len1 + len2) > BUFFERSIZE) return(-1); memcpy(buf+len1,buf2,len2) ; ....... } 有些漏洞 怎么改 (3)用户只要输入所在区域的邮编就可以获得该地区的当前天气报告,其中变量来自用户从界面编辑框所输入的字符串,程序将其解释为邮政编码 如果输入116600 Function String DBLookupByPostCode(strPostCode){ Connection = "server = weatherserver; user = sysadmin ; password = xyzzy" ; String query = "SELECT * FROM weatherdata WHERE postcode = '"+strPostCode+"'"; String weather = Connection.ExecuteQuery(query); Connection.Close() ; Return weather ; } |
» 猜你喜欢
拟解决的关键科学问题还要不要写
已经有9人回复
最失望的一年
已经有17人回复
为什么nbs上溴 没有产物点出现呢
已经有6人回复
求推荐博导
已经有4人回复
存款400万可以在学校里躺平吗
已经有34人回复
求助一下有机合成大神
已经有4人回复
求推荐英文EI期刊
已经有5人回复
26申博
已经有3人回复
基金委咋了?2026年的指南还没有出来?
已经有10人回复
疑惑?
已经有5人回复
» 本主题相关价值贴推荐,对您同样有帮助:
【求助】请帮忙看看以下的句子有什么语法上的错误,如何改正,谢谢
已经有5人回复
请帮忙看下这个德语的证明有语法或者用词的错误吗 如有敬请改正 不胜感激
已经有1人回复

【答案】应助回帖
★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
olive.: 金币+10, ★★★很有帮助 2012-10-15 07:41:42
感谢参与,应助指数 +1
olive.: 金币+10, ★★★很有帮助 2012-10-15 07:41:42
|
第一个 if(buffersize < BUFFERSIZE)改为if(buffersize < BUFFERSIZE && buffersize > 0) 第二个 if((len1 + len2) > BUFFERSIZE) return(-1);改为if((len1 + len2) > BUFFERSIZE||len1 <0 || len2<0) return(-1); 第三个不知道怎么改了,但是你应该先检查一下strPostCode是不是纯数字的,还有字符串的长度,应该有这样的函数用来检查是不是数字字符串吧 |
2楼2012-10-14 18:22:15
olive.
金虫 (小有名气)
- 应助: 0 (幼儿园)
- 金币: 727.5
- 散金: 15
- 帖子: 56
- 在线: 40.2小时
- 虫号: 1503048
- 注册: 2011-11-21
- 性别: GG
- 专业: 计算机网络

3楼2012-10-15 07:41:52













回复此楼