Improper Handling of Extra Parameters
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 45/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- À l'abandon
- Stack technique
- javascript, node.js
- Domaine
- security
Piste de recherche
Lisez les déclarations de dépendances npm et examinez comment follow-redirects est résolu via le chemin indiqué webpack-dev-server, http-proxy-middleware et http-proxy. Mettez à jour la dépendance résolue vers la version 1.15.4 ou une version ultérieure, puis vérifiez que npm ne signale plus la version vulnérable.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Package Manager: npm
Vulnerable module: follow-redirects
Introduced through: t, [email protected] and others
Detailed paths
Introduced through: › [email protected] › [email protected] › [email protected] › [email protected]
Overview
Affected versions of this package are vulnerable to Improper Handling of Extra Parameters due to the improper handling of URLs by the url.parse() function. When new URL() throws an error, it can be manipulated to misinterpret the hostname. An attacker could exploit this weakness to redirect traffic to a malicious site, potentially leading to information disclosure, phishing attacks, or other security breaches.
PoC
Case 1 : Bypassing localhost restriction
let url = 'http://[localhost]/admin';
try{
new URL(url); // ERROR : Invalid URL
}catch{
url.parse(url); // -> http://localhost/admin
}
# Case 2 : Bypassing domain restriction
let url = 'http://attacker.domain*.allowed.domain:a';
try{
new URL(url); // ERROR : Invalid URL
}catch{
url.parse(url); // -> http://attacker.domain/*.allowed.domain:a
}
Remediation
Upgrade follow-redirects to version 1.15.4 or higher.
- Langage dominant
- JavaScript
- Étoiles
- 14.1k
- Forks
- 2k
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de http-party/node-http-proxy
-
util._extend() is depracatoryOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
http-party/node-http-proxy#1719 ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 72/100
http-party/node-http-proxy#1721 · 1 commentaire ·
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 55/100
http-party/node-http-proxy#1715 · 1 commentaire · 5 réactions ·
-
Is this library is dead?Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 15/100
http-party/node-http-proxy#1711 · 2 commentaires ·
-
HTTP3 + QUIC support?Ouverte
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
http-party/node-http-proxy#1710 · 5 réactions ·
Toutes les issues de http-party/node-http-proxy
Issues similaires
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
obsidianmd/obsidian-help#1169 ·
Les mainteneurs répondent en général sous 2 jours
-
[docs] RELEASE.md: wrong branch name, no check that the prepare PR merged with the right subject, manual publish stepPeut-être pris @albertteoh l’a pris aujourd’hui. Ouvertedocumentation
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
jaegertracing/jaeger-ui#4739 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
-
documentation
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
keepassxreboot/keepassxc-browser#3159 · 1 commentaire ·
-
Add: ESP 2 RSOuverteapproved check:passed feeds:add
Difficulté 1/5 Moins d'une heure Accessibilité débutants 67/100