Je pense que ici est le site le plus simple à comprendre. Comme décrit sur le même site, une bibliothèque avec une vulnérabilité connue pour un module C'est un outil pour vérifier si vous l'utilisez.
À l'origine un outil pour les applications Java et .NET, il prend désormais en charge les éléments suivants en tant que prototype.
OS:CentOS 7.7 OWASP dependency check:5.3.0
J'ai utilisé la version CLI, mais selon le Manual Lorsque j'ai spécifié le serveur proxy, le port proxy et les informations d'authentification proxy comme arguments et que je les ai exécutés, j'ai été disjoint et Exception. .. .. J'ai trouvé le message d'erreur familier suivant.
Caused by: java.io.IOException: Unable to tunnel through proxy. Proxy returns "HTTP/1.1 407 Proxy Authentication Required"
Fin. .. .. Lorsque l'authentification proxy requise apparaît même si les informations proxy sont spécifiées. .. ..
# Cause
Cela était dû au paramètre par défaut de ne pas utiliser l'authentification de base pour le tunneling lors de la connexion à HTTPS à partir de Java 8 Update 111 sur le package java.net.
#### **`URL de référence: https://www.oracle.com/technetwork/java/javase/8u111-relnotes-3124969.html`**
Cependant, il existe une solution et les options suivantes doivent être ajoutées lors de l'exécution de Java.
-Djdk.http.auth.tunneling.disabledSchemes=""
# Solution
Je connais la solution, mais je ne sais pas comment l'appliquer en tant qu'outil pour OWASP.
La version CLI du contrôle de dépendance OWASP était un script shell, donc si vous regardez doucement à l'intérieur,
Il s'est avéré qu'une variable d'environnement appelée JAVA_OPTS était donnée en paramètre au moment de l'exécution.
# Conclusion
Il peut être exécuté comme suit.
export JAVA_OPTS="${JAVA_OPTS} -Djdk.http.auth.tunneling.disabledSchemes=""" dependency-check.sh --projet [nom du projet]--scan [scan du chemin du répertoire cible]--proxyserver [nom du serveur proxy]--proxyport [port proxy]--proxypass [mot de passe d'authentification proxy]--proxyuser [ID d'authentification proxy]