Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Validação para evitar falhas de segurança no upload do arquivo

Olá pessoal!

Referente ao comentário do instrutor nesta tarefa: Para evitar falhas de segurança, tenha o cuidado de validar o nome recebido para garantir que o arquivo será realmente salvo na pasta files, atualmente a resposta é:

var fs = require('fs');
module.exports = function(app){

  app.post("/upload/imagem", function(req, res){
    console.log('recebendo imagem');

    var filename = req.headers.filename;

    req.pipe(fs.createWriteStream('files/' + filename))
    .on('finish', function(){
      console.log('arquivo escrito');
      res.status(201).send('ok');
    });
  });
}

Como ficaria o código adicionando a validação comentada pelo instrutor?

Aguardo, desde já obrigado!

Atenciosamente.

2 respostas
solução!

Elías, boa tarde!

O que eu recomendo é remover todo os caracteres que sejam: .., \, / pois assim o usuário não pode "navegar" pela sua aplicação.

O como fazer isso pode ser renomeando o arquivo para alguma outra coisa

Espero ter ajudado e bons estudos!

Olá Felipe!

Ajudou sim, obrigado!

Atenciosamente.