JD-GUI 1.6.6 allows deserialization via UIMainWindowPreferencesProvider.singleInstance.
Weakness
The product deserializes untrusted data without sufficiently ensuring that the resulting data will be valid.
Affected Software
Name |
Vendor |
Start Version |
End Version |
Jd-gui |
Jd-gui_project |
1.6.6 (including) |
1.6.6 (including) |
Potential Mitigations
- Make fields transient to protect them from deserialization.
- An attempt to serialize and then deserialize a class containing transient fields will result in NULLs where the transient data should be. This is an excellent way to prevent time, environment-based, or sensitive variables from being carried over and used improperly.
References