Kev*_*ose 23
如果您的对手能够在目标计算机上运行任意代码(具有转储过程映像所需的调试权限),那么您就会遇到各种各样的问题.
如果你的对手能够准确地读取远处的记忆(即TEMPEST),那么你就是各种各样的傻瓜.
保护传输和存储中的数据(在线路和磁盘上),但不要担心内存中的数据.
*好的,有些课程需要担心.99.99%的申请没有,我打赌你没有.
是的肯定是,特别是因为你可以轻松地调试应用程序.大多数处理加密和不安全数据的代码都使用char数组而不是字符串.通过使用char数组,您可以使用敏感详细信息覆盖内存,从而限制敏感数据的生命周期.
从理论上讲,你无法完全保护记忆中的任何东西.有些小组在计算机关闭4小时后设法深度冻结了内存芯片并读取了内容.即使没有达到这样的长度,在恰当的时间使用调试器和断点也可以解决问题.
实际上,只是不要将明文保存在内存中超过绝对必要的时间.一个坚定的攻击者会得到它,但哦,好吧.