源代码审查范围为:

源代码审查范围为:

行为问题:由于应用程序的意外行为而引发的漏洞。

路径错误:不恰当的处理访问路径而引发的漏洞。

数据处理:处理数据的功能中发现的漏洞。

处理程序错误:应用程序未正确处理运行时出现的错误而引发的漏洞。

不充分的封装:未充分封装关键数据或功能而引发的漏洞。

时间和状态:在多系统、进程、线程并发计算的环境下由于时间和状态管理不恰当而引发的漏洞。

5.1.2审查阶段

按照计划进行代码审查,发现并记录问题。

5.1.2.1.1行为问题

不可控的内存分配

漏洞描述:内存分配的大小受外部控制的输入数据影响,且程序没有指定内存分配大小的上限。漏洞风险:攻击者可以使程序分配大量的内存,程序可能会因为内存资源不足而崩溃。

修复或规避建议:在程序中指定内存分配大小的上限,在分配内存前对要分配的内存大小进行验证,确保要分配的内存大小不超过上限。

示例1:规范用法之一

5.1.2.1.2路径错误

不可信的搜索路径

漏洞描述:程序使用关键资源时没有指定资源的路径,而是依赖操作系统去搜索资源。

漏洞风险:攻击者可以在搜索优先级更高的文件夹中放入相同名称的资源,程序会使用攻击者控制的资源。

修复或规避建议:使用关键资源时指定资源所在的路径。

示例1:规范用法之一

5.1.2.1.3数据处理

相对路径遍历

漏洞描述:路径名受外部控制的输入数据影响,且程序没有使能够解析到目录外位置的字符序列(如"..")失效。

漏洞风险:攻击者可以通过输入能够解析到目录外位置的字符序列来访问限制目录之外的文件或目录。

修复或规避建议:在构建路径名前对输入数据进行验证,确保外部输入仅包含允许的构成路径名的字符。

示例1:规范用法之一

绝对路径遍历

漏洞描述:路径名由外部控制的输入数据决定,且程序没有限制路径名允许访问的目录。

漏洞风险:攻击者可以通过输人路径名来访问任意的文件或目录。

修复或规避建议:在程序中指定允许访问的文件或目录,在访问文件或目录前对路径名进行验证,确保仅允许访问指定的文件或目录。

示例2:规范用法之一

5.1.2.1.4处理程序错误

未限制危险类型文件的上传

漏洞描述:软件没有限制允许用户上传的文件的类型。

漏洞风险:攻击者可上传具有危险类型的文件,这些文件可能在产品的环境中自动被处理。

修复或规避建议:限制允许用户上传的文件的类型。

示例1:规范用法之一

5.1.2.1.5不充分的封装

违反信任边界

漏洞描述:让数据从不受信任的一边移到受信任的一边却未经验证。

漏洞风险:程序员更容易错误地相信那些未被验证的数据,导致未经验证的数据被攻击者利用。信任边界可以被认为是画在程序中的一条线。线的一侧是不受信任数据:另一侧

相关推荐
KKKlucifer14 分钟前
数据安全管控产品选型排名与深度解析
网络·安全
JCETech_Info1 小时前
【西门子指南】GoProbe 在 SINUMERIK 840D/828D 上的应用
网络·制造·智能制造·cnc·宏程序·测头
互联网散修1 小时前
鸿蒙实战:网络状态监听与诊断工具
网络·华为·harmonyos·网络状态监听
其实防守也摸鱼2 小时前
软件安全与漏洞--软件安全编码与防御技术理论题库
开发语言·网络·安全·网络安全·软件安全·软件安全与漏洞
Yang96112 小时前
光纤接续零损耗:成都鼎讯 AM-601光纤熔接机在风电能源中的应用
网络·能源
极创信息2 小时前
Linux挖矿病毒深度清理实战教程,从进程隐藏、Rootkit驻留到彻底根除
java·大数据·linux·运维·安全·tomcat·健康医疗
数据知道2 小时前
指纹浏览器本地存储“孤岛化”:IndexedDB、LocalStorage、SessionStorage 的安全隔离
爬虫·安全·数据采集·指纹浏览器
juesdo2 小时前
array_search()函数的用法
web安全·php
xhtdj3 小时前
智源大会圆桌大模型没有终局具身智能可能是中国的 AlphaGo 时刻
人工智能·clickhouse·安全·动态规划
HavenlonLabs3 小时前
区块链解决信任分布,AI 需要解决能力控制
人工智能·安全·区块链