需要使用 myfaces 1.1 针对 wildfly 10 反序列化不受信任数据的示例代码

Need sample code for De-serialization of untrusted data with myfaces 1.1 against wildfly 10

Myfaces 序列化视图状态字符串容易受到攻击,因此需要一些示例代码来测试使用 myfaces 1.1 针对 wildfly 10 对不受信任的数据进行反序列化。

当在 client-side 保存模式下使用时,Myfaces Viewstates 确实容易受到 Java 反序列化攻击。 Luca Carettoni 早在 2008 年就利用并报告了 Sun Java Web 控制台中的缺陷。Sun 随后决定使用 server-side 保存视图状态。

如果您有能力使用 server-side 保存模式,请使用以下上下文参数:

     <context-param>
        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
        <param-value>client</param-value>
     </context-param>

如果您想继续使用 client-side 保存视图状态,请确保使用强大的算法加密和解密视图状态,方法是按照 context-parameters 进行设置,如 [=12] 中所述=].