java - Jboss Seam Interpolator : could it be use for execute command (java. lang.Runtime.exec)?

标签 java jboss seam runtime.exec

在服务器崩溃之前,我的服务器上有这些奇怪的消息:

[ (org.jboss.seam.core.Interpolator)] exception interpolating string: #{(expressions.getClass().forName('java.lang.Runtime').getDeclaredMethods()[6]).invoke(expressions.getClass().forName('java.lang.Runtime')).exec('ls')}
javax.el.ELException: java.io.IOException: Cannot run program "ls": java.io.IOException: error=12, Cannot allocate memory

我觉得有人试图通过 Interpolator 类执行某些操作。我从早期版本的 seam 中找到了这些代码:

http://www.java2s.com/Open-Source/Java-Document/JBoss/jboss-seam-2.1.0.A1/org/jboss/seam/core/Interpolator.java.htm

我找到了这些帖子

How to solve "java.io.IOException: error=12, Cannot allocate memory" calling Runtime#exec()?

但就我而言,我不是要解决它,而是要限制它。

我可以通过安全管理器阻止系统执行吗? 您对防止此类处决有什么建议吗?

提前致谢。

最佳答案

您确定是您的代码试图在您的服务器上运行“ls”吗?如果不是,看起来有人试图利用 this Seam 2 的问题。在这种情况下,您应该升级到 Seam 2.2.2.Final

关于java - Jboss Seam Interpolator : could it be use for execute command (java. lang.Runtime.exec)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6635974/

相关文章:

java - DataTables 服务器端分页

java - 如何在绘制新矩形时触发自定义事件?

java - 日历在 Calendar.add() 之后返回错误的毫秒数

java - 消费者问题中的春兔异常

java - 发生错误 : EntityManagerFactory not found in JNDI : java:/seam1EntityManagerFactory

java - 帮助 2 个实体管理器的 TreeCache(Jboss 缓存)配置

java - Seam 集中异常

java - 在 Openshift Tomcat 6 上获取 WEB-INF 路径 - JBoss EWS 1.0

java - 如何使用 Git 存储库作为爆炸 war ?

java - 使用 Hibernate 获取当前修改的实体和数据库实体快照