Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CWE-502 (可信数据的反序列化) — Vulnerability Class 2486

2486 vulnerabilities classified as CWE-502 (可信数据的反序列化). AI Chinese analysis included.

CWE-502 represents a critical security weakness where applications deserialize untrusted data without validating its integrity or structure. Attackers typically exploit this vulnerability by crafting malicious serialized objects that, when processed by the application, trigger unintended code execution or logic flaws. This often leads to remote code execution, denial of service, or privilege escalation, as the deserialization process may instantiate dangerous classes or invoke unsafe methods. To mitigate this risk, developers must strictly avoid deserializing data from untrusted sources. Instead, they should implement robust input validation, use allowlists for permitted data types, or adopt safer serialization formats like JSON that do not inherently support arbitrary object instantiation. Additionally, employing cryptographic signatures to verify data authenticity before deserialization ensures that only trusted, unaltered payloads are processed, effectively neutralizing the threat of malicious object injection.

MITRE CWE Description
The product deserializes untrusted data without sufficiently ensuring that the resulting data will be valid.
Common Consequences (3)
Integrity Modify Application Data, Unexpected State
Attackers can modify unexpected objects or data that was assumed to be safe from modification. Deserialized data or code could be modified without using the provided accessor functions, or unexpected functions could be invoked.
Availability DoS: Resource Consumption (CPU)
If a function is making an assumption on when to terminate, based on a sentry in a string, it could easily never terminate.
Other Varies by Context
The consequences can vary widely, because it depends on which objects or methods are being deserialized, and how they are used. Making an assumption that the code in the deserialized object is valid is dangerous and can enable exploitation. One example is attackers using gadget chains to perform una…
Mitigations (5)
Architecture and Design, Implementation If available, use the signing/sealing features of the programming language to assure that deserialized data has not been tainted. For example, a hash-based message authentication code (HMAC) could be used to ensure that data has not been modified.
Implementation When deserializing data, populate a new object rather than just deserializing. The result is that the data flows through safe input validation and that the functions are safe.
Implementation Explicitly define a final object() to prevent deserialization.
Architecture and Design, Implementation 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.
Implementation Avoid having unnecessary types or gadgets (a sequence of instances and method invocations that can self-execute during the deserialization process, often found in libraries) available that can be leveraged for malicious ends. This limits the potential for unintended or unauthorized types and gadgets to be leveraged by the attacker. Add only acceptable classes to an allowlist. Note: new gadgets are…
Examples (2)
This code snippet deserializes an object from a file and uses it as a UI button:
try { File file = new File("object.obj"); ObjectInputStream in = new ObjectInputStream(new FileInputStream(file)); javax.swing.JButton button = (javax.swing.JButton) in.readObject(); in.close(); }
Bad · Java
private final void readObject(ObjectInputStream in) throws java.io.IOException { throw new java.io.IOException("Cannot be deserialized"); }
Good · Java
In Python, the Pickle library handles the serialization and deserialization processes. In this example derived from [REF-467], the code receives and parses data, and afterwards tries to authenticate a user based on validating a token.
try { class ExampleProtocol(protocol.Protocol): def dataReceived(self, data): # Code that would be here would parse the incoming data # After receiving headers, call confirmAuth() to authenticate def confirmAuth(self, headers): try: token = cPickle.loads(base64.b64decode(headers['AuthToken'])) if not check_hmac(token['signature'], token['data'], getSecretKey()): raise AuthFail self.secure_data = token['data'] except: raise AuthFail }
Bad · Python
CVE ID Title CVSS Severity Published
CVE-2026-39797 WordPress GDPR Framework By Data443 plugin <= 2.5.0 - PHP Object Injection vulnerability — GDPR Framework By Data443 9.8 Critical 2026-10-06
CVE-2026-97257 WordPress Simple Event Planner plugin <= 1.5.7 - PHP Object Injection vulnerability — Simple Event Planner 8.8 High 2026-10-05
CVE-2026-93617 WordPress Sunshine Photo Cart plugin <= 3.7.1 - PHP Object Injection vulnerability — Sunshine Photo Cart 7.2 High 2026-10-05
CVE-2026-100511 WordPress VK Google Job Posting Manager plugin <= 1.3.1 - PHP Object Injection vulnerability — VK Google Job Posting Manager 8.8 High 2026-10-05
CVE-2026-100506 WordPress WP Spell Check plugin <= 12.1 - PHP Object Injection vulnerability — WP Spell Check 7.2 High 2026-10-05
CVE-2026-103348 WordPress WP Ultimate Exporter plugin <= 3.0 - PHP Object Injection vulnerability — WP Ultimate Exporter 7.2 High 2026-10-05
CVE-2026-103349 WordPress Product Feed PRO for WooCommerce plugin <= 13.5.7 - PHP Object Injection vulnerability — Product Feed PRO for WooCommerce 7.2 High 2026-10-05
CVE-2026-97283 WordPress Advanced Post Manager plugin <= 4.5.5 - PHP Object Injection vulnerability — Advanced Post Manager 9.8 Critical 2026-10-05
CVE-2026-104905 FacturaScripts < 2026.7 PHP Object Injection via WidgetSelect — facturascripts 8.1 High 2026-10-05
CVE-2017-20285 YAML versions before 1.30 for Perl allow a loaded document to trigger the DESTROY method of arbitrary classes - - 2026-10-05
CVE-2026-103877 Apache Directory LDAP API: Unsafe loading of Java code from LDAP schema elements — Apache Directory LDAP API - - 2026-10-02
CVE-2026-55083 DHIS2: Unsafe Java Deserialization - Remote Code Execution (RCE) — dhis2-core 9.1 Critical 2026-10-01
CVE-2026-12544 Foreman: ssti and insecure deserialization in foreman-rake configuration — Red Hat Satellite 6.16 for RHEL 8 7.7 High 2026-10-01
CVE-2026-97284 WordPress Icegram plugin <= 3.1.31 - PHP Object Injection vulnerability — Icegram 8.8 High 2026-10-01
CVE-2026-94390 WordPress Hide Shipping Method For WooCommerce plugin <= 1.5.4 - PHP Object Injection vulnerability — Hide Shipping Method For WooCommerce 7.2 High 2026-10-01
CVE-2026-102108 Kiteworks Email Protection Gateway deserialization of untrusted data — Email Protection Gateway 7.2 High 2026-09-30
CVE-2026-102135 Kiteworks Email Protection Gateway Deserialization of Untrusted Data — Email Protection Gateway 6.6 Medium 2026-09-30
CVE-2026-102101 Kiteworks Core deserialization of untrusted data — Core 8.1 High 2026-09-30
CVE-2026-102392 WordPress Extra Product Options For WooCommerce | Custom Product Addons and Fields plugin <= 3.3.8 - PHP Object Injection vulnerability — Extra Product Options For WooCommerce | Custom Product Addons and Fields 7.2 High 2026-09-30
CVE-2026-102377 WordPress Photo Gallery by 10Web plugin <= 1.8.46 - PHP Object Injection vulnerability — Photo Gallery by 10Web 8.8 High 2026-09-30
CVE-2026-100512 WordPress Nested Pages plugin <= 3.3.2 - PHP Object Injection vulnerability — Nested Pages 9.8 Critical 2026-09-30
CVE-2026-97291 WordPress Schema & Structured Data for WP & AMP plugin <= 1.66 - PHP Object Injection vulnerability — Schema & Structured Data for WP & AMP 8.8 High 2026-09-30
CVE-2026-97256 WordPress Page Builder by SiteOrigin plugin <= 2.36.0 - PHP Object Injection vulnerability — Page Builder by SiteOrigin 7.2 High 2026-09-30
CVE-2026-103441 Unauthenticated arbitrary file deletion through Wikibase serialized entity parsing — MediaWiki Wikibase extension 7.2 High 2026-09-30
CVE-2026-103395 LightLLM through 1.2.0 Unauthenticated Remote Code Execution via Visual-Only RPyC Service — LightLLM 9.8 Critical 2026-09-30
CVE-2026-97248 WordPress Booking Activities plugin <= 1.18.7.1 - PHP Object Injection vulnerability — Booking Activities 9.8 Critical 2026-09-30
CVE-2026-97246 WordPress ShortPixel Image Optimizer plugin <= 6.5.5 - PHP Object Injection vulnerability — ShortPixel Image Optimizer 4.9 Medium 2026-09-30
CVE-2026-96833 WordPress Ultimate Addons for Contact Form 7 plugin <= 3.5.51 - PHP Object Injection vulnerability — Ultimate Addons for Contact Form 7 7.2 High 2026-09-30
CVE-2026-96832 WordPress Content Egg plugin <= 6.3.1 - PHP Object Injection vulnerability — Content Egg 7.2 High 2026-09-30
CVE-2026-96831 WordPress Themify Builder plugin <= 7.8.1 - PHP Object Injection vulnerability — Themify Builder 8.8 High 2026-09-30

Vulnerabilities classified as CWE-502 (可信数据的反序列化) represent 2486 CVEs. The CWE taxonomy describes the weakness; review individual CVEs for product-specific impact.