gpt4 book ai didi

java - 大多数未打补丁的 Tomcat 网络服务器都容易受到攻击,谁的错?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:28:54 27 4
gpt4 key购买 nike

<分区>

大多数 Java JVM 都受到非常严重的拒绝服务攻击(所有 1.6.0_24 之前的 Oracle/Sun JVM [在撰写本文时尚未发布],并且没有得到发布的 HotFix例如昨天)。

http://www.exploringbinary.com/java-hangs-when-converting-2-2250738585072012e-308/

以下内容:

curl -H 'Accept-Language: en-us;q=2.2250738585072012e-308' http://example.org

使地球上很多的 Tomcat 网络服务器崩溃。

我的问题很简单:谁有错?

显然 getLocale() 调用了(非常严重)错误的 Double.parseDouble(...) 然后您可以在 Tomcat 上轻松执行拒绝服务。

Double.parseDouble(...) 的错误实现真的有问题吗?

对我来说,真正的问题似乎是 HTTP 规范使用 float 来表示一些对我来说真的看起来不太像科学计算的东西。对这样的事情使用 float 似乎很奇怪:很容易证明用不同的语言实现会产生不同的结果。

谁对谁错?

Double.parseDouble(...) 的 Java 非常蹩脚(bug 已知 10 年)实现?

HTTP 规范? (请记住,PHP 遭受了完全相同的错误)。

我可以理解,如果它发生在一种语言上,你会责怪语言......但是当两个远程拒绝服务攻击发生在两种不同的语言上时,由于 HTTP 规范规定了对不是科学计算的 float 应该敲响警钟。

float 应该只用于科学计算。如果您没有 float ,也没有 epsilon,那您就错了。

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com