Como definir uma senha que viole as restrições de senha sem alterar as restrições usando o sudo

3

Eu tenho acesso root em uma máquina compartilhada por outras pessoas. Eu acho que as restrições de senha são absurdas, elas são excessivamente excessivas em como elas ordenam o uso e ordenação de caracteres não-verbais e tornam as senhas lentas para digitar devido à constante necessidade de usar caracteres especiais para quebrar a senha (apesar de digitar I ' m sempre mais devagar com caracteres especiais, parece quebrar meu fluxo). Posso criar um & senha segura sem as restrições. Eu quero usar o meu acesso root para contornar as regras de senha para criar uma senha que eu gosto e pode digitar rapidamente.

No entanto, não quero alterar as próprias restrições de senha. Ou, mais precisamente, eu DO quero mudá-las, acho que são idiotas e não adicionam segurança à escrita, mas não devo alterá-las, pois isso está sendo regulado por uma autoridade superior.

Existe uma maneira de explorar meu acesso root para definir uma senha que viole essas restrições sem alterar as restrições de ninguém no sistema?

    
por dsollen 12.11.2015 / 17:12

3 respostas

4

Você pode tentar printf "%s\n" 'username:encryptedpassword' | sudo chpasswd -e - que pode ser capaz de ignorar a verificação de senha imposta pelo PAM.

A senha deve ser pré-criptografada, por exemplo, como no exemplo mkpasswd por muru. Por exemplo:

p=$(mkpasswd -m sha-512 'mysupersekretpassword')
printf "%s:%s\n" 'username' "$p" | sudo chpasswd -e

Estou usando printf aqui, em vez de echo , porque echo interpretará e alterará a saída para algumas sequências de caracteres que podem ocorrer na senha criptografada, por exemplo, \t , \n , \nnn (octal de 3 dígitos) e outros.

Lembre-se de excluir o comando mkpasswd do seu .bash_history . Ou use export HISTCONTROL=ignorespace e prefixe o comando p=$(...) com um espaço para que ele nunca seja armazenado no histórico. Se você não estiver usando o bash, use o método que for apropriado para o seu shell.

    
por 13.11.2015 / 00:09
2

Você pode alterar manualmente a senha como administrador. Basta fazer o login e fazer o seguinte:

Entrada:

# passwd whitecat

O resultado deve ser:

Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
    
por 12.11.2015 / 17:16
2

Pode haver outros métodos mais seguros, mas uma delas é editar /etc/shadow . Obtenha a forma criptografada da sua senha pretendida:

$ mkpasswd -m sha-512
Password: 
$6$zGvnR7mWtj59LfpO$t/VMNTbqyp9ykVMWUhsXghVvJ15iGDiFwvhNYaJIbBy8iM9E/vHSTmbBa0iotCLBA.MGBM949tyoxrjX81Qkg1

Essa forma criptografada de foo , caso você esteja se perguntando.

Edite o /etc/shadow :

sudo vipw -s

Encontre seu usuário, substitua sua senha atual pela gerada, salve e saia. Se você errar, será um inferno, então mantenha uma sessão sudo em execução em outro terminal.

    
por 12.11.2015 / 17:36

Tags