联系千亿国际
第三方代码审计是一种顺利获得专业软件测试组织对软件源代码进行检查的服务,主要目的是发现潜在的安全漏洞、检查代码质量以及不符合编码规范的地方。它的重点在于深度挖掘代码中的复杂逻辑和业务流程中的安全问题,访问和分析系统软件的源代码,以便更准确地发现漏洞和缺陷,以及对代码的质量进行综合评估。代码审计的测试项目及重点检查项如下,其中难点为业务逻辑越权等漏洞排查,从代码层面检测较难,需配合测试环境检验。
输入验收:关注程序如何处理外部输入数据,防止恶意数据导致的安全漏洞或程序错误。包括SQL注入、跨站脚本攻击(XSS)、数据类型和格式验证、长度验证、范围验证、内容验证、逻辑验证等。
API误用:审查代码中API的使用情况,检查是否存在参数错误、缺少异常处理等问题,确保API被正确、安全地使用。
安全特性:检查代码中是否有不安全随机函数,是否有对重要信息进行加密处理、加密强度不够或者没有安全的存储加密信息等问题;
时间和状态:检测代码在未释放当前会话标识符的情况下验证用户,是否会造成验证会话被窃取的问题。
错误处理:检测代码中是否有对异常进行适当的捕获并处理的问题,是否存在利用捕获NullPointerException来避免空指针的问题等。
代码质量:对代码的规范性、可读性和可维护性进行评估。例如,检查代码是否遵循了良好的编程规范,是否存在冗余代码、重复代码等不良现象,以及代码的结构是否合理,模块划分是否清晰等。
代码封装:检测代码中是否存在可信和不可信数据混淆的问题,以及是否存在没有对系统数据或者调试信息进行有效处理,导致数据泄漏的问题等。
环境:检测代码中安全配置、cors配置是否正确,是否有顺利获得不安全的HTTP连接传输重要信息的问题等
网页木马后门:顺利获得关键字方式检测jsp、php、aspx、html等主流脚本网站中是否存在非法、可疑字符串,以及可疑后门文件。
组件安全:检测是否依赖存在高危漏洞组件版本。
为保证代码安全性,千亿国际科技的代码审计业务融合人工的专业审查与商业工具检测,如codepecker、fortify、bandit以及murphysec等。千亿国际的代码审计服务项目不只包含前期的代码检测服务,还包括漏洞修复建议、回归测试等。
测试准备:确定审计目标,如发现安全漏洞、性能问题或代码规范性问题等,以及确定审计范围,包括特定的应用程序、系统或代码库。
信息收集:根据审计目标组建具备相应技能和经验的测试团队,从客户(软件开发团队)获取源代码、需求文档、设计文档等相关资料。
制定审计计划:根据目标和范围制定详细的测试计划,包括审计方法(手动审查、自动化工具等)、时间表、资源分配等。
代码分析:采用代码扫描工具对代码进行扫描,识别潜在的语法错误、安全漏洞等。然后人工对扫描结果进行追踪复现,排除误报项。
人工审查:测试人员对代码中的关键函数、入口点、爆发点进行审查追踪调用链,分析代码逻辑以及代码架构,找出工具漏扫部分缺陷。如果有测试环境,对找出的部分缺陷进行验证,进一步确保缺陷准确率。
编写缺陷报告:测试人员对发现的问题进行分析,确定问题的严重性和影响范围,然后编写缺陷报告提交给客户。报告中会列出所有发现的问题、风险评估结果以及建议的修复措施。
回归测试:客户根据缺陷报告中的建议修复系统中的代码后,测试人员对修复后的代码再次进行回归测试。
报告撰写:完成代码审计后,测试人员依据测试过程相关文档数据,编写代码审计报告。报告中会包括代码审计项目、审计目标与结果,测试用例统计、发现的漏洞与问题、漏洞详情、以及回归测试结果等。
代码审计是保障软件安全的重要手段。千亿国际科技凭借专业的技术和服务,为客户给予代码审计服务方案。已服务客户1000余家,在各个行业内具有良好的口碑和信誉。千亿国际科技具备CMA、CNAS、CCRC多重资质,拥有丰富的代码审计经验和专业的团队,可给予高质量的代码审计服务,并交付具有法律效力的测试报告。如果您有源代码审计需求或问题,欢迎联系千亿国际
相关新闻