Se você permitir o sudo sem senha, qualquer pessoa que consiga executar o código em sua máquina como seu usuário poderá executar o código trivialmente como root. Pode ser alguém que usa seu console enquanto você está logado, mas não na frente do computador, com o qual você não está preocupado (de qualquer forma, alguém com acesso físico pode fazer praticamente o que deseja). Também pode ser alguém que acessa sua conta em outra máquina em que você conectou sua própria máquina. Mas também pode ser alguém que explora uma falha de segurança remota - por exemplo, um site que explora um bug do navegador para injetar código na instância do navegador.
Qual é o tamanho do negócio? Não muito, por várias razões:
- Um invasor que encontrou um buraco remoto provavelmente também pode encontrar um buraco raiz local.
- Vários atacantes não se importam com privilégios de root. Tudo o que eles querem é enviar spam e infectar outras máquinas, e eles podem fazer isso como seu usuário.
- Um invasor que tem acesso à sua conta pode soltar um cavalo de Troia que captura suas teclas (incluindo sua senha) ou que pega carona no meio que você usar para ganhar raiz para executar o comando por conta própria.
- Se você é o único usuário em sua máquina, não há muito a proteger que não seja acessível como seu usuário.
Por outro lado:
- Se você estiver atualizado com as atualizações de segurança, o invasor pode não encontrar um buraco local para explorar.
- Um invasor não root não pode apagar seus rastros muito bem.
- Ter que digitar uma senha de vez em quando não é um fardo.
- Ter que digitar uma senha lembra que você está fazendo algo perigoso (como em: pode perder dados ou inutilizar o computador). (Como usuário não root, o único perigo real é apagar dados por engano, e geralmente é óbvio quando você está apagando algo e deve ter um cuidado extra.)
Gilles 'SO- parar de ser mau'
fonte
Vale a pena notar que algumas organizações competentes realmente preferem o sudo sem senha quando possuem usuários que precisam fazer login em muitos hosts remotos diferentes - principalmente se isso incluir hosts com níveis variados de segurança.
O problema ao digitar sua senha é que você está fornecendo sua senha para sistemas remotos regularmente. Uma das razões pelas quais usamos o SSH é evitar exatamente esse tipo de falha de segurança. É uma questão de compensações: você está aumentando a probabilidade de que a senha de um usuário seja comprometida, a fim de diminuir a probabilidade de um invasor que comprometeu uma sessão ou chave conseguir acesso à raiz. Em particular, imagine o seguinte cenário:
No cenário que descrevi, o sudo sem senha pode aumentar sua segurança protegendo a senha do usuário. Isso é semelhante aos ataques de reutilização de senha que se tornaram comuns na Internet, exceto que a vulnerabilidade decorre de um sistema de autenticação unificado em vez da reutilização real de senhas.
A menos que você esteja em uma empresa gigante, o sudo com senha provavelmente aumentará sua segurança - mas não necessariamente em grande quantidade. A menos que você seja realmente um profissional em segurança de sistemas ou seja um host sem nada particularmente valioso, eu recomendo que você o deixe.
fonte
Se você não tiver
sshd
instalado, é bastante seguro, a menos que você quebre alguma coisa.fonte