代码审计报告.docx
《代码审计报告.docx》由会员分享,可在线阅读,更多相关《代码审计报告.docx(27页珍藏版)》请在第一文库网上搜索。
1、代码审计报告代码审查报告XXXX公司版本信息文档标识:当前版本:当前状态:草稿发布日期:发布修改历史日期版本作者修改内容评审号变更控制评审杳J0项名称审查日期分类重要性检查项备注OD名重要命名规则是否与所采用的规范保持一致?成员变量,方法参数等需要使用首字母小写,其余单词首字母大写的命名方式,禁止使用下划线(一)数字等方式命名不要出现局部变量,成员变量大写字母开头等问题一般是否遵循了最小长度最多信息原则?各种命名尽可能短,表意准确,除2代替*。,4代替qOr外,不建议使用数字在命名中重要has/can/is前缀的函数是否返回布尔型?成员变量,方法参数,局部变量等为布尔型时,如果出现has/ca
2、n/is开头,贝捋这些词去掉重要类名是否存在重名问题?自己实现的类尽量不要和别人的类重名,尽管不在同一个包下,特别是子类和父类重名的情况注释重要注释是否较清晰且必要?方法JAVADoC注释中需要说明各参数、返回值及异常说明,参数说明需按照参数名称及用意对应标注重要复杂的分支流程是否已经被注释?一般距离较远的是否已经被注释?函数是否已经有文档注释文件,类(含接口,枚举等),成员重要(功能、输入、返回及其变量,他可选)方法前需要有javadoc的注释一般特殊用法是否被注释?声明、空白、缩进一般每行是否只声明了一个变量(特别是那些可能出错的类型)重要变量是否已经在定义的同时初始化?重要类属性是否都执
3、行了初始化?一般代码段落是否被合适地以空行分隔?一般是否合理地使用了空格使程序更清晰?基本代码格式中的空格符不可缺少,这些空格出现在,:,+,-及各种括号附近提示代码行长度是否在要求之内?每行不得超过120个字符重要contro11er,service,dao中不要声明有状态的变量。此变量不能被修改。如果要进行修改,必须通过锁进行控制。一般折行是否恰当?句/布/一般集合是否被定义为泛型类型?定义集合时,建议定义其泛型类型,减少类型转换和警告错误一般包含复合语句的是否成对出现并符合规范?if,e1se,e1se?if,whi1ejor,case是否给重要单个的循环、条件语句也加了代码块必须用(包
4、围一般单个变量是否只做单个用单行是否只有单个功能重要(不要使用;进行多行合并)单个函数是否执行了单个重要功能并与其命名相符?操作符+和操作符_般的应用是否符合规范规模单个函数不超过规定行缩进层数是否不超过规重要定?可靠性则/重要是否已经消除了所有警开发工具的警告重要重要重要告?常数变量是否声明为fina1?对象使用前是否进行了检成员变量,局部变量是否在使用前被赋值?对象初始化为nu11的对象被调用前必须被重新赋值,如果赋值语句在try块中,调用操作必须在try块中一般局部对象变量使用后是否被复位为NU11?特别是数组集合Map重要对数组的访问是否是安全的(合法的index取值为O,MAX_SI
5、ZE-1)O重要是否确认没有同名变量局严禁局部变量名称和类或对象成员变部重复定义问题?量同名一般程序中是否只使用了简单的表达式?重要是否已经用()使操作符优先级明确化?所有判断是否都使用了常量放在比较符前可以有效降低比较重要(常量=变量或者常符写成赋值语句,量.equa1s(变量)的形减少空指针异常是否每个if-e1seif-e1se语句都有最后一个e1se重要以确保处理了全集是否每个SWitCh-CaSe语重要句都有最后一个defau1t以确保处理了全集?for循环是否都使用了包含下限不包含上限的形式一般(k=0;kMAX)XM1标记书写是否完整,重要字符串的拼写是否正确?对于流操作代码的异
6、常捕关闭前需要判断流对象是否为空重要获是否有fina11y操作以关闭流对象?提不退出代码段时是否对临时对象做了释放处理?重要对浮点数值的相等判断是否是恰当的?严禁使用=直接判断浮点数值。提供通用方法重要是否对象比较都使用了equa1s?对象(包括包装类)比较必须使用equa1s,而不是使用=或!=操作要使用equa1s进行比较时重是否确保比较的两个对象类型一致?equa1s方法比较的对象在对象类型确定的前提下,建议是同一类型的,例如Integer和,”使用equa1s是不提倡的般操作MaP或PrOPertieS结构对象,用于传值时是否将Key定义为常量?Session,ReqUeSt等又寸象的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 代码 审计报告