C&C++代码安全观察点

C&C++代码安全观察点
字符串操作安全
格式化输出安全
整数操作安全
内存管理安全
文件操作安全
不安全函数的使用和对象
C++类和对象
STL库安全

 

 

 

(1)    外部数据作数组下标、缓冲区长度、循环结束条件、拷贝到堆栈缓冲区
(2)    外部数据拷贝到内核:关注函数copy_from_user
(3)    外部报文/协议是否有超长/大数据包
(4)    外部数据构造SQL语句是否有校验或转义
(5)    外部数据参与整数运算是否有溢出、反转、截断、符号错误等
(6)    检查处理外部数据的函数的返回值
(7)    对敏感信息使用后有没有清零
(8)    字符串操作有没有越界、有没有‘\0’结束符
(9)    格式化输入/输出函数是否存在参数个数/类型不匹配
(10)    不安全函数使用是否存在问题(没有校验目的缓冲区长度)
(11)    分配内存时是否有校验、是否引用无效内存、是否对内存进行初始化
(12)    文件操作是否对路径进行校验、是否显示指定权限、是否有竞争条件
(13)    STL中是否有检查迭代子有效性
(14)    类是否存在返回私有成员地址,是否切分多态类对象
(15)    随机数生成函数是否安全
(16)    递归函数是否对递归次数进行了合理限制,应当考虑服务进程的栈资源限制

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值