Clockwork Java检查器参考

网址: https://docs.roguewave.com/en/klocwork/current/javacheckerreference

 

检查员代码描述默认严重性默认启用?可调参数?
ANDROID.LIFECYCLE.SV.FRAGMENTINJ未经验证的片段类名称1真正没有
ANDROID.LIFECYCLE.SV.GETEXTRA未经验证的外部数据3真正没有
ANDROID.NPE取消引用Android应用程序中的空值4真正
ANDROID.RLK.MEDIAPLAYER媒体播放器退出时不会被释放1真正
ANDROID.RLK.MEDIARECORDER媒体记录器在退出时不会被释放1真正
ANDROID.RLK.SQLCON退出时不关闭SQL连接1真正
ANDROID.RLK.SQLOBJ退出时不关闭Sql对象1真正
ANDROID.UF.BITMAP使用循环位图2真正
ANDROID.UF.CAMERA使用已发布的相机2真正
ANDROID.UF.MEDIAPLAYER使用已发布的媒体播放器2真正
ANDROID.UF.MEDIARECORDER使用已发布的媒体记录器2真正
CMP.CLASS按类名比较4没有
CMPF.FLOAT应避免对浮点类型进行等式检查4真正没有
CMP.OBJ使用==比较对象4真正没有
CMP.STR将字符串与==进行比较4真正没有
COV.CMP方法compareTo()应该有签名'public int compareTo(Object)'4真正没有
ECC.EMPTY空捕获条款4真正没有
EHC.EQ类定义hashCode()但不定义equals()4真正没有
EHC.HASH类定义equals()但不定义hashCode()4真正没有
ESCMP.EMPTYSTR低效的空字符串比较4真正没有
EXC.BROADTHROWS方法有一个过于宽泛的抛出声明4真正没有
FIN.EMPTY应删除空的finalize()方法3真正没有
FIN.NOSUPERfinalize()方法的实现应该调用super.finalize()3真正没有
FSC.PRT类及其超类具有相同名称的受保护字段4没有
FSC.PRV类及其超类具有相同名称的私有字段4没有
FSC.PUB类及其超类具有相同名称的公共字段4没有
JD.BITCMP在表达式中使用非短路逻辑3真正没有
JD.BITMASK位操作可能出错3真正没有
JD.BITR冗余的表达3真正没有
JD.CALL.WRONGSTATIC通过实例引用调用静态方法4真正没有
JD.CAST.COL集合可能的ClassCastException4真正没有
JD.CAST.KEY用于从集合中检索元素的可疑密钥类型4真正没有
JD.CAST.SUSP不同类型可能的ClassCastException4真正没有
JD.CAST.UPCAST子类型可能的ClassCastException4真正没有
JD.CATCH捕获运行时异常4真正没有
JD.CONCUR可能的ConcurrentModificationException3真正没有
JD.EQ.ARR在数组上调用'equals'4真正没有
JD.EQ.UTA在不兼容的类型(数组和非数组)上调用'equals'4真正没有
JD.EQ.UTC在不兼容的类型上调用equals4真正没有
JD.FINRET最后回到里面4真正没有
JD.IFBAD冗余'if'语句3真正没有
JD.IFEMPTY冗余'if'语句。未完成的代码3真正没有
JD.INF.AREC表观无限递归4真正没有
JD.INST.TRUE冗余'instanceof'条件4真正没有
JD.LIST.ADD容器增加了自己4真正没有
JD.LOCK锁定没有解锁2真正
JD.LOCK.NOTIFY方法'notify'通过持有锁来调用4真正没有
JD.LOCK.SLEEP方法'sleep'用锁定调用4真正没有
JD.LOCK.WAIT方法'wait'在持有锁的情况下调用4真正没有
JD.METHOD.CBS方法可以是静态的4没有
JD.NEXT可能'NoSuchElementException'4真正
JD.OVER不匹配的覆盖4真正没有
JD.RC.EXPR.CHECK测试表达总是正确的4真正没有
JD.RC.EXPR.DEAD冗余检查导致死代码4没有
JD.ST.POS方法'indexOf'的检查不正确4真正没有
JD.SYNC.DCL双重检查锁定4真正没有
JD.SYNC.IN同步不一致4真正没有
JD.THREAD.RUN显式调用'Thread.run'方法4真正没有
JD.UMC.FINALIZE显式调用方法'Object.finalize'3真正没有
JD.UMC.RUNFIN调用runFinalizersOnExit()3真正没有
JD.UMC.WAIT等待调用不正确的对象4真正没有
JD.UNCAUGHT未捕获的异常4真正没有
JD.UN.MET未使用的非私有方法4没有
JD.UNMOD修改不可修改的集合2真正
JD.UN.PMET未使用的私有方法3真正没有
JD.VNU分配后从未读取变量4真正没有
JD.VNU.NULL在分配null之后,永远不会读取变量4真正没有
MNA.CAP方法名称应以非大写字母开头4真正没有
MNA.CNS方法名称与构造函数名称相同,但它不是构造函数4真正没有
MNA.SUS可疑的方法名称4真正没有
NPE.COND空指针取消引用,其中null来自条件1真正
NPE.CONST空指针取消引用,其中null来自常量1真正
NPE.RET取消引用从方法返回的空值1真正
NPE.RET.UTIL取消引用从地图或集合返回的空值1真正
NPE.STAT空指针取消引用返回值(统计)4
REDUN.DEF表达式赋予自身4真正没有
REDUN.EQ可疑的equals()在两边都用相同的表达式调用4真正没有
REDUN.EQNULL用表达式调用的可疑equals()和null(从不为真)4真正没有
REDUN.FINAL冗余'最终'修饰符4真正没有
REDUN.NULL使用变量而不是null常量4真正没有
REDUN.OP双方同样表达的可疑操作4真正没有
RI.IGNOREDCALL忽略在不可变对象上调用的方法返回的值4真正没有
RI.IGNOREDNEW新创建的对象将被忽略4真正没有
RLK.AWTAWT对象未在出口处处理1真正
RLK.FIELD存储在字段中的系统资源可能泄漏4真正没有
RLK.HIBERNATE退出时不关闭Hibernate对象1真正
RLK.IMAGEIO退出时不关闭ImageIO流1真正
RLK.IN输出流在退出时未关闭1真正
RLK.JNDI退出时不关闭JNDI上下文1真正
RLK.MAIL退出时不关闭Java邮件对象1真正
RLK.MICRO退出时未关闭Java Microedition连接1真正
RLK.NIO退出时NIO对象未关闭1真正
RLK.OUT退出时不关闭输出流1真正
RLK.SOCK插座未在退出时关闭1真正
RLK.SQLCON退出时不关闭SQL连接1真正
RLK.SQLOBJ退出时不关闭Sql对象1真正
RLK.SWTSWT对象未在出口处放置1真正
RLK.ZIPZip文件在退出时未关闭1真正
RNU.THIS比较这和null但不能为空4真正没有
RR.IGNORED返回的值将被忽略4真正没有
RTC.CALL类型转换是多余的4真正没有
STRCON.LOOP在循环中使用append for string4真正没有
SV.CLASSDEF.INJ运行时类定义注入2真正没有
SV.CLASSLOADER.INJ类加载器URL注入2真正没有
SV.CLEXT.CLLOADER类扩展'java.lang.ClassLoader'4没有
SV.CLEXT.POLICY类扩展'java.security.Policy'4没有
SV.CLLOADER直接使用Classloader4没有
SV.CLONE.SUP类实现'clone'方法但不实现Cloneable4没有
SV.CSRF.GETGET请求中的CSRF令牌4
SV.CSRF.ORIGIN没有原始检查的请求处理程序4
SV.CSRF.TOKEN状态更改请求处理程序没有CSRF检查4
SV.DATA.BOUND不受信任的数据泄漏到可信存储中3真正
SV.DATA.DB数据注入2真正
SV.DOS.ARRINDEX用于阵列访问的污点索引3真正
SV.DOS.ARRSIZE用于阵列分配的污点大小3真正
SV.DOS.TMPFILEDEL保留JVM生命周期的临时文件3真正
SV.DOS.TMPFILEEXIT留下临时档案3真正
SV.ECV空证书验证4没有
SV.EMAIL未经检查的电子邮件2真正
SV.EXEC工艺注射2真正
SV.EXEC.DIR工艺注射。工作目录2真正
SV.EXEC.ENV工艺注射。环境变量2真正
SV.EXEC.LOCAL工艺注射。本地论点3真正没有
SV.EXPOSE.FIELD静态字段可能被恶意代码更改4没有
SV.EXPOSE.FIN方法finalize()应该有受保护的访问修饰符,而不是public4没有
SV.EXPOSE.IFIELD实例字段应该是最终的4没有
SV.EXPOSE.MUTABLEFIELD恶意代码可以访问静态可变字段4没有
SV.EXPOSE.RET内部代表可能会暴露4没有
SV.EXPOSE.STORE方法存储对可变对象的引用4没有
SV.HASH.NO_SALT使用没有盐的单向加密哈希3真正没有
SV.HTTP_SPLITHttp响应分裂2真正
SV.IL.DEV设计信息泄漏3真正
SV.IL.FILE文件名泄漏3真正
SV.INT_OVF受污染的数据可能会导致整数溢出2真正
SV.LDAP未经验证的用户输入用作LDAP过滤器2真正
SV.LOG_FORGING原木锻造3真正
SV.PASSWD.HC硬编码密码2真正
SV.PASSWD.HC.EMPTY空密码2真正
SV.PASSWD.PLAIN纯文本密码2真正
SV.PATH路径和文件名注入3真正
SV.PATH.INJ文件注入3真正
SV.RANDOM使用不安全的随机数发生器4真正没有
SV.SCRIPT脚本执行2真正
SV.SENSITIVE.DATA写入未加密的敏感数据2真正
SV.SENSITIVE.OBJ存储具有未加密的敏感数据的对象2真正
SV.SERIAL.INON接口扩展'Serializable'4没有
SV.SERIAL.NON类实现'Serializable'4没有
SV.SERIAL.NOREAD方法readObject()应该为可序列化的类定义4没有
SV.SERIAL.NOWRITE应为可序列化类定义writeObject()方法4没有
SV.SERIAL.SIG可序列化类中的readObject()和writeObject()方法应具有正确的签名4没有
SV.SHARED.VAR从servlet非同步访问静态变量4真正没有
SV.SOCKETS不良做法:使用套接字4没有
SV.SQLSql注入2真正
SV.SQL.DBSOURCESQL语句中使用来自数据库的未经检查的信息3真正
SV.STRBUF.CLEAN字符串缓冲区未清理3
SV.STRUTS.NOTRESETStruts Forms:不一致的重置4没有
SV.STRUTS.NOTVALIDStruts表单:不一致的验证4没有
SV.STRUTS.PRIVATEStruts表单:非私有字段4没有
SV.STRUTS.RESETMETStruts Forms:重置方法4没有
SV.STRUTS.STATICStruts表单:静态字段4没有
SV.STRUTS.VALIDMETStruts Forms:验证方法4没有
SV.TAINT污染的数据3
SV.TAINT_NATIVE受污染的数据转到本机代码3真正
SV.TMPFILE临时文件路径篡改3真正
SV.UMC.EXIT不应在servlet代码中使用System.exit()和Runtime.exit()方法调用4没有
SV.UMC.JDBC应用程序应避免直接调用DriverManager.getConnection()4没有
SV.UMC.THREADS糟糕的做法:使用线程管理4没有
SV.UMD.MAIN剩下的调试代码 - 主要方法4没有
SV.USE.POLICY直接使用政策方法4没有
SV.WEAK.CRYPT使用破碎或危险的密码算法3真正没有
SV.XPATH未经验证的用户输入用作XPath表达式2真正
SV.XSS.DB跨站点脚本(存储的XSS)2真正
SV.XSS.REF跨站点脚本(反射XSS)2真正
SYNCH.NESTED同步方法使用相同的锁定调用另一个同步方法4真正没有
SYNCH.NESTEDS同步静态方法使用相同的锁定调用另一个同步静态方法4真正没有
UC.BOOLB从布尔表达式中不必要地创建新的Boolean对象4真正没有
UC.BOOLS从字符串表达式中不必要地创建新的Boolean对象4真正没有
UC.STRS从字符串表达式中不必要地创建新的String对象4真正没有
UC.STRV不必要的创建空String对象4真正没有
UF.IMAGEIO使用已关闭的ImageIO流2真正没有
UF.IN封闭输入流的使用2真正没有
UF.JNDI使用已关闭的JNDI上下文2真正没有
UF.MAIL使用已关闭的Java邮件对象2真正没有
UF.MICRO使用已关闭的Java Microedition连接2真正没有
UF.NIO使用已关闭的NIO对象2真正没有
UF.OUT使用封闭的输出流2真正没有
UF.SOCK封闭插座的用法2真正没有
UF.SQLCON使用封闭的SQL连接2真正没有
UF.SQLOBJ使用已关闭的SQL对象2真正没有
UF.ZIP使用封闭的zip文件2真正没有
UMC.EXITSystem.exit()方法调用是不需要的4没有
UMC.GCSystem.gc()方法调用是不需要的4没有
UMC.SYSERR使用System.err方法调用的调试打印是不需要的4没有
UMC.SYSOUT使用System.out方法调用的调试打印是不需要的4没有
UMC.TOSTRING不必要的toString()方法调用String参数4真正没有
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值