File tree Expand file tree Collapse file tree
src/main/java/org/opensearch/security/support Expand file tree Collapse file tree Original file line number Diff line number Diff line change 3131import java .io .IOException ;
3232import java .io .InputStream ;
3333import java .io .InvalidClassException ;
34+ import java .io .ObjectInputFilter ;
3435import java .io .ObjectInputStream ;
3536import java .io .ObjectOutputStream ;
3637import java .io .ObjectStreamClass ;
@@ -103,6 +104,7 @@ public static Serializable deserializeObject(final String string) {
103104 private final static class SafeObjectInputStream extends ObjectInputStream {
104105 public SafeObjectInputStream (InputStream in ) throws IOException {
105106 super (in );
107+ setObjectInputFilter (ObjectInputFilter .Config .createFilter ("maxdepth=10" ));
106108 }
107109
108110 @ Override
Original file line number Diff line number Diff line change 2121import java .util .concurrent .ConcurrentHashMap ;
2222import java .util .regex .Pattern ;
2323
24- import com .google .common .collect .ImmutableMap ;
2524import com .google .common .collect .ImmutableSet ;
2625
2726import com .amazon .dlic .auth .ldap .LdapUser ;
@@ -58,15 +57,10 @@ public final class SafeSerializationUtils {
5857 Number .class ,
5958 Collection .class ,
6059 Map .class ,
61- Enum .class ,
62- ImmutableMap .class
60+ Enum .class
6361 );
6462
65- private static final Set <String > SAFE_CLASS_NAMES = Set .of (
66- "org.ldaptive.LdapAttribute$LdapAttributeValues" ,
67- "com.google.common.collect.ImmutableBiMap$SerializedForm" ,
68- "com.google.common.collect.ImmutableMap$SerializedForm"
69- );
63+ private static final Set <String > SAFE_CLASS_NAMES = Set .of ("org.ldaptive.LdapAttribute$LdapAttributeValues" );
7064 static final Map <Class <?>, Boolean > safeClassCache = new ConcurrentHashMap <>();
7165
7266 static boolean isSafeClass (Class <?> cls ) {
You can’t perform that action at this time.
0 commit comments