首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java Runtime.exec()?

Java Runtime.exec()?
EN

Stack Overflow用户
提问于 2015-04-05 13:45:15
回答 1查看 1.7K关注 0票数 0

我注意到,我的一个客户端试图通过使用Runtime.exec()访问我的一个主要服务器。有什么方法可以阻止我使用吗?

EN

回答 1

Stack Overflow用户

发布于 2015-04-05 14:10:58

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

“如果checkPermission是绝对路径,则该方法使用FilePermission(cmd, "execute")权限调用cmd,否则它使用FilePermission("<<ALL FILES>>", "execute")__调用checkPermission。”

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

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

它包括到Oracle文档的链接..。重要的是你要读懂这一点。

在您的服务器上运行其他人的代码是潜在的危险,您需要了解他们如何“伤害”您,然后才能对其进行保护。记住,你可能会和非常聪明的人打交道.不只是“脚本孩子”探测已知的漏洞。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29457939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档