Isso não é uma falha de segurança, pois o recurso está funcionando da maneira que deveria funcionar. (Dado que esse recurso surgiu por acaso, isso não é surpresa.) Pode ser que suas expectativas não correspondam exatamente ao que o recurso realmente faz.
Quando um usuário tem a permissão de execução em um diretório, mas não a permissão de leitura, o usuário pode acessar qualquer entrada no diretório, desde que ele saiba seu nome. Esse acesso inclui todos os metadados sobre a entrada, incluindo seu nome, seu tipo, seu tamanho, suas datas, etc. Assim, o usuário pode distinguir uma entrada inexistente de uma entrada existente cujo conteúdo ele pode não ser capaz de acessar.
Os nomes das entradas agem como senhas. Se você souber a senha, poderá acessar a entrada. Pode haver restrições de acesso adicionais na entrada, mas esse é um problema não relacionado. Você sempre pode quebrar a autenticação de senha pela força bruta tentando todas as senhas possíveis.
Se você não quiser revelar nada sobre as entradas em um diretório --x, use nomes não solicitáveis (isto é, nomes aleatórios que são longos o suficiente).