窃取垃圾收集的东西有多容易?

Ros*_*ala 7 java memory security string garbage-collection

为什么getText()在JPasswordField中被弃用了?

根据上述问题的答案,我理解的是创建一个String包含密码的对象是一种安全威胁,因为它可能会在内存中保留一段时间而且是不可变的.

所以我想知道,

  • 检索一直挂在内存中的东西,没有引用或遗漏垃圾收集是多么容易?

  • 你是怎么做到的?


编辑

由于问题已经结束,请善意通过添加评论来分享您的知识,如果您认为将来可能会得到有趣的答案,请考虑重新打开问题.:)

J0h*_*0hn 1

https://en.wikipedia.org/wiki/Heartbleed

这是一个很好的现实世界例子,说明挂在内存中的东西被用于利用。有不同的方法可以做到这一点,因此最好确保有价值的东西不会被悬而未决。通常这些攻击只是猜测和检查。您只需不断发送信息并将获得的额外内存拼凑起来即可。