今天给大家show一下,国内最强的代码审查工具CoBOT,对OWASP Benchmark进行代码审查的报告。
******公司
2019年10月25日
被测项目名称 |
Benchmark |
||
测试类别 |
静态代码审查 |
测试日期 |
2019年10月25日 |
委托单位 |
公司 |
||
测评结论 |
根据问题的严重程度,分为致命,严重,错误,警告,建议,五个安全级别。 此次测试共发现 致命缺陷 2 个, 严重缺陷 1716 个, 错误缺陷 0 个, 警告缺陷 0 个, 建议缺陷 0 个, 合计 1718 个。 详细分析请见(详情)章节
公司 2019年10月25日
|
||
编 制: 审 批: 批 准: |
Benchmark
风险等级是参照NASA Software Safety Guidebook风险等级划分,如下表所示:
表一:缺陷严重等级
缺陷严重等级 |
等级描述 |
致命 |
会造成程序崩溃的缺陷 |
严重 |
可能会影响程序的功能和性能的缺陷 |
错误 |
会影响程序的功能和性能,或者造成未定义行为的缺陷 |
警告 |
会轻度的影响程序功能性能,或者潜在的影响程序功能性能。 |
建议 |
不会直接影响程序的功能和性能,但这不是良好的代码风格,可能会有潜在的影响。 |
CoBOT 成立代码审计技术服务小组,该任务组在工作组织中,开展了安全保密教育,制定了安全保密措施,签署了安全保密协议,并有针对性的做好测试服务的各项准备。
本次测试工作中严格遵循以下原则:
(1)标准性原则:代码审计方案的设计和实施应依据行业、国家、国际的相关标准进行;
(2)规范性原则:软件开发商的工作过程和所有文档,应具有很好的规范性,以便于项目的跟踪和控制;
(3)可控性原则:在保证测试质量的前提下,按计划进度执行,需要保证对代码审计工作的可控性,代码审计的工具、方法和过程要在双方认可的范围之内合法进行;
(4)整体性及有限性原则:渗透性测试的内容应包括用户等各个层面,渗透性测试的对象应包括和仅限于用户所指定的具体设备及系统,未经用户授权不得减小或扩大渗透性测试的范围和对象;
(5)最小影响原则:源代码安全审查工作在模拟系统开发环境的测试机上进行,不能对正常运行的系统构成破坏和停止;
(6)保密原则:源代码安全审查的过程和结果应严格保密,不能泄露测试项目所涉及的任何打印和电子形式的有效数据和文件。
本次代码测试情况如下表所示:
检测人 |
amin |
检测时间 |
2019-10-25 17:47:18 |
文件数 |
5578 个 |
缺陷数 |
1718 个 |
代码总行数 |
313215 行 |
耗时 |
3分6秒 |
语言类型 |
Java,Html,JavaScript |
|
|
序号 |
名称 |
严重等级 |
数量 |
1 |
SE_10_03 Servlet中潜在的XSS |
致命 |
1 |
2 |
SE_01_18 printStackTrace()导致信息泄露 |
严重 |
1455 |
3 |
SE_05_03 潜在的命令行注入 |
严重 |
212 |
4 |
SE_01_16 不提供完整性的密码 |
严重 |
49 |
合计 |
|
|
1717 |
序号 |
缺陷详细信息 |
1 |
缺陷名称:SE_10_03 Servlet中潜在的XSS CWE-79 缺陷数量:1个 缺陷详解:发现了潜在的XSS。 它可以用于在客户端的浏览器中执行不需要的JavaScript。XSS是指恶意攻击者利用网站没有对用户提交数据进行转义处理或者过滤不足的缺点,进而添加一些代码,嵌入到web页面中去。使别的用户访问都会执行相应的嵌入代码。从而盗取用户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。 |
1.1缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00030.java中第55行。 缺陷说明:在(BenchmarkTest00030.java)文件第(45)行调用方法[HttpServletRequest.getParameterMap]获取外部输入变量,该变量为不受信数据,在第(55)行调用方法[HttpServletResponse.getWriter.printf]写入数据,其中包括来自不可信的外部数据,可能存在潜在的XSS攻击,不信任任何客户端提交的数据,只要是客户端提交的数据就应该先进行相应的过滤处理然后方可进行下一步的操作。 代码片段: 53 54 Object[] obj = { "a", "b"}; 55 response.getWriter().printf(param,obj); 56 } 57 } |
|
2 |
缺陷名称:SE_01_18 printStackTrace()导致信息泄露 CWE-209 缺陷数量:1455个 缺陷详解:敏感信息本身可能是有价值的信息(例如密码),或者对于发起其他更致命的攻击可能是有用的。 如 果攻击失败,攻击者可能会使用服务器提供的错误信息来启动另一个更集中的攻击。例如,尝试利用路径遍历弱点可能会产生已安装应用程序的完整路径名。 反过来,这可以用于选择适当数量的“..”序列以导航到目标文件。 使用SQL注入的攻击最初可能不会成功,但错误消息可能会显示错误的查询,这会暴露查询逻辑,甚至可能暴露查询中使用的密码或其他敏感信息。 |
2.1缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest02191.java中第111行。 缺陷说明:在(BenchmarkTest02191.java)文件第(111)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 109 } catch (java.security.InvalidKeyException e) { 110 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 111 e.printStackTrace(response.getWriter()); 112 throw new ServletException(e); 113 } catch (java.security.InvalidAlgorithmParameterException e) { |
|
2.2缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest01564.java中第105行。 缺陷说明:在(BenchmarkTest01564.java)文件第(105)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 103 } catch (javax.crypto.BadPaddingException e) { 104 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 105 e.printStackTrace(response.getWriter()); 106 throw new ServletException(e); 107 } catch (java.security.InvalidKeyException e) { |
|
2.3缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest02661.java中第104行。 缺陷说明:在(BenchmarkTest02661.java)文件第(104)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 102 } catch (java.security.InvalidKeyException e) { 103 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 104 e.printStackTrace(response.getWriter()); 105 throw new ServletException(e); 106 } catch (java.security.InvalidAlgorithmParameterException e) { |
|
2.4缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00687.java中第113行。 缺陷说明:在(BenchmarkTest00687.java)文件第(113)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 111 } catch (javax.crypto.BadPaddingException e) { 112 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 113 e.printStackTrace(response.getWriter()); 114 throw new ServletException(e); 115 } catch (java.security.InvalidKeyException e) { |
|
2.5缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest01228.java中第96行。 缺陷说明:在(BenchmarkTest01228.java)文件第(96)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 94 } catch (javax.crypto.IllegalBlockSizeException e) { 95 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 96 e.printStackTrace(response.getWriter()); 97 throw new ServletException(e); 98 } catch (javax.crypto.BadPaddingException e) { |
|
2.6缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00609.java中第92行。 缺陷说明:在(BenchmarkTest00609.java)文件第(92)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 90 } catch (java.security.NoSuchAlgorithmException e) { 91 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 92 e.printStackTrace(response.getWriter()); 93 throw new ServletException(e); 94 } catch (javax.crypto.NoSuchPaddingException e) { |
|
2.7缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00053.java中第117行。 缺陷说明:在(BenchmarkTest00053.java)文件第(117)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 115 } catch (javax.crypto.BadPaddingException e) { 116 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 117 e.printStackTrace(response.getWriter()); 118 throw new ServletException(e); 119 } catch (java.security.InvalidKeyException e) { |
|
2.8缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00350.java中第103行。 缺陷说明:在(BenchmarkTest00350.java)文件第(103)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 101 } catch (javax.crypto.IllegalBlockSizeException e) { 102 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 103 e.printStackTrace(response.getWriter()); 104 throw new ServletException(e); 105 } catch (javax.crypto.BadPaddingException e) { |
|
2.9缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00691.java中第115行。 缺陷说明:在(BenchmarkTest00691.java)文件第(115)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 113 } catch (javax.crypto.BadPaddingException e) { 114 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 115 e.printStackTrace(response.getWriter()); 116 throw new ServletException(e); 117 } catch (java.security.InvalidKeyException e) { |
|
2.10缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00056.java中第132行。 缺陷说明:在(BenchmarkTest00056.java)文件第(132)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 130 } catch (java.security.InvalidAlgorithmParameterException e) { 131 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 132 e.printStackTrace(response.getWriter()); 133 throw new ServletException(e); 134 } |
|
2.11缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest02549.java中第125行。 缺陷说明:在(BenchmarkTest02549.java)文件第(125)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 123 } catch (java.security.InvalidAlgorithmParameterException e) { 124 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 125 e.printStackTrace(response.getWriter()); 126 throw new ServletException(e); 127 } |
|
2.12缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest02460.java中第105行。 缺陷说明:在(BenchmarkTest02460.java)文件第(105)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 103 } catch (javax.crypto.BadPaddingException e) { 104 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 105 e.printStackTrace(response.getWriter()); 106 throw new ServletException(e); 107 } catch (java.security.InvalidKeyException e) { |
|
2.13缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00254.java中第115行。 缺陷说明:在(BenchmarkTest00254.java)文件第(115)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 113 } catch (java.security.InvalidKeyException e) { 114 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 115 e.printStackTrace(response.getWriter()); 116 throw new ServletException(e); 117 } catch (java.security.InvalidAlgorithmParameterException e) { |
|
2.14缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00005.java中第97行。 缺陷说明:在(BenchmarkTest00005.java)文件第(97)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 95 } catch (javax.crypto.IllegalBlockSizeException e) { 96 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 97 e.printStackTrace(response.getWriter()); 98 throw new ServletException(e); 99 } catch (javax.crypto.BadPaddingException e) { |
|
2.15缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest02103.java中第100行。 缺陷说明:在(BenchmarkTest02103.java)文件第(100)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 98 } catch (javax.crypto.IllegalBlockSizeException e) { 99 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 100 e.printStackTrace(response.getWriter()); 101 throw new ServletException(e); 102 } catch (javax.crypto.BadPaddingException e) { |
|
2.16缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00050.java中第112行。 缺陷说明:在(BenchmarkTest00050.java)文件第(112)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 110 } catch (java.security.InvalidAlgorithmParameterException e) { 111 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 112 e.printStackTrace(response.getWriter()); 113 throw new ServletException(e); 114 } |
|
2.17缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest01100.java中第109行。 缺陷说明:在(BenchmarkTest01100.java)文件第(109)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 107 } catch (javax.crypto.IllegalBlockSizeException e) { 108 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 109 e.printStackTrace(response.getWriter()); 110 throw new ServletException(e); 111 } catch (javax.crypto.BadPaddingException e) { |
|
2.18缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest01481.java中第107行。 缺陷说明:在(BenchmarkTest01481.java)文件第(107)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 105 } catch (java.security.InvalidKeyException e) { 106 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 107 e.printStackTrace(response.getWriter()); 108 throw new ServletException(e); 109 } catch (java.security.InvalidAlgorithmParameterException e) { |
|
2.19缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest01901.java中第103行。 缺陷说明:在(BenchmarkTest01901.java)文件第(103)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 101 } catch (javax.crypto.IllegalBlockSizeException e) { 102 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 103 e.printStackTrace(response.getWriter()); 104 throw new ServletException(e); 105 } catch (javax.crypto.BadPaddingException e) { |
|
2.20缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest01320.java中第116行。 缺陷说明:在(BenchmarkTest01320.java)文件第(116)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 114 } catch (java.security.InvalidAlgorithmParameterException e) { 115 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 116 e.printStackTrace(response.getWriter()); 117 throw new ServletException(e); 118 } |
|
2.21缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest01898.java中第111行。 缺陷说明:在(BenchmarkTest01898.java)文件第(111)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 109 } catch (java.security.InvalidAlgorithmParameterException e) { 110 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 111 e.printStackTrace(response.getWriter()); 112 throw new ServletException(e); 113 } |
|
2.22缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest02022.java中第91行。 缺陷说明:在(BenchmarkTest02022.java)文件第(91)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 89 } catch (javax.crypto.NoSuchPaddingException e) { 90 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 91 e.printStackTrace(response.getWriter()); 92 throw new ServletException(e); 93 } catch (javax.crypto.IllegalBlockSizeException e) { |
|
2.23缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest02296.java中第122行。 缺陷说明:在(BenchmarkTest02296.java)文件第(122)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 120 } catch (java.security.InvalidKeyException e) { 121 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 122 e.printStackTrace(response.getWriter()); 123 throw new ServletException(e); 124 // } catch (java.security.InvalidAlgorithmParameterException e) { |
|
2.24缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest02290.java中第105行。 缺陷说明:在(BenchmarkTest02290.java)文件第(105)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 103 } catch (java.security.NoSuchProviderException e) { 104 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 105 e.printStackTrace(response.getWriter()); 106 throw new ServletException(e); 107 } catch (javax.crypto.NoSuchPaddingException e) { |
|
2.25缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00854.java中第110行。 缺陷说明:在(BenchmarkTest00854.java)文件第(110)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 108 } catch (javax.crypto.BadPaddingException e) { 109 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 110 e.printStackTrace(response.getWriter()); 111 throw new ServletException(e); 112 } catch (java.security.InvalidKeyException e) { |
|
2.26缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest01400.java中第112行。 缺陷说明:在(BenchmarkTest01400.java)文件第(112)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 110 } catch (java.security.InvalidKeyException e) { 111 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 112 e.printStackTrace(response.getWriter()); 113 throw new ServletException(e); 114 } |
|
2.27缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest02020.java中第100行。 缺陷说明:在(BenchmarkTest02020.java)文件第(100)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 98 } catch (javax.crypto.NoSuchPaddingException e) { 99 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 100 e.printStackTrace(response.getWriter()); 101 throw new ServletException(e); 102 } catch (javax.crypto.IllegalBlockSizeException e) { |
|
2.28缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest01317.java中第93行。 缺陷说明:在(BenchmarkTest01317.java)文件第(93)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 91 } catch (java.security.NoSuchAlgorithmException e) { 92 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 93 e.printStackTrace(response.getWriter()); 94 throw new ServletException(e); 95 } catch (javax.crypto.NoSuchPaddingException e) { |
|
2.29缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest02373.java中第105行。 缺陷说明:在(BenchmarkTest02373.java)文件第(105)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 103 } catch (java.security.InvalidKeyException e) { 104 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 105 e.printStackTrace(response.getWriter()); 106 throw new ServletException(e); 107 } catch (java.security.InvalidAlgorithmParameterException e) { |
|
2.30缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest01976.java中第124行。 缺陷说明:在(BenchmarkTest01976.java)文件第(124)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 122 } catch (java.security.InvalidAlgorithmParameterException e) { 123 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 124 e.printStackTrace(response.getWriter()); 125 throw new ServletException(e); 126 } |
|
2.31缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00058.java中第101行。 缺陷说明:在(BenchmarkTest00058.java)文件第(101)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 99 } catch (javax.crypto.IllegalBlockSizeException e) { 100 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 101 e.printStackTrace(response.getWriter()); 102 throw new ServletException(e); 103 } catch (javax.crypto.BadPaddingException e) { |
|
2.32缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/helpers/Utils.java中第80行。 缺陷说明:在(Utils.java)文件第(80)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 78 out.close(); 79 } catch (FileNotFoundException e) { 80 e.printStackTrace(); 81 } 82 } |
|
2.33缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest01103.java中第122行。 缺陷说明:在(BenchmarkTest01103.java)文件第(122)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 120 } catch (java.security.InvalidAlgorithmParameterException e) { 121 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 122 e.printStackTrace(response.getWriter()); 123 throw new ServletException(e); 124 } |
|
2.34缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest01481.java中第103行。 缺陷说明:在(BenchmarkTest01481.java)文件第(103)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 101 } catch (javax.crypto.BadPaddingException e) { 102 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 103 e.printStackTrace(response.getWriter()); 104 throw new ServletException(e); 105 } catch (java.security.InvalidKeyException e) { |
|
2.35缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00443.java中第123行。 缺陷说明:在(BenchmarkTest00443.java)文件第(123)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 121 } catch (java.security.InvalidAlgorithmParameterException e) { 122 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 123 e.printStackTrace(response.getWriter()); 124 throw new ServletException(e); 125 } |
|
2.36缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00610.java中第109行。 缺陷说明:在(BenchmarkTest00610.java)文件第(109)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 107 } catch (javax.crypto.NoSuchPaddingException e) { 108 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 109 e.printStackTrace(response.getWriter()); 110 throw new ServletException(e); 111 } catch (javax.crypto.IllegalBlockSizeException e) { |
|
2.37缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/score/BenchmarkScore.java中第366行。 缺陷说明:在(BenchmarkScore.java)文件第(366)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 364 } catch ( IOException e ) { 365 System.out.println ( "Error updating results table in: " + f.getName() ); 366 e.printStackTrace(); 367 } 368 |
|
2.38缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest02374.java中第89行。 缺陷说明:在(BenchmarkTest02374.java)文件第(89)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 87 } catch (java.security.NoSuchAlgorithmException e) { 88 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 89 e.printStackTrace(response.getWriter()); 90 throw new ServletException(e); 91 } catch (javax.crypto.NoSuchPaddingException e) { |
|
2.39缺陷发生位置:在文件Benchmark/Benchmark-1.2beta/src/main/java/org/owasp/benchmark/testcode/BenchmarkTest00857.java中第113行。 缺陷说明:在(BenchmarkTest00857.java)文件第(113)行调用方法[printStackTrace]打印异常信息,返回到页面的错误信息有可能会暴漏用户敏感信息,建议将错误的详细信息打印到日志文件中,返回到页面的信息是对应错误的编码或其它字符串信息。 代码片段: 111 } catch (javax.crypto.NoSuchPaddingException e) { 112 response.getWriter().println("Problem executing crypto - javax.crypto.Cipher.getInstance(java.lan 113 e.printStackTrace(response.getWriter()); 114 throw new ServletException(e); 115 } catch (javax.crypto.IllegalBlockSizeException e) { |
500多页,还仅仅是致命和严重缺陷,省略了,如果想要全部,联系我。
(完)