CWE-242:使用固有危险的功能
查看自定义信息:
某些功能以危险的方式行事,而不管它们如何使用。通常在不考虑安全问题的情况下实施此类别的功能。get()函数是不安全的,因为它不会执行对其输入大小的界限。攻击者可以轻松地将任意尺寸的输入发送到get()和溢出目标缓冲区。同样,>>运算符在阅读到静态分配的字符数组中时使用不安全,因为它不会执行对其输入大小的范围检查。攻击者可以轻松地将任意输入发送到>>操作员并溢出目标缓冲区。
![]() ![]()
![]() ![]()
![]() 语言 C(不确定的患病率) C ++(不确定的患病率) ![]()
示例1 下面的代码获取()将信息读取到缓冲区中。
(不良代码)
示例语言:C
char buf [bufsize];
获取(buf); C中的get()函数本质上是不安全的。 示例2 下面的代码调用get()函数以从命令行中读取数据。
(不良代码)
示例语言:C
char buf [24]; }printf(“请输入您的姓名,然后按 获取(buf); ... 但是,gets()本质上是不安全的,因为它在不检查大小的情况下将所有输入从stdin复制到缓冲区。这使用户可以提供大于缓冲区大小的字符串,从而导致溢出条件。 ![]()
提供更多信息 - 请选择其他过滤器。
|
使用共同弱点枚举(CWE)和本网站的相关参考使用条款。CWE由美国国土安全部(DHS)网络安全和基础设施安全局(CISA),由国土安全系统工程和开发研究所(HSSEDI)由manbetx客户端首页(MITER)。版权所有©2006–2023,Miter Comanbetx客户端首页rporation。CWE,CWSS,CWRAF和CWE徽标是Miter Corporation的商标。manbetx客户端首页 |