gpt4 book ai didi

Java block Runtime.exec()?

转载 作者:行者123 更新时间:2023-12-02 04:48:40 26 4
gpt4 key购买 nike

我注意到我的一个客户尝试使用 Runtime.exec() 获得对我的一台主服务器的 shell 访问权限。有没有办法让我使用 Java 安全管理器来阻止此行为?

最佳答案

是的,有。 Process.start()使用SecurityManager.checkExec(cmd)检查操作是否被允许。该方法的 javadoc 说:

"This method calls checkPermission with the FilePermission(cmd, "execute") permission if cmd is an absolute path, otherwise it calls checkPermission with FilePermission("<<ALL FILES>>", "execute")."

因此您需要配置安全沙箱以阻止这些权限。您可能还需要阻止许多其他事情。

这个问答是关于如何设置沙箱的一个很好的起点:

它包含 Oracle 文档的链接...阅读并理解它非常重要。

在您的服务器上运行其他人的代码存在潜在危险,您需要先了解他们如何“伤害”您,然后才能防范。请记住,您可能正在与真正聪明的人打交道......而不仅仅是探索已知漏洞的“脚本小子”。

关于Java block Runtime.exec()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29457939/

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