Existem algumas subquestões importantes, por isso vou atacar este pedaço por peça:
O que torna um arquivo "executável"?
Os sistemas Linux e Unix determinam se um arquivo é executável examinando o bit "execute" ( -x
) das permissões de arquivo.
Se você for para um terminal e executar ls -l Downloads
(substitua "Downloads" pela localização dos arquivos baixados, se diferente). Você pode ver algo assim:
total 13557K
-rwxrwxr-x 1 Matthew Matthew 13557241 Apr 11 04:11 Downloaded_Game
O x
s na primeira coluna significa que o arquivo é executável pelo proprietário (Mateus), o grupo (Mateus) e mundo (todos). (Os r
e w
correspondem a "legível" e "gravável", respectivamente).
OK, o que está definindo o bit "executar"?
Sempre que um arquivo é criado em um sistema Linux, o processo (programa) que está criando o arquivo (no seu caso, provavelmente o seu navegador da Web) deve especificar as permissões do arquivo. Essas permissões são geralmente mas nem sempre limitadas pelo usuário umask
. Veja a página de manual para umask
para mais informações sobre esta sub-questão.
Que diferença isso faz para a segurança?
Você pode ter um ponto em questionar se há um risco de segurança potencial em marcar arquivos baixados como executáveis. No entanto, os sistemas Linux e Unix em geral são historicamente notados por ficar o menos possível no caminho do usuário.
Dito isto, os sistemas Linux e Unix também limitam inerentemente o dano que os programas executáveis podem fazer, pelo menos quando esses programas são executados por um usuário regular (e não como o superusuário, root). Um programa que apaga seu diretório pessoal provavelmente ainda arruinaria seu horário de almoço, mas como é a expectativa dos usuários responsáveis do qualquer sistema operacional, você é o único responsável por garantir que só execute programas em que confia ou pode verificar você mesmo.Em outras palavras, mesmo com o bit de execução ativado, você ainda terá que tomar a decisão de executar o programa. Mais importante, mesmo sem o bit de execução, o arquivo ainda pode ser executado, então seria falso considerar a falta de um bit de execução mais "seguro" em qualquer sentido significativo.
Conclusão
Em suma, não se preocupe muito com o status do arquivo executável. Como enfatizado acima, tenha cuidado com o que você baixou em primeiro lugar e verifique o que você baixa antes de executá-lo. Sempre que possível, use fontes confiáveis como o repositório apt do Ubuntu.