You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 44c38c4
Browse filesBrowse the repository at this point in the historyBrowse files
1. SecurityUtils.checkParams: Replace single URL decode with while-loop
decode (consistent with checkJdbcConnParams) to prevent double-encoding
bypass that allows attackers to smuggle sensitive params like
allowLoadLocalInfile past the blacklist.
2. SqlConnection (4 files): Replace DriverManager.getConnection(url,user,pwd)
with getConnection(baseUrl, Properties). Security params are set first
via SecurityUtils.getMysqlSecurityParams() and cannot be overridden by
user-supplied extra params, providing defense-in-depth against URL
parameter injection.
3. CryptoUtils.string2Object: Add resolveClass whitelist allowing only
java.lang.String, blocking all gadget chain deserialization attacks
(CWE-502) while maintaining backward compatibility since passwords
are stored as String objects.
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: linkis-public-enhancements/linkis-datasource/linkis-datasource-manager/service/jdbc/src/main/java/org/apache/linkis/metadata/query/service/mysql/SqlConnection.java
+13-10Lines changed: 13 additions & 10 deletions
Original file line number
Diff line number
Diff line change
@@ -26,7 +26,6 @@
26
26
importjava.io.IOException;
27
27
importjava.sql.*;
28
28
importjava.util.*;
29
-
importjava.util.stream.Collectors;
30
29
31
30
importorg.slf4j.Logger;
32
31
importorg.slf4j.LoggerFactory;
@@ -214,19 +213,23 @@ public void close() throws IOException {
Copy file name to clipboardExpand all lines: linkis-public-enhancements/linkis-datasource/linkis-datasource-manager/service/jdbc/src/main/java/org/apache/linkis/metadata/query/service/starrocks/SqlConnection.java
+13-10Lines changed: 13 additions & 10 deletions
Original file line number
Diff line number
Diff line change
@@ -26,7 +26,6 @@
26
26
importjava.io.IOException;
27
27
importjava.sql.*;
28
28
importjava.util.*;
29
-
importjava.util.stream.Collectors;
30
29
31
30
importorg.slf4j.Logger;
32
31
importorg.slf4j.LoggerFactory;
@@ -206,19 +205,23 @@ public void close() throws IOException {
Copy file name to clipboardExpand all lines: linkis-public-enhancements/linkis-datasource/linkis-metadata-query/service/jdbc/src/main/java/org/apache/linkis/metadata/query/service/mysql/SqlConnection.java
+14-10Lines changed: 14 additions & 10 deletions
Original file line number
Diff line number
Diff line change
@@ -193,23 +193,27 @@ public void close() throws IOException {
Copy file name to clipboardExpand all lines: linkis-public-enhancements/linkis-datasource/linkis-metadata-query/service/jdbc/src/main/java/org/apache/linkis/metadata/query/service/starrocks/SqlConnection.java
+13-9Lines changed: 13 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -206,19 +206,23 @@ public void close() throws IOException {
Copy file name to clipboardExpand all lines: linkis-public-enhancements/linkis-pes-common/src/main/java/org/apache/linkis/datasourcemanager/common/util/CryptoUtils.java
+14-1Lines changed: 14 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -23,8 +23,10 @@
23
23
importjava.io.ByteArrayInputStream;
24
24
importjava.io.ByteArrayOutputStream;
25
25
importjava.io.IOException;
26
+
importjava.io.InvalidClassException;
26
27
importjava.io.ObjectInputStream;
27
28
importjava.io.ObjectOutputStream;
29
+
importjava.io.ObjectStreamClass;
28
30
importjava.io.Serializable;
29
31
importjava.security.MessageDigest;
30
32
@@ -62,7 +64,18 @@ public static String object2String(Serializable o) {
0 commit comments