Azure / Azure/run-command-handler-linux

Script filename from SasUri cannot contain /

Aberta
#9 0 comentários 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
Go
Estrelas
2
Forks
16
Merge médio
1d 9h
PRs com merge (30d)
2

Descrição

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.

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

Comece em pkg/download/blob.go, no código de extração do nome do arquivo e abertura do arquivo referenciado na issue. Rastreie como o caminho de SasUri se torna fileName e, em seguida, verifique o tratamento de foo/bar.sh e de caminhos que contêm .. ou /. Está concluído quando uma URI de script com componentes de caminho aninhados puder ser processada sem a falha de diretório ausente nem comportamento de caminho inseguro.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
go
Domínio
security
Tipo de issue
Bug
Dificuldade
2/5
Tempo estimado
1-3 horas
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
45/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.