java - 对 Tomcat 日志文件的惊人攻击

标签 java tomcat exception logfile

<分区>

今天在Tomcat的catalina.out中发现了一个黑客的友情提示。发生异常后必须有一些泄漏,使用户能够写入 stderr 或 stdout。日志文件部分内容如下:

...
Oct 16, 2018 12:40:21 AM org.apache.coyote.http11.AbstractHttp11Processor process
INFO: Error parsing HTTP request header
 Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.
java.lang.IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokens
    at org.apache.coyote.http11.InternalInputBuffer.parseRequestLine(InternalInputBuffer.java:136)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1028)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:662)

**Did you see me on the stderr window?**

**Did you see me on the browser window as well?**

com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '244790-85.25.210' for key 'PRIMARY'
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
...

我怀疑异常使 stderr 打开并且用户能够写入日志。我的机器是带有 Tomcat 7.077 的 Debian 8.7。

有人知道这是怎么发生的吗?

最佳答案

Did you see me”行由 Tomcat 示例 Web 应用程序中的某个页面打印。 (该 Web 应用程序默认存在。如果您使用 Tomcat 服务器进行生产,则应将其删除)。

需要阅读的内容:

关于java - 对 Tomcat 日志文件的惊人攻击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52833771/

相关文章:

java - 通过 Jbutton 在 Jtabbed Pane 中创建动态表单

java - Android App占用大量内存

java - 线程中的异常 "main"java.lang.IllegalArgumentException : PWC6309: Illegal compilerSourceVM: 12

eclipse - 如何为在 Eclipse IDE 中开发的 RESTful Web 服务创建 War 文件

java - 在 Tomcat 服务器中部署 WAR 文件时出错 - org.springframework.web.context.ContextLoaderListener 未加载

java - Java 中的 SimpleDateFormat 异常

java - 使用instanceof和casting获取原始Java类

java - 带有 'doLast' 的空源 jar,搞砸了子项目依赖关系,但没有

java - 列表未更新的应用程序小部件 - 为什么会这样?

javascript - 捕获 Javascript 代码中的空格