您的位置:首页 > 编程语言

代码扫描规则

2017-02-08 09:18 218 查看
SV.EXEC过程注入 安全漏洞审计OS命令注入过程注入2
SV.SQLSQL注入 安全漏洞审计SQL注入SQL注入2
SV.SQL.DBSOURCE把来自数据库中未检查的信息用在SQL语句中安全漏洞审计SQL注入把来自数据库中未检查的信息用在SQL语句中3
SV.HTTP_SPLITHTTP相应拆分***安全漏洞审计URL注入HTTP相应拆分***2
SV.TAINT_NATIVE被污染的数据进入本地代码中安全漏洞审计URL注入被污染的数据进入本地代码中3
SV.TAINT被污染的数据安全漏洞审计URL注入被污染的数据3
SV.XPATH未验证的用户输入被用来作为Xpath表达式安全漏洞审计XPATH注入未验证的用户输入被用来作为Xpath表达式2
SV.EXEC.ENV过程注入。环境变量。安全漏洞审计XPATH注入过程注入。环境变量。2
SV.EXEC.DIR过程注入。工作目录安全漏洞审计XPATH注入过程注入。工作目录2
SV.TMPFILE临时文件路径损坏安全漏洞审计XPATH注入临时文件路径损坏3
SV.PATH.INJ文件名注入 安全漏洞审计XPATH注入文件名注入3
SV.PATH路径和文件名注入安全漏洞审计XPATH注入路径和文件名注入3
JD.UN.PMET未使用私有方法安全漏洞审计不安全的直接对象引用-MVC开发模式下未使用私有方法3
SV.EMAIL未检查的电子邮件安全漏洞审计传输层保护未检查的电子邮件2
SV.DATA.DB数据注入 安全漏洞审计传输层保护数据注入2
SV.LOG_FORGING伪造日志 安全漏洞审计传输层保护伪造日志3
SV.DATA.BOUND在可信用的储存中出现不信任的数据泄露安全漏洞审计传输层保护在可信用的储存中出现不信任的数据泄露3
SV.EXPOSE.STORE方法储存引用可变的对象安全漏洞审计传输层保护方法储存引用可变的对象4
SV.EXPOSE.RET内部表示可能被暴露安全漏洞审计传输层保护内部表示可能被暴露4
SV.EXPOSE.MUTABLEFIELD静态可变的字段可能被恶意的代码***安全漏洞审计传输层保护静态可变的字段可能被恶意的代码***4
SV.XSS.DB跨站点的脚本语言(已储存的XSS)安全漏洞审计存储式XSS跨站点的脚本语言(已储存的XSS)2
SV.XSS.REF跨站点的脚本语言(已反映的XSS)安全漏洞审计反射式XSS跨站点的脚本语言(已反映的XSS)2
SV.STRUTS.VALIDMET源代码形式:验证方法安全漏洞审计工具类源代码形式:验证方法4
SV.STRUTS.STATIC源代码形式:静态的字段安全漏洞审计工具类源代码形式:静态的字段4
SV.STRUTS.RESETMET源代码形式:重置的方法安全漏洞审计工具类源代码形式:重置的方法4
SV.STRUTS.PRIVATE源代码形式:非私有的字段安全漏洞审计工具类源代码形式:非私有的字段4
SV.STRUTS.NOTVALID源代码形式:不一致的验证安全漏洞审计工具类源代码形式:不一致的验证4
SV.STRUTS.NOTRESET源代码形式:不一致的重置安全漏洞审计工具类源代码形式:不一致的重置4
SV.PASSWD.PLAIN普通字符密码安全漏洞审计加密方法普通字符密码2
SV.PASSWD.HC.EMPTY空密码 安全漏洞审计加密方法空密码2
SV.PASSWD.HC硬编码密码安全漏洞审计加密方法硬编码密码2
SV.RANDOM使用不安全的随机数字生成 器安全漏洞审计加密方法使用不安全的随机数字生成 器4
UF.SQLOBJ已关闭的SQL对象的使用安全漏洞审计注销已关闭的SQL对象的使用2
UF.SQLCON已关闭的SQL连接的使用安全漏洞审计注销已关闭的SQL连接的使用2
UF.SOCK已关闭的socket的使用安全漏洞审计注销已关闭的socket的使用2
FIN.NOSUPER在没有调用super.finalize()时对finalize()的实现安全漏洞审计异常处理规范在没有调用super.finalize()时对finalize()的实现3
FIN.EMPTY空的finalize()方法安全漏洞审计异常处理规范空的finalize()方法3
RTC.CALL抛出的类型是多余的安全漏洞审计异常处理规范抛出的类型是多余的4
JD.UNCAUGHT未被捕捉到的异常安全漏洞审计异常处理规范未被捕捉到的异常4
JD.CATCH捕捉运行时间异常安全漏洞审计异常处理规范捕捉运行时间异常4
JD.CAST.UPCAST针对子类型可能的类抛出异常安全漏洞审计异常处理规范针对子类型可能的类抛出异常4
JD.CAST.SUSP针对不同类型可能的类抛出异常安全漏洞审计异常处理规范针对不同类型可能的类抛出异常4
JD.CAST.COL针对集合中可能的类抛出异常安全漏洞审计异常处理规范针对集合中可能的类抛出异常4
EXC.BROADTHROWS方法有一个过宽泛的throws声明安全漏洞审计异常处理规范方法有一个过宽泛的throws声明4
ECC.EMPTY空的catch从句安全漏洞审计异常处理规范空的catch从句4
ANDROID.RLK.SQLOBJSQL对象在退出时没有被关闭安全漏洞审计注销SQL对象在退出时没有被关闭1
ANDROID.RLK.SQLCONSQL连接在退出时没有被关闭安全漏洞审计注销SQL连接在退出时没有被关闭1
RLK.ZIPZip文件在退出时没有被关闭安全漏洞审计资源泄漏Zip文件在退出时没有被关闭1
RLK.SWTSWT对象在退出时没有被处理安全漏洞审计资源泄漏SWT对象在退出时没有被处理1
RLK.SQLOBJSQL对象在退出时没有被关闭安全漏洞审计资源泄漏SQL对象在退出时没有被关闭1
RLK.SQLCONSQL连接在退出时没有被关闭安全漏洞审计资源泄漏SQL连接在退出时没有被关闭1
RLK.SOCKSocket在退出时没有被关闭安全漏洞审计资源泄漏Socket在退出时没有被关闭1
RLK.OUT输出流在退出时没有被关闭安全漏洞审计资源泄漏输出流在退出时没有被关闭1
RLK.NIONIO对象在退出时没有被关闭安全漏洞审计资源泄漏NIO对象在退出时没有被关闭1
RLK.MICROJava Microedition连接在退出时没有被关闭安全漏洞审计资源泄漏Java Microedition连接在退出时没有被关闭1
RLK.MAILJava邮件对象在退出时没有被关闭安全漏洞审计资源泄漏Java邮件对象在退出时没有被关闭1
RLK.JNDIJNDI上下文在退出时没有被关闭安全漏洞审计资源泄漏JNDI上下文在退出时没有被关闭1
RLK.IN输入流在退出时没有被关闭安全漏洞审计资源泄漏输入流在退出时没有被关闭1
RLK.IMAGEIOImageIO 流在退出时没有被关闭安全漏洞审计资源泄漏ImageIO 流在退出时没有被关闭1
RLK.HIBERNATE潜伏对象在退出时没有被关闭安全漏洞审计资源泄漏潜伏对象在退出时没有被关闭1
RLK.AWTAWT对象在退出时没有被处理安全漏洞审计资源泄漏AWT对象在退出时没有被处理1
SV.IL.FILE文件名泄露安全漏洞审计资源泄漏文件名泄露3
SV.IL.DEV设计信息泄露安全漏洞审计资源泄漏设计信息泄露3
RLK.FIELD储存在一个字段的系统资源发生可能的泄露安全漏洞审计资源泄漏储存在一个字段的系统资源发生可能的泄露4
UF.ZIP已关闭的zip文件的使用代码规范代码语法规范已关闭的zip文件的使用2
UF.OUT已关闭的输出流的使用代码规范代码语法规范已关闭的输出流的使用2
UF.NIO已关闭的NIO对象的使用代码规范代码语法规范已关闭的NIO对象的使用2
UF.MICRO已关闭的Java Microedition连接的使用代码规范代码语法规范已关闭的Java Microedition连接的使用2
UF.MAIL已关闭的Java邮件对象的使用代码规范代码语法规范已关闭的Java邮件对象的使用2
UF.JNDI已关闭的JNDI上下文的使用代码规范代码语法规范已关闭的JNDI上下文的使用2
UF.IN已关闭的输入流的使用代码规范代码语法规范已关闭的输入流的使用2
UF.IMAGEIO已关闭的ImageIO流的使用代码规范代码语法规范已关闭的ImageIO流的使用2
SV.DOS.TMPFILEEXIT去除临时文件代码规范代码语法规范去除临时文件3
JD.UMC.FINALIZE直接调用方法'Objent.finalize'代码规范代码语法规范直接调用方法'Objent.finalize'3
JD.IFEMPTY多余的'if'语句。未完成的代码代码规范代码语法规范多余的'if'语句。未完成的代码3
JD.IFBAD多余的'if'语句代码规范代码语法规范多余的'if'语句3
JD.BITR多余的表达式代码规范代码语法规范多余的表达式3
JD.BITCMP在表达式中使用非短路逻辑代码规范代码语法规范在表达式中使用非短路逻辑3
UMC.TOSTRING不需要的toString()方法需要一个字符串参数代码规范代码语法规范不需要的toString()方法需要一个字符串参数4
UMC.SYSOUT使用System.out方法调用的调试打印是不需要的代码规范代码语法规范使用System.out方法调用的调试打印是不需要的4
UMC.SYSERR使用System.err方法调用的调试打印是不需要的代码规范代码语法规范使用System.err方法调用的调试打印是不需要的4
UMC.GCSystem.gc()方法调用是不需要的代码规范代码语法规范System.gc()方法调用是不需要的4
UMC.EXITSystem.exit()和Runtime.exit()方法的调用不应该被使用在控制器模式代码规范代码语法规范System.exit()和Runtime.exit()方法的调用不应该被使用在控制器模式4
SYNCH.NESTEDS已同步的静态方法用同样已持有的锁来调用另一个已同步的静态的方法代码规范代码语法规范已同步的静态方法用同样已持有的锁来调用另一个已同步的静态的方法4
SYNCH.NESTED已同步的方法用同样已持有的锁来调用另一个已同步的方法代码规范代码语法规范已同步的方法用同样已持有的锁来调用另一个已同步的方法4
SV.USE.POLICY直接使用Policy的方法代码规范代码语法规范直接使用Policy的方法4
SV.UMD.MAIN残余的调试模式-主要的方法代码规范代码语法规范残余的调试模式-主要的方法4
SV.UMC.THREADS错误的实践:使用线程管理代码规范代码语法规范错误的实践:使用线程管理4
SV.UMC.JDBC应用程序应该避免直接调用DriverManager.getConnection()代码规范代码语法规范应用程序应该避免直接调用DriverManager.getConnection()4
SV.UMC.EXITSystem.exit()和Runtime.exit()方法的调用不应该被使用在控制器模式代码规范代码语法规范System.exit()和Runtime.exit()方法的调用不应该被使用在控制器模式4
SV.SOCKETS错误的实践:使用socket代码规范代码语法规范错误的实践:使用socket4
SV.SERIAL.SIG在序列类中方法readObject()和writeObject()应该有正确的特征代码规范代码语法规范在序列类中方法readObject()和writeObject()应该有正确的特征4
SV.SERIAL.NOWRITE方法writeObject()应该被定义为一个序列化的类代码规范代码语法规范方法writeObject()应该被定义为一个序列化的类4
SV.SERIAL.NOREAD方法readObject()应该被定义为一个序列化的类代码规范代码语法规范方法readObject()应该被定义为一个序列化的类4
SV.SERIAL.NON类实施'Serializable'代码规范代码语法规范类实施'Serializable'4
SV.SERIAL.INON界面扩展为'Serializable'代码规范代码语法规范界面扩展为'Serializable'4
SV.EXPOSE.IFIELD实例字段应该被制成final代码规范代码语法规范实例字段应该被制成final4
SV.EXPOSE.FIN方法finalize()应该有受保护的进入修饰语,而不是公共的修饰语代码规范代码语法规范方法finalize()应该有受保护的进入修饰语,而不是公共的修饰语4
SV.EXPOSE.FIELD静态字段被恶意的代码给修改代码规范代码语法规范静态字段被恶意的代码给修改4
SV.CLEXT.POLICY类扩展为'java.security.Policy代码规范代码语法规范类扩展为'java.security.Policy4
SV.CLEXT.CLLOADER类扩展为'java.lang.ClassLoader'代码规范代码语法规范类扩展为'java.lang.ClassLoader'4
STRCON.LOOP在一个循环体中针对字符串使用附加代码规范代码语法规范在一个循环体中针对字符串使用附加4
RR.IGNORED已返回的值被忽略代码规范代码语法规范已返回的值被忽略4
RNU.THISthis和null的比较,但是this不能为null代码规范代码语法规范this和null的比较,但是this不能为null4
RI.IGNOREDCALL一个被调用在不变对象上的方法的返回值被忽略代码规范代码语法规范一个被调用在不变对象上的方法的返回值被忽略4
REDUN.OP在同样表达式的两边使用可疑的操作符代码规范代码语法规范在同样表达式的两边使用可疑的操作符4
REDUN.NULL使用变量,而不是空的常量代码规范代码语法规范使用变量,而不是空的常量4
REDUN.FINAL多余的'final'修饰语代码规范代码语法规范多余的'final'修饰语4
REDUN.EQNULL用表达式和空值(从未正确)来调用可疑的equals()代码规范代码语法规范用表达式和空值(从未正确)来调用可疑的equals()4
REDUN.EQ在两边使用相同的表达式来调用可疑的equals()代码规范代码语法规范在两边使用相同的表达式来调用可疑的equals()4
REDUN.DEF表达式分配给自身代码规范代码语法规范表达式分配给自身4
MNA.SUS可疑的方法名称代码规范代码语法规范可疑的方法名称4
MNA.CNS方法名称与结构名称相同,但不是一个结构体代码规范代码语法规范方法名称与结构名称相同,但不是一个结构体4
MNA.CAP方法名称应该以非大写字母开始代码规范代码语法规范方法名称应该以非大写字母开始4
JD.VNU.NULL变量在空值被分配后从未被读取代码规范代码语法规范变量在空值被分配后从未被读取4
JD.VNU变量在被分配后从未被读取代码规范代码语法规范变量在被分配后从未被读取4
JD.UN.MET未使用的非私有的方法代码规范代码语法规范未使用的非私有的方法4
JD.UMC.WAITWait被调用在不正确的对象中代码规范代码语法规范Wait被调用在不正确的对象中4
JD.THREAD.RUN直接调用一个'Thread.run'方法代码规范代码语法规范直接调用一个'Thread.run'方法4
JD.SYNC.IN不一致的同步代码规范代码语法规范不一致的同步4
JD.EQ.UTC在不兼容的类型中调用等式代码规范代码语法规范在不兼容的类型中调用等式4
JD.EQ.UTA在不兼容的类型(数组和非数组)中调用'equals'代码规范代码语法规范在不兼容的类型(数组和非数组)中调用'equals'4
JD.CALL.WRONGSTATIC通过实例引用来调用静态的方法代码规范代码语法规范通过实例引用来调用静态的方法4
FSC.PUB类和它的父类中有同名的公共的字段代码规范代码语法规范类和它的父类中有同名的公共的字段4
FSC.PRV类和它的父类中有同名的私有的字段代码规范代码语法规范类和它的父类中有同名的私有的字段4
FSC.PRT类和它的父类中有同名的受保护的字段代码规范代码语法规范类和它的父类中有同名的受保护的字段4
JD.SYNC.DCL已双重检查过的锁定代码规范代码语法规范已双重检查过的锁定4
JD.ST.POS针对方法'indexOf'不正确的检查代码规范代码语法规范针对方法'indexOf'不正确的检查4
JD.RC.EXPR.DEAD导致死代码的多余的检查代码规范代码语法规范导致死代码的多余的检查4
JD.RC.EXPR.CHECK测试表达式始终是正确的代码规范代码语法规范测试表达式始终是正确的4
JD.OVER不匹配的覆盖代码规范代码语法规范不匹配的覆盖4
JD.NEXT可能的'没有此元素异常'代码规范代码语法规范可能的'没有此元素异常'4
JD.LOCK.WAIT用已持有的锁来调用方法'wait'代码规范代码语法规范用已持有的锁来调用方法'wait'4
JD.LOCK.SLEEP用已持有的锁来调用方法'sleep'代码规范代码语法规范用已持有的锁来调用方法'sleep'4
JD.LOCK.NOTIFY用已持有的锁来调用方法'notify'代码规范代码语法规范用已持有的锁来调用方法'notify'4
JD.LOCK在未锁的情况下上锁代码规范代码语法规范在未锁的情况下上锁4
JD.LIST.ADD把容器添加到自身代码规范代码语法规范把容器添加到自身4
JD.INST.TRUE多余的'instanceof'条件代码规范代码语法规范多余的'instanceof'条件4
JD.INF.AREC明显的无限递归代码规范代码语法规范明显的无限递归4
JD.FINRET最终返回到内部代码规范代码语法规范最终返回到内部4
ESCMP.EMPTYSTR无效的空字符串比较代码规范代码语法规范无效的空字符串比较4
EHC.HASH类定义了equal(),但是没有定义hashCode()代码规范代码语法规范类定义了equal(),但是没有定义hashCode()4
EHC.EQ类定义了hashCode(),但是没有定义equals()代码规范代码语法规范类定义了hashCode(),但是没有定义equals()4
COV.CMP方法compareTo()应该有签名'公共的int compareTo(对象)代码规范代码语法规范方法compareTo()应该有签名'公共的int compareTo(对象)4
CMPF.FLOAT在浮点类型中等式的检查代码规范代码语法规范在浮点类型中等式的检查4
CMP.STR用==号来比较字符串代码规范代码语法规范用==号来比较字符串4
CMP.OBJ用==号来比较对象代码规范代码语法规范用==号来比较对象4
CMP.CLASS通过类名来比较代码规范代码语法规范通过类名来比较4
UC.STRV不必要地创建空的字符串对象代码漏洞风险审计初始化检查
不必要地创建空的字符串对象4
UC.STRS从一个字符表达式中不必要地创建新的字符串对象代码漏洞风险审计初始化检查
从一个字符表达式中不必要地创建新的字符串对象4
UC.BOOLS从一个字符串表达式中不必要地创建新的布尔对象代码漏洞风险审计初始化检查
从一个字符串表达式中不必要地创建新的布尔对象4
UC.BOOLB从一个布尔表达式中不必要地创建新的布尔表达式代码漏洞风险审计初始化检查
从一个布尔表达式中不必要地创建新的布尔表达式4
SV.SHARED.VAR未同步地进入控制器中的静态变量代码漏洞风险审计初始化检查
未同步地进入控制器中的静态变量4
SV.CLONE.SUP类实施'clone'方法,但是不实施Clonable方法代码漏洞风险审计初始化检查
类实施'clone'方法,但是不实施Clonable方法4
SV.CLLOADER类别载入器的直接使用代码漏洞风险审计初始化检查
类别载入器的直接使用4
JD.UNMOD无法改变地址的调整代码漏洞风险审计迭代器检查无法改变地址的调整2
SV.DOS.ARRSIZE将已污染的尺寸用作数组分配代码漏洞风险审计迭代器检查将已污染的尺寸用作数组分配3
SV.DOS.ARRINDEX将已污染的指标用作数组存取代码漏洞风险审计迭代器检查将已污染的指标用作数组存取3
JD.CONCUR可能的并行调整异常代码漏洞风险审计迭代器检查可能的并行调整异常3
JD.CAST.KEY把可疑的关键类型用来从集合中获得元素代码漏洞风险审计迭代器检查把可疑的关键类型用来从集合中获得元素4
SV.INT_OVF感染数据可能导致整数溢出代码漏洞风险审计缓冲区溢出感染数据可能导致整数溢出2
SV.STRBUF.CLEAN字符串缓冲区没有被清扫代码漏洞风险审计缓冲区溢出字符串缓冲区没有被清扫3
JD.BITMASK在位操作中可能的错误代码漏洞风险审计缓冲区溢出在位操作中可能的错误3
NPE.RET.UTIL来自一个映射或者一个集合的一个空值的解引用代码漏洞风险审计空指针解引用来自一个映射或者一个集合的一个空值的解引用1
NPE.RET来自一个方法中的空值的解引用代码漏洞风险审计空指针解引用来自一个方法中的空值的解引用1
NPE.CONST在空值来自的常量中发生空指针解引用代码漏洞风险审计空指针解引用在空值来自的常量中发生空指针解引用1
NPE.COND在空值来自的条件句中发生空指针解引用代码漏洞风险审计空指针解引用在空值来自的条件句中发生空指针解引用1
NPE.STAT一个返回值(静态的)的空指针解引用代码漏洞风险审计空指针解引用一个返回值(静态的)的空指针解引用4
SV.DOS.TMPFILEDEL为了JVM的寿命舍去临时文件代码漏洞风险审计内存泄露为了JVM的寿命舍去临时文件3
JD.UMC.RUNFIN调用runFinalizedOnExit()代码漏洞风险审计内存泄露调用runFinalizedOnExit()3
RI.IGNOREDNEW新创建的对象被忽略代码漏洞风险审计内存泄露新创建的对象被忽略4
JD.EQ.ARR在数组中调用'equals'代码漏洞风险审计数组越界在数组中调用'equals'4
ANDROID.RLK.MEDIAPLAYER媒体播放器在退出时没有被释放其他其它媒体播放器在退出时没有被释放1
ANDROID.RLK.MEDIARECORDER媒体录影机在退出时没有被释放其他其它媒体录影机在退出时没有被释放1
ANDROID.UF.BITMAP循环位图的使用其他其它循环位图的使用2
ANDROID.UF.CAMERA已发布相机的使用其他其它已发布相机的使用2
ANDROID.UF.MEDIAPLAYER已发布媒体播放器的使用其他其它已发布媒体播放器的使用2
ANDROID.UF.MEDIARECORDER已发布媒体播放器的使用其他其它已发布媒体播放器的使用2
ANDROID.NPE在一个Androind应用程序中一个空值的解引用其他其它在一个Androind应用程序中一个空值的解引用4
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息