Azure / Azure/run-command-handler-linux

Script filename from SasUri cannot contain /

Ouverte
#9 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Go
Étoiles
2
Forks
16
Merge moyen
1 j 9 h
PR mergées (30 j)
2

Description

I have a script source SasUri like:

```
https://xxx.blob.windows.net/container/foo/bar.sh
```

According to:

https://github.com/Azure/run-command-handler-linux/blob/6efb77e0fec9b1ff87c980d1a207f0fc73493b8a/pkg/download/blob.go#L82-L99

`fileName` becomes `foo/bar.sh`. However, directory `foo` doesn't exist so the `open` below always fails.

Suggest using fixed file name like a GUID. Otherwise you have to deal with `..` and `/` in paths which could cause a lot of security troubles.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Commencez dans pkg/download/blob.go, au niveau du code d’extraction du nom de fichier et d’ouverture du fichier référencé dans l’issue. Suivez la transformation du chemin de SasUri en fileName, puis vérifiez le traitement de foo/bar.sh et des chemins contenant .. ou /. C’est terminé lorsqu’une URI de script contenant des composants de chemin imbriqués peut être traitée sans l’échec dû à un répertoire manquant ni comportement de chemin non sécurisé.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
go
Domaine
security
Type d'issue
Bug
Difficulté
2/5
Temps estimé
1-3 heures
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.