1 votes

Sécurité CLASSPATH

Sur ce poste quelqu'un a mentionné dans un commentaire que l'ajout de .: à la PATH est une faille de sécurité. L'ajout de .: à la CLASSPATH Une variable d'environnement peut-elle également constituer une faille de sécurité ?

2voto

Chai T. Rex Points 4969

Oui, il peut s'agir d'une faille de sécurité.

Mise en place .: à l'avant de la CLASSPATH signifie que Java utilise les classes du répertoire courant avant de chercher dans le reste du répertoire. CLASSPATH chemins. Cela signifie que .class dans le répertoire actuel ou ses sous-répertoires seront utilisés à la place de n'importe quelle classe ou interface. Par exemple, si le fichier ./java/lang/String.class existe, elle sera utilisée à la place de la norme String classe.

Cela signifie que si vous ne faites pas attention au répertoire courant lorsque vous exécutez un programme Java, ce dernier peut charger des classes malveillantes à la place de n'importe quelle classe.

Pour vous épargner l'effort de vérifier le répertoire courant à chaque fois que vous exécutez un programme Java, vous ne devriez pas configurer le système pour qu'il le fasse par défaut.

Si vous comptez utiliser des classes dans le répertoire courant lorsque vous exécutez un programme Java particulier, vous devriez généralement ignorer le paramètre CLASSPATH et utiliser le -cp argument à java à la place, comme dans :

java -cp ".:…" …

Cela permet d'éviter complètement d'affecter d'autres programmes Java par l'intermédiaire de la fonction CLASSPATH variable d'environnement. Vous ne devriez le faire que dans les cas où vous savez que les fichiers du répertoire actuel ne sont pas malveillants.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X