Existe um problema onde o software valida a classe externa de um ID de tipo de nome de classe, mas falha ao validar adequadamente as classes dentro de seus argumentos genéricos. Isso ocorre porque a função `DatabindContext. resolveAndValidateGeneric()` verifica a classe externa em relação ao tipo base declarado, mas passa os argumentos para ` validateTypeParameter()`, que os valida em relação ao tipo base externo em vez de sua vinculação genérica declarada específica. Consequentemente, classes não relacionadas podem ser aceitas dentro de um subtipo genérico ou dentro de IDs de tipo de array simples, uma vez que o tipo base seja aprovado. Isso pode ser explorado por meio de polimorfismo de nome de classe baseado em anotação ou tipagem padrão configurada. Por exemplo, se uma propriedade for declarada como `Map<String,String>`, um invasor poderá fornecer um `HashMap<FileSystemXmlApplicationContext,String>`. Se o Spring estiver presente no classpath, isso pode levar à execução de comandos arbitrários via `ProcessBuilder.start()` ao carregar um XML controlado pelo invasor.