J'ai le code js ci-dessouscorrectif de sécurité pour window.location.href
var a = window.location.href.substring(0,window.location.href.lastIndex('/')+1) + "logout.jsp";
setTimeout(function(){
window.location.href = a;
},1000);
Quand je suis scanner Fortify pour le fichier ci-dessus, il montre un risque de sécurité sur la ligne ci-dessus avec le code d'évaluation dynamique : Injection de code. Maintenant, je ne suis pas capable de comprendre comment résoudre ce problème. Dois-je ajouter un encodeur pour window.href ou comment le résoudre. Aussi, si nous avons encoder, ce que je dois faire.
Je ne vois pas vraiment comment cela pourrait être exploité pour injecter du code arbitraire puisque 'location.href' est généré par votre serveur (sauf si certaines parties de l'URL proviennent d'une entrée utilisateur arbitraire). Cependant, votre code peut être réduit juste 'location.href =" logout.jsp "' qui fait la même chose. –
@Derek 朕 會 功夫 Dans ce cas, je ne peux pas non plus voir comment l'injection peut se produire. Mais quelqu'un peut pousser JS après '# 'dans l'URL, ce qui pourrait créer des problèmes s'il n'est pas géré correctement. Il est donc probable que l'outil signale des faux positifs chaque fois qu'il voit 'window.location.href' en train d'être manipulé. – Nisarg
Votre code Javascript réside-t-il directement dans la page HTML ou dans un fichier js séparé? –