如何在 Java 中重现 EXCEPTION_STACK_OVERFLOW 错误
如何在 Java 中重现 EXCEPTION_STACK_OVERFLOW 错误。
PS:我说的不是 Java 中的 StackOverflowError 错误,它会优雅地关闭 JVM。我说的是 error.log 中的 EXCEPTION_STACK_OVERFLOW 导致 JVM 崩溃。
How can I reproduce EXCEPTION_STACK_OVERFLOW error in Java.
PS: I am not talking of StackOverflowError Error in Java which gracefully shuts the JVM. I am talking of EXCEPTION_STACK_OVERFLOW in error.log which cause JVM to crash.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
到目前为止,我发现的大多数 EXCEPTION_STACK_OVERFLOW 错误都发生在 JVM 之外的本机代码中。 JVM 内部的崩溃值得提交错误报告并将得到修复。或者您需要(未知的)漏洞利用吗?
因此,最简单、最可靠的方法是编写一个本机库,其中包含一些导致 JVM 崩溃的代码,并使用 JNI 调用它。
(一般答案,我实际上不知道如何准确地做到这一点。不能仅使用java代码来完成;))
Most
EXCEPTION_STACK_OVERFLOW
errors I found so far happen in native code outside the JVM. A crash inside the JVM is worth a bug report and will be fixed. Or are you in need of an (unknown) exploit?So the easist and most reliable way would be to write a native library with some code that causes the JVM to crash and call that with JNI.
(general answer, I actually don't know how to do it exactly. Can't be done with java code only ;) )
调用它,享受吧:D
Call it, and enjoy :D
吹塑堆:
吹塑堆:
Blow stack:
Blow heap: