Por exemplo, alguém cria uma caixa de diálogo de autenticação falsa para obter minha senha de root. Como saber se é real ou falso?
Por exemplo, alguém cria uma caixa de diálogo de autenticação falsa para obter minha senha de root. Como saber se é real ou falso?
Respostas:
Então você [provavelmente] está olhando para um prompt de escalação do PolicyKit lá. Qualquer pessoa que não queira jogar pode simplesmente correr pkexec echo
(ou algo parecido) e obter algo parecido.
Bem, você pode obter informações sobre uma janela xprop
e informações de comando, ps
então vamos combiná-las! Antes de continuarmos, porque estamos sendo super paranóicos aqui, estou usando caminhos completos, caso alguém tenha adicionado uma cópia hackeada local de qualquer um desses comandos. Aqui está eu executando-o na minha pkexec echo
caixa:
$ /bin/ps $(/usr/bin/xprop _NET_WM_PID | /usr/bin/awk '{print $NF}')
PID TTY STAT TIME COMMAND
3989 ? Sl 0:00 /usr/lib/kde4/libexec/polkit-kde-authentication-agent-1
Então, tanto quanto podemos dizer (note que eu sou um usuário do KDE), este é um prompt legítimo. Ele não está executando algum script local, desde que algo ruim ainda não tenha enraizado o sistema (mas ei, por que eles precisariam da nossa senha novamente?), Provavelmente estamos seguros.
No caso de gksu
, kdesu
e pkexec
os prompts são bastante explícitos sobre o que eles serão executados. No caso dos dois primeiros, o comando acima dirá o que eles estão planejando executar:
$ /bin/ps $(/usr/bin/xprop _NET_WM_PID | /usr/bin/awk '{print $NF}')
PID TTY STAT TIME COMMAND
10395 ? Sl 0:00 /usr/lib/kde4/libexec/kdesu -u root -c /usr/sbin/synaptic
No caso do PolicyKit, você pode clicar nessa guia de detalhes e verá qual permissão ele deseja executar. No KDE, você também verá o PID do chamador, que pode ser consultado ( ps <PID>
). Aqui está o que parece no KDE:
Você pode passar o mouse sobre a ação e obter a política PolicyKit que deseja executar. No Ubuntu, a política é mostrada por padrão. Essas políticas podem ser consultadas. O item acima vem /usr/share/polkit-1/actions/org.kubuntu.qaptworker2.policy
e um serviço especificado em /usr/share/dbus-1/system-services/org.kubuntu.qaptworker2.service
. Você pode ver o que está sendo administrado e por quem. E esses serviços só podem ser adicionados pelo root novamente, a menos que você já tenha sido enraizado, provavelmente poderá confiar neles.
O PolicyKit possui essas regras e serviços, portanto, ações selecionadas podem ser executadas como raiz sem precisar executar todo o processo dessa maneira. Você precisa estar vigilante. Obviamente, se você estiver executando gnome-calculator
e um org.freedesktop.policykit.exec
prompt aparecer, algo está errado.
Pode ser apenas investigar antes de inserir sua senha. Depois é tarde demais.
E mesmo que tudo seja legítimo, quem pode dizer que você não tem um keylogger roubando todas as suas senhas? Ou algo que substitui $PATH
ou que jogou algo horrível no seu ~/.bashrc
que está fazendo parecer que você não foi hackeado? Tenho certeza de que, com concentração suficiente, você poderá contornar todos os procedimentos de detecção acima.
Dorma bem.
tripwire
podem ajudar a verificar a autenticidade de um arquivo, mas devem ser instalados muito cedo.