Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Tomcat:Getting';字符解码失败';在日志中;可能的恶意攻击?_Java_Tomcat_Filter_Tomcat Valve - Fatal编程技术网

Java Tomcat:Getting';字符解码失败';在日志中;可能的恶意攻击?

Java Tomcat:Getting';字符解码失败';在日志中;可能的恶意攻击?,java,tomcat,filter,tomcat-valve,Java,Tomcat,Filter,Tomcat Valve,我刚刚让一个Tomcat实例停止响应(它在被杀死并重新启动后开始正常工作),在日志消息中,它看起来就在停止响应之前,有人向它发送了无效的请求。以下是日志文件的摘录: [WARNING] [talledLocalContainer] WARNING: Parameters: Character decoding failed. Parameter 'ì°ÅM©2a

我刚刚让一个Tomcat实例停止响应(它在被杀死并重新启动后开始正常工作),在日志消息中,它看起来就在停止响应之前,有人向它发送了无效的请求。以下是日志文件的摘录:

[WARNING] [talledLocalContainer] WARNING: Parameters: Character decoding failed. Parameter 'ì°ÅM©2a
                                                                                                      7)ýúVßiPÑUÙvPÏB%<kNíR¹YÃÁéIÿ4^ØsZ' with value '' has been ignored. Note that the name and value quoted here may corrupted due to the failed decoding. Use debug level logging to see the original, non-corrupted values.
[WARNING] [talledLocalContainer] Aug 6, 2012 5:23:16 PM org.apache.tomcat.util.http.Parameters processParameters
[WARNING] [talledLocalContainer] WARNING: Parameters: Character decoding failed. Parameter 'ì°ÅM©2a
                                                                                                      7)ýúVßiPÑUÙvPÏB%<kNíR¹YÃÁéIÿ4^ØsZ' with value '' has been ignored. Note that the name and value quoted here may corrupted due to the failed decoding. Use debug level logging to see the original, non-corrupted values.
[INFO] [talledLocalContainer] 19:58:04 [InputSanitizerFilter] WARN:  Removing potentially malicious parameter from request:  batch
[WARNING] [talledLocalContainer] Aug 6, 2012 9:11:39 PM org.apache.tomcat.util.http.Parameters processParameters
[WARNING] [talledLocalContainer] WARNING: Parameters: Character decoding failed. Parameter 'ì°ëñÉÞ
[WARNING] [talledLocalContainer] 8Rû£QÜPÖ◆D)ç£<%E◆<ìS
[WARNING] [├▒┌┌␊␍L⎺␌▒┌C⎺┼├▒␋┼␊⎼] ÎS·Éä:ìAQØRÜ]' ┬␋├␤ ┴▒┌┤␊ '' ␤▒⎽ ␉␊␊┼ ␋±┼⎺⎼␊␍. N⎺├␊ ├␤▒├ ├␤␊ ┼▒└␊ ▒┼␍ ┴▒┌┤␊ ─┤⎺├␊␍ ␤␊⎼␊ └▒≤ ␌⎺⎼⎼┤⎻├␊␍ ␍┤␊ ├⎺ ├␤␊ °▒␋┌␊␍ ␍␊␌⎺␍␋┼±. U⎽␊ ␍␊␉┤± ┌␊┴␊┌ ┌⎺±±␋┼± ├⎺ ⎽␊␊ ├␤␊ ⎺⎼␋±␋┼▒┌, ┼⎺┼-␌⎺⎼⎼┤⎻├␊␍ ┴▒┌┤␊⎽.A┤± 6, 2012 9:11:39 PM ⎺⎼±.▒⎻▒␌␤␊.├⎺└␌▒├.┤├␋┌.␤├├⎻.P▒⎼▒└␊├␊⎼⎽ ⎻⎼⎺␌␊⎽⎽P▒⎼▒└␊├␊⎼⎽
在我看来,等待HTTP守护进程的线程数量异常。

尝试以下步骤

编辑conf/server.xml并找到定义标记HTTP连接器的行。它看起来像这样,可能有更多的参数:

   <Connector port="8080"/>

将URIEncoding=“UTF-8”属性添加到连接器:

  <Connector port="8080" URIEncoding="UTF-8"/>

重新启动Tomcat

尝试以下步骤

编辑conf/server.xml并找到定义标记HTTP连接器的行。它看起来像这样,可能有更多的参数:

   <Connector port="8080"/>

将URIEncoding=“UTF-8”属性添加到连接器:

  <Connector port="8080" URIEncoding="UTF-8"/>


重新启动Tomcat

在发送请求之前,您可以尝试使用javascript函数
转义(参数)
。我希望我的回答不会太晚,并且对某人有用。

在发送请求之前,您可以尝试使用javascript函数
escape(参数)
。我希望我的答案不会太晚,而且对某些人有用。

您运行的是什么Tomcat版本?如果这种情况再次发生,可以进行线程转储吗?您是否配置了多个连接器?如果是这样,您可以尝试两个连接器,看看如果再次发生这种情况,它们是否会响应?运行Tomcat 6。我想确切的版本是6.0.26。应该只有一个连接器在运行(服务器设置或多或少都有库存,端口设置为80除外)。我正在使用Cargo Maven2插件实际启动Tomcat并部署我的webapp,如果这有什么区别的话。仅供参考,Tomcat默认情况下也会在8009上启用AJP连接器。好的,问题再次出现,我能够捕获线程转储。那些等待HTTP线程的线程正在等待连接。您确定没有耗尽JDBC连接池吗?C3P0似乎正在等待连接可用。您正在运行哪个Tomcat版本?如果这种情况再次发生,可以进行线程转储吗?您是否配置了多个连接器?如果是这样,您可以尝试两个连接器,看看如果再次发生这种情况,它们是否会响应?运行Tomcat 6。我想确切的版本是6.0.26。应该只有一个连接器在运行(服务器设置或多或少都有库存,端口设置为80除外)。我正在使用Cargo Maven2插件实际启动Tomcat并部署我的webapp,如果这有什么区别的话。仅供参考,Tomcat默认情况下也会在8009上启用AJP连接器。好的,问题再次出现,我能够捕获线程转储。那些等待HTTP线程的线程正在等待连接。您确定没有耗尽JDBC连接池吗?C3P0似乎正在等待连接可用。谢谢,我将尝试一下。在我的例子中,由于我使用Cargo和Maven2来启动服务器,因此通过将
UTF-8
添加到我的
pom.xml
文件来配置此设置。而且时间也很好,在重新启动服务器后不久,它又收到了另一轮请求。不幸的是,即使使用此设置,它也会抱怨:
字符解码失败。参数“ìÃI*]”
3lSù’)Ð6nX\±6$8a@aroth删除pom.xml中的javax.el-api xxx谢谢,我会尝试一下。在我的例子中,由于我使用Cargo和Maven2来启动服务器,因此通过将
UTF-8
添加到我的
pom.xml
文件来配置此设置。而且时间也很好,在重新启动服务器后不久,它又收到了另一轮请求。不幸的是,即使使用此设置,它也会抱怨:
字符解码失败。参数“ìÃI*]”
3lSù’)Ð6nX\±6$8a@aroth删除pom.xml中的javax.el api xxx