加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 访问日志中的奇怪请求导致IllegalArgumentException

发布时间:2020-12-15 03:02:19 所属栏目:Java 来源:网络整理
导读:我使用tomcat8.0.43作为我的服务器. 在查看我的日志时,偶尔会看到: […]INFO[…] org.apache.coyote.http11.AbstractHttp11Processor.process Error parsing HTTP request header Note: further occurrences of HTTP header parsing errors will be logged
我使用tomcat8.0.43作为我的服务器.

在查看我的日志时,偶尔会看到:

[…]INFO[…] org.apache.coyote.http11.AbstractHttp11Processor.process
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 the
HTTP protocol

要么:

java.lang.IllegalArgumentException: Invalid character found in the
request target. The valid characters are defined in RFC 7230 and RFC
3986

如果我查看我的访问日志,我会看到请求产生这些异常的URL是这样的:

“GET /scripts/index.php?OPT_Session= null” 400

要么:

“GET null null” 400

我是否正确识别导致异常被抛出的请求?

有什么办法可以阻止抛出这些异常或限制这些请求吗?

普通浏览器甚至不允许客户端输入其中包含空格的URL.看来这些请求确实有空格.

谢谢.

解决方法

请求很可能是攻击.如果您正在运行面向Internet的Web服务器,则必须使用它们.将Apache等Web服务器放在Tomcat前面是很常见的,可能配置了mod_security( https://modsecurity.org).此外,您可以使用fail2ban或类似的解决方案,以便根据日志中的错误禁用IP.但是,在我最近的经验中,攻击者倾向于使用各种各样的IP地址,因此fail2ban可能不是很有效.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读