SECURE_CODING 概要 zz

以下总结的内容来自于Coverity Prevent分析,SECURE_CODING 是Prevent中关于编码安全方面的一个检查器,是全球百万余开发人员从历史上的各种安全漏洞事件中总结出来的。

 

× [VERY RISKY]. Use of "strcpy" has been known to cause a buffer overflow when used incorrectly.  If the destination string of a strcpy() is not large enough then anything might happen. Use strncpy() instead

 

 

×[VERY RISKY]. Use of "sprintf" has been known to cause a buffer overflow when used incorrectly.  Because sprintf() assumes an arbitrarily long string, callers must be careful not to overflow the actual space of the destination. Use snprintf() instead, or correct precision specifiers.

 

×[VERY RISKY]. Use of "strcat" has been known to cause a buffer overflow when used incorrectly.  The destination of a strcat() call must have enough space to accept the source. Use strncat() instead.

 

×You should never use the gets() function because you cannot control the amount of data that is read.

 

From: http://www.51testing.com/?uid-10851-action-viewspace-itemid-106174

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Learn the Root Causes of Software Vulnerabilities and How to Avoid Them Commonly exploited software vulnerabilities are usually caused by avoidable software defects. Having analyzed tens of thousands of vulnerability reports since 1988, CERT has determined that a relatively small number of root causes account for most of the vulnerabilities. Secure Coding in C and C++, Second Edition, identifies and explains these root causes and shows the steps that can be taken to prevent exploitation. Moreover, this book encourages programmers to adopt security best practices and to develop a security mindset that can help protect software from tomorrow’s attacks, not just today’s. Drawing on the CERT’s reports and conclusions, Robert C. Seacord systematically identifies the program errors most likely to lead to security breaches, shows how they can be exploited, reviews the potential consequences, and presents secure alternatives. Coverage includes technical detail on how to Improve the overall security of any C or C++ application Thwart buffer overflows, stack-smashing, and return-oriented programming attacks that exploit insecure string manipulation logic Avoid vulnerabilities and security flaws resulting from the incorrect use of dynamic memory management functions Eliminate integer-related problems resulting from signed integer overflows, unsigned integer wrapping, and truncation errors Perform secure I/O, avoiding file system vulnerabilities Correctly use formatted output functions without introducing format-string vulnerabilities Avoid race conditions and other exploitable vulnerabilities while developing concurrent code The second edition features Updates for C11 and C++11 Significant revisions to chapters on strings, dynamic memory management, and integer security A new chapter on concurrency Access to the online secure coding course offered through Carnegie Mellon’s Open Learning Initiative (OLI) Secure Coding in C and C++, Second Edition, presents hundreds of examples of secure code, insecure code, and exploits, implemented for Windows and Linux. If you’re responsible for creating secure C or C++ software–or for keeping it safe–no other book offers you this much detailed, expert assistance. Table of Contents Chapter 1 Running with Scissors Chapter 2 Strings Chapter 3 Pointer Subterfuge Chapter 4 Dynamic Memory Management Chapter 5 Integer Security Chapter 6 Formatted Output Chapter 7 Concurrency Chapter 8 File I/O Chapter 9 Recommended Practices
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值