Android-JAVA拒绝服务:双解析
Android-JAVA拒绝服务:双解析,java,android,Java,Android,java.lang.Double.parseDouble()和相关方法的实现中存在一个漏洞,在解析范围内的任何数字时可能导致线程挂起 [2^(-1022) - 2^(-1075) : 2^(-1022) - 2^(-1076)] 使用java版本6 Update 24或更高版本时,这不是问题 所以,为了开发一个安全的android应用程序,确保APK是使用JDK构建的,JDK的版本是1.6u24及以上,这就足够了吗? 或者,这个问题也与Android Dalvik VM有关 请帮忙澄清,因为我
java.lang.Double.parseDouble()
和相关方法的实现中存在一个漏洞,在解析范围内的任何数字时可能导致线程挂起
[2^(-1022) - 2^(-1075) : 2^(-1022) - 2^(-1076)]
使用java版本6 Update 24或更高版本时,这不是问题
所以,为了开发一个安全的android应用程序,确保APK是使用JDK构建的,JDK的版本是1.6u24及以上,这就足够了吗?
或者,这个问题也与Android Dalvik VM有关
请帮忙澄清,因为我可能有误解
确保APK使用版本为1.6u24及以上的JDK构建就足够了吗
如果您的评估是正确的,并且JVM错误出现在方法的实现中,那么答案是否定的。以这种方式修复的唯一一类错误是由于生成了错误的字节码,在这种情况下,您不是自己编译Double
类——这是预编译的
或者,这个问题也与Android Dalvik VM有关
我不知道。您必须运行自己的实验,然后确定在您的环境中是否值得担心。Java字节码的内置版本是无关的,只要执行是在具有新parseDouble的JVM上完成的,或者在Dalvik VM上完成的,我不知道它有此缺陷。这是因为parseDouble代码是一个运行库,而不是代码的一部分
错误是挂起应用程序(很关键),但这本身不是安全风险。为什么不试试呢?你是对的。我会这样做,但社区的进一步解释将有助于更好地理解。谢谢你的提示。考虑到“可用性”是安全的一部分,这肯定会被视为安全风险。