Azure / Azure/run-command-handler-linux

Script filename from SasUri cannot contain /

Abierto
#9 0 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Go
Estrellas
2
Forks
16
Merge medio
1 d 9 h
PR fusionados (30 d)
2

Descripción

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.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Comienza en pkg/download/blob.go, en el código de extracción del nombre de archivo y apertura del archivo al que hace referencia el issue. Rastrea cómo la ruta de SasUri se convierte en fileName y, después, verifica el manejo de foo/bar.sh y de las rutas que contienen .. o /. Está hecho cuando una URI de script con componentes de ruta anidados puede procesarse sin el error de directorio inexistente ni un comportamiento de ruta inseguro.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
go
Área
security
Tipo de issue
Error
Dificultad
2/5
Tiempo estimado
1-3 horas
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.