什么是代码审计
2022-07-28
基本信息
详情
一、代码审计
1.1什么是代码审计?
软件代码审计是对软件解决方案或产品中的源代码的全面分析。它被认为是安全过程中最关键的阶段之一,因为它用于验证代码的成熟度和可维护性,同时确保产品已准备好进行无缝切换。
1.2为什么要执行代码审核?
1. 熟悉当前的项目结构和功能
2. 发现现有和潜在的错误
3. 发现安全漏洞和漏洞
4. 验证当前性能和可扩展性
5. 评估代码可维护性级别以及相关的风险和成本
6. 验证是否符合相关的软件开发标准、指南和最佳实践
1.3代码审计的好处
1. 实现快速的漏洞扫描和修补
2. 打造更加安全可靠的网络运行环境
二、代码审计流程
2.1代码检查方法
(1)桌面检查
这是一种传统的检查方法。程序员检查自己的程序。程序编译完成后,程序员会对源代码进行分析和检查,并补充相关文档,以发现程序中的错误。由于程序员熟悉自己的程序和编程风格,程序员自己进行桌面检查可以节省大量检查时间,但应避免主观的片面性。
(2) 代码审查
由几个程序员和测试人员组成的评审小组通过阅读、讨论和争论对程序进行静态分析的过程。代码评审分为两步:第一步是组长提前向团队成员分发设计规范、控制流程图、程序文本、相关要求和规范,作为评审的依据。在充分阅读这些材料后,团队成员进入审查的第二步,并召开程序审查会议。在会上,程序员首先逐句介绍了程序的逻辑。在这个过程中,程序员或其他团队成员可以提出问题、讨论和审查是否存在错误。实践表明,程序员可以发现许多他们在解释过程中没有发现的错误,而讨论和争议会促进问题的暴露。
应为审查小组的每个成员编制一份常见错误清单,列出过去所有可能的常见错误,供与会者进行比较和检查,以提高审查的有效性。这个常见错误列表也称为检查表。它对程序中可能出现的各种错误进行分类,列出每种类型错误的尽可能多的典型错误,然后将它们放入一个表格中进行重新检查。
(3)走查
它与代码审查基本相同,代码审查分为两个步骤。第一步是将材料分发给走查小组的每个成员,并要求他们在召开会议之前仔细研究程序。会议程序与准则审查不同。参与者不是简单地阅读程序并对照错误清单进行检查,而是“充当”一台计算机,也就是说,首先,测试团队的成员为测试程序准备一批具有代表性的测试用例,并将它们提交给走查团队。在小组会议中穿行,集体扮演计算机的角色,让测试用例沿着程序的逻辑运行,并随时记录程序的轨迹以供分析和讨论。
借助测试用例的媒体功能,人们对程序的逻辑和功能提出了各种各样的问题,并结合问题进行了热烈的讨论和争论,从而发现更多的问题。
代码检查应在编译和动态测试前进行。检查前,应编制需求描述文件、程序设计文件、程序源代码、代码编写标准和代码缺陷检查表。在实际使用中,代码检查可以快速发现缺陷,发现30%到70%的逻辑设计和编码缺陷,代码检查中发现的问题不是症状。然而,代码检查非常耗时,代码检查需要积累知识和经验。
代码检查可以使用测试软件进行自动测试,以提高测试效率和降低劳动强度,也可以使用手动测试来充分发挥人类的逻辑思维能力。
用户点评
英鸟网发布信息规范(20260723更新)
英鸟新功能上线:城市归到大区!置顶可自助下单!时间缩短至一周!
炉头维修 清洁风机 煤气证书 厨房设计
阿肯色州"蜘蛛侠"司机暖心助轮椅老人过马路
俄亥俄"恐怖屋"母亲否认孩子像"野人",律师称因贫困所致
敏感货8.5/斤 冻品冷链 中英唯一
纽约灭门惨案:警方未排除母亲涉案,儿童保护曾接10次举报
18岁少女命丧国会女议员丈夫豪宅,母亲称真相终将大白
全球学生公寓 优质房源
墨尔本少女藏尸冰箱案:指控一降再降,仅余一项罪名
捡漏康州豪宅发现三具腐尸,死因疑为一氧化碳中毒
广告位招租中
纽约女子偷邻居价值4300美元地毯"改造",被关警局7小时
巴德诺赫警告:英国增税即将来临
招聘油包兼打杂包住
请熟手油包
外卖店请炒饭面
外卖店请熟手炒饭面
伦敦东南六区出
炒饭面
走位 +炒餐
伦敦南三区请厨房炒饭面
外卖店请炒饭面
油包


