google code pretty

2016-06-30

Fortify 說明 - Dynamic Code Evaluation: Unsafe Deserialization

問題種類Dynamic Code Evaluation: Unsafe Deserialization

問題說明
在執行階段,使用使用者控制的物件串流可能會讓攻擊者在伺服器上執行任意程式碼、濫用應用程式邏輯或造成 Denial of Service。

Java序列化就是把 object 轉換成字節流,便于保存在 memory、文件、database 中,Java中的ObjectOutputStream?的writeObject()方法可以實現序列化。
Java反序列化即逆過程,由字節流還原成 object。ObjectInputStream?的readObject()方法用于反序列化。

ref: OWASP 網站 https://www.owasp.org/index.php/Deserialization_of_untrusted_data

建議處理
升級執行環境 JDK 版本 (雖然 fortify 還是會掃出來)
JDK 有持續出新版修正問題 8u65 有修正 CVE-2015-4805 弱點 「https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-4805」,此弱點即為 Serialization 相關弱點

8u65 修正內容 http://www.oracle.com/technetwork/topics/security/cpuoct2015-2367953.html8u65 release note http://www.oracle.com/technetwork/java/javase/8u65-relnotes-2687063.html