UNKNOWNCVE-2026-35392

goshs : Limitation incorrecte d’un nom de chemin vers un répertoire restreint (« Path Traversal ») dans le chargement PUT de goshs

Plateforme

go

Composant

github.com/patrickhener/goshs

Corrigé dans

1.1.5-0.20260401172448-237f3af891a9

### Résumé * Le chargement PUT n’a pas d’assainissement de chemin | `httpserver/updown.go:20-69` Cette découverte affecte la configuration par défaut, aucun indicateur ni authentification n’est requis. ### Détails **Fichier :** `httpserver/updown.go:20-69` **Déclencheur :** `PUT /<path>` (server.go:57-59 achemine directement vers `put()`) Le gestionnaire utilise `req.URL.Path` brut pour construire le chemin d’enregistrement. Pas de `filepath.Clean`, pas de vérification `..`, pas de confinement webroot. ```go func (fs *FileServer) put(w http.ResponseWriter, req *http.Request) { upath := req.URL.Path // non assaini filename := strings.Split(upath, "/") outName := filename[len(filename)-1] targetpath := strings.Split(upath, "/") targetpath = targetpath[:len(targetpath)-1] target := strings.Join(targetpath, "/") savepath := fmt.Sprintf("%s%s/%s", fs.UploadFolder, target, outName) // ... os.Create(savepath) // écriture de chemin arbitraire ``` `UploadFolder` est défini par défaut sur `Webroot` (main.go:386-388). Le chemin est une pure concaténation de chaînes sans validation. **Impact :** Écriture de fichier arbitraire non authentifiée n’importe où sur le système de fichiers. **PoC :** ```bash #!/usr/bin/env bash # Write an arbitrar

Comment corriger

Aucun correctif officiel disponible. Recherchez des alternatives ou surveillez les mises à jour.

Surveillez vos dépendances automatiquement

Recevez des alertes quand de nouvelles vulnérabilités affectent vos projets.

Commencer gratuitement
CVE-2026-35392 — Vulnerability Details | NextGuard | NextGuard