Como se pode verificar a autenticidade do 'getty' rodando no linux?

1

O unix haters handbook diz:

/etc/getty, which asks for your username, and /bin/login, which asks for your pass-
word, are no different from any other program. They are just programs.
They happen to be programs that ask you for highly confidential and sensi-
tive information to verify that you are who you claim to be, but you have no
way of verifying them.

É verdade para um sistema linux moderno?

    
por saga 26.06.2017 / 16:25

1 resposta

1

Por padrão, não há proteção de integridade específica para arquivos de programa e biblioteca do sistema além das permissões de arquivo (e possivelmente montagem somente leitura); não existem arquivos de sistema especialmente protegidos. Nesse sentido, a resposta é sim, isso é verdade .

Você pode seguir uma abordagem de IDS baseada em host usando programas como o tripwire ou aide, onde você cria somas de verificação adequadas para cada arquivo importante, armazena-as em um local seguro e as compara regularmente com as somas de recálculo reais para observar alterar. Claramente, o banco de dados de somas de verificação precisa ser atualizado após a instalação de cada atualização ou correção. A maioria dos gerenciadores de pacotes mantém essa lista de somas de verificação e permite verificar a integridade dos arquivos instalados. Essa abordagem, se seguida de maneira significativa, é um pouco envolvida e, portanto, raramente vista.

Uma abordagem diferente é proteger o sistema contra violações de integridade usando complementos para controle de acesso baseado em função (RBAC) e controle de acesso obrigatório (MAC) como SELinux ou Grsecurity, onde, se aplicados corretamente, mesmo o root não modificar arquivos do sistema, a menos que entre em uma função designada. A chave aqui é projetar uma política que impeça ações indesejadas sem prejudicar a atividade legítima do aplicativo. Isso está longe de ser trivial e, portanto, raramente visto.

No entanto, antes que qualquer um desses seja considerado em profundidade, é necessário definir o modelo de ataque e especificar o cenário: há 20 anos, as máquinas Unix eram verdadeiros sistemas multiusuários em que usuários potencialmente não confiáveis tinham acesso ao sistema. Estes dias se foram; hoje você tem servidores com usuários funcionais, como "servidor da Web" ou "banco de dados", ou você tem sistemas de área de trabalho em computadores pessoais com um usuário.

    
por 29.06.2017 / 09:16