Description
Treeio through 2.0 contains an insecure deserialization vulnerability in UpdateRecord.get_format_strings and ModuleSetting.loads that allows staff users to execute code via unverified pickle data. Attackers can store a crafted base64 pickle payload in an UpdateRecord format_strings field through the Django admin, executing Python code as the web server user when news feeds render.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| treeio | treeio | ≤ 2.0 | — |
References
- https://github.com/treeio/treeio/issues/165 issue-tracking
- https://github.com/treeio/treeio/blob/bae3115f4015aad2cbc5ab45572232ceec990495/treeio/core/models.py#L1101-L1109 technical-description
- https://github.com/treeio/treeio/blob/bae3115f4015aad2cbc5ab45572232ceec990495/treeio/core/models.py#L1265-L1273 technical-description
- https://github.com/treeio/treeio product
- VulnCheck Advisory: Treeio through 2.0 Insecure Deserialization RCE via Admin-Editable Pickle Fields third-party-advisory