- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的产品中报告了 CWE 117 问题。
CWE 117 问题是软件无法正确清理或错误地清理写入日志的输出,我得到的一种可能的解决方案是在记录时添加以下内容。
String clean = args[1].replace('\n', '_').replace('\r', '_');
log.info(clean);
我的问题是 log4j 中是否有任何中心位置,只需进行一次更改即可解决此问题?
最佳答案
这是Layout
它负责序列化日志消息,换行转换代码就属于这里。
我建议创建您自己的(简单的)PatternLayout
子类来执行转换。 Log4j 邮件列表 here 上也对此进行了讨论。 。这是该线程中建议的解决方案的稍微修改版本:
import org.apache.log4j.PatternLayout;
import org.apache.log4j.spi.LoggingEvent;
public class NewLinePatternLayout extends PatternLayout {
public NewLinePatternLayout() { }
public NewLinePatternLayout(String pattern) {
super(pattern);
}
public boolean ignoresThrowable() {
return false;
}
public String format(LoggingEvent event) {
String original = super.format(event);
// Here your code comes into play
String clean = original.replace('\n', '_').replace('\r', '_');
StringBuilder sb = new StringBuilder(clean);
String[] s = event.getThrowableStrRep();
if (s != null) {
for (int i = 0; i < s.length; i++) {
sb.append(s[i]);
sb.append('_');
}
}
return sb.toString();
}
}
相关问题(带有可能有用的答案):
关于java - 如何解决 CWE 117 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60771437/
我正在研究 Juliet Test Suite为了我的研究,我正在对这些代码应用一些静态分析器来生成警告。运行cppcheck 后,我发现它无法检测到manifest.xml 文件(元数据)中提到的许
我正在努力修复我的应用程序中的 Veracode 问题。 Veracode 在下面的代码中突出显示了缺陷“文件名或路径的外部控制 (CWE ID 73)”。 Thread.currentThread(
CWE(Common Weakness Enumeration)和 CVE(Common Vulnerabilities and Exposures)有什么区别?它们的用法有什么区别? 最佳答案 软件
我们收到以下代码的 IBM APPSCAN 异常。 { br = new BufferedReader(new InputStreamReader((conn.getInputStream()
作为 veracode 扫描的一部分,我收到了 CWE 829 - 抛出来自不受信任的控制领域的功能错误。 下面我粘贴了我的 Java 代码,在第 3 行中我遇到了这个漏洞。 我没有找到太多关于这个问
在 veracode 扫描期间,我的结果中出现了 CWE 73 问题。有人可以建议我如何针对以下编码场景修复此解决方案吗? 提供的现有解决方案不起作用,我还想知道是否可以使用任何 ESAPI 属性来解
我的产品中报告了 CWE 117 问题。 CWE 117 问题是软件无法正确清理或错误地清理写入日志的输出,我得到的一种可能的解决方案是在记录时添加以下内容。 String clean = args[
我的产品中报告了 CWE 117 问题。 CWE 117 问题是软件没有正确清理或错误地清理写入日志的输出,我得到的一种可能的解决方案是在日志记录时添加以下内容。 String clean = arg
我有这段代码,我认为这是重定向到另一个 servlet 的相当标准的方法 RequestDispatcher dispatch = request.getRequestDispatcher("
我在 session.setAttribute(var1,var2) 等线路上遇到了 veracode 缺陷 cwe id 501。我已经尝试过不同的方法来解决它,但无法解决这个问题。我尝试过的方法如
我有这个代码: try { BufferedWriter bw = null; FileWriter fw = null; try {
我正在修复 veracode 静态扫描发现的缺陷,并且我发现了几个 session 修复缺陷,如下所示: request.getSession().get/set Attribute( ); OWAS
我一直在使用 rand() 函数来生成随机数。当我通过 CWE 检查工具检查我的代码时,它认为 rand() 是一个潜在的危险函数,并建议使用加密库。任何人都可以详细说明吗?生成随机数的最佳和安全替代
有一个 Spring 全局 @ExceptionHandler(Exception.class) 方法可以像这样记录异常: @ExceptionHandler(Exception.class) voi
我有像上面这样的代码,并且我已经使用模板文字来替换值,但 veracode 扫描仍然显示它存在 xss 漏洞。在这种情况下我该如何解决? 最佳答案 使用OWASP Java Encoder使用"
代码如下 public void sendEmail(String toEmailAddr, String subject, String body) throws AppException {
我安装的是MySQL Workbench 6.3,可以在ISS上安装TestLink(php),工具安装成功了,但是访问网站的时候首页有如下提示,我已经研究了好几个地方,找到了解决方案。 Window
根据 Veracode,与技术特定输入验证问题相关的 CWE-ID 100“缺陷”使我们的应用程序出现了数百次。 根据他们的文档,补救措施是在使用模型之前检查模型的 ModelState.IsVali
我在我的 ASP.NET 核心 Web API 中有一个 POST 方法,它将模型作为参数(将 POST 内容直接绑定(bind)到模型)。该模型包含所有参数作为可选参数。在使用 Veracode 扫
我正在使用 Logback,并且在记录用户参数时需要避免 CRLF(回车换行)。 我尝试在静态 map PatternLayout.defaultConverterMap 上添加扩展 ClassicC
我是一名优秀的程序员,十分优秀!