Como criar um Honeypot SSH para capturar hackers em seu servidor Linux

ssh Honeypot trap hacker
⏱️ 9 min read

Se você já consultou os logs de autenticação do seu servidor, sabe que qualquer servidor conectado à Internet está sob uma constante enxurrada de tentativas de login de hackers.

Mesmo que seu servidor seja um servidor de hobby completamente desconhecido, scripts automatizados o encontrarão e tentarão continuamente usar a força bruta para usar o SSH. Embora não seja provável que eles entrem enquanto você estiver usando senhas complexas ou outras medidas de segurança, ainda há sempre a chance de que eles tenham sucesso.

Felizmente, há uma maneira útil e divertida de prender esses hackers em seu servidor e mantê-los muito distraídos para causar problemas.

O que é um Honeypot SSH?

Simplificando, um honeypot SSH é um chamariz destinado a parecer uma fruta fácil para atrair cibercriminosos e atraí-los para atingi-lo. Mas não é um alvo real, e o hacker geralmente não percebe isso até que seja tarde demais.

Ssh Honeypot

Um honeypot pode assumir muitas formas e ter muitos usos diferentes. Às vezes, eles são pouco mais que uma distração, mas outras vezes são usados ​​para coletar informações sobre o invasor.

Muitas agências governamentais usam honeypots para capturar criminosos, atraindo-os para atacar, apenas para coletar informações sobre eles para pegá-los mais tarde. Mas os honeypots também podem ser usados ​​por administradores de sistema que trabalham para empresas ou mesmo apenas por amadores que executam um servidor Linux por diversão.

Por que usar um Honeypot SSH?

Há muitas razões pelas quais alguém pode querer implementar um honeypot SSH em seu servidor. Em alguns casos, você pode querer usá-lo para bloquear qualquer conexão futura deles. Talvez você simplesmente queira afastá-los de alvos reais em seu sistema. Ou pode ser para fins educacionais: para ajudar a aprender como os ataques funcionam.

Para os propósitos deste guia, estamos usando principalmente o honeypot como uma distração. Especificamente, isso distrairá o hacker de atacar partes mais vulneráveis ​​do seu servidor, além de mantê-los ocupados demais para atacar o servidor de outra pessoa.

E, neste caso, pelo menos, o método usado será bom para uma ou duas risadas também.

Preso em SSH

Essencialmente, o que queremos fazer é prender o hacker quando ele tentar forçar o login SSH. Existem algumas maneiras de fazer isso, mas uma das mais simples é enviar lentamente um banner SSH muito longo.

Dessa forma, o script automatizado do hacker ficará preso esperando um banner. Isso pode durar horas, se não dias ou semanas. Como o script é automatizado, o hacker provavelmente não está prestando muita atenção nele e não perceberá que está travado até que tenha passado muito tempo.

Isso às vezes é chamado de “tarpit SSH”, pois o script do hacker fica preso nele e não consegue sair sozinho.

Isso requer que você conheça alguns usos básicos de SSH. Se você não tiver certeza de como usar o SSH, leia este guia para começar.

interminável

O programa que estamos usando para fazer isso é chamado interminável e é feito por skeeto.

Honeypot Endlessh Github

Depois de fazer login no seu servidor, clone o repositório. (Você precisa ter git instalou.)

git clone https://github.com/skeeto/endlessh

Agora que você tem o repositório em seu servidor, você precisará alternar para esse diretório e compilá-lo.

cd endlessh
make

Alguns erros podem surgir ao tentar compilar o programa. Isso provavelmente significa que você está perdendo uma dependência que o programa precisa compilar. Você precisará verificar qual dependência está faltando e, em seguida, instalá-la com o gerenciador de pacotes da sua distribuição.

Uma vez que você tenha o programa para compilar, você vai querer movê-lo para o seu diretório bin para que ele fique no seu caminho.

sudo mv endlessh /usr/local/bin

Você vai querer verificar novamente para ter certeza de que ele foi detectado em seu caminho.

which endless

Deve imprimir o/usr/local/bin/endlessh caminho. Se este não for o caso, certifique-se de que ele foi movido para o diretório correto.

Ssh Honeypot que infinito

Depois disso, transforme o programa em um daemon de serviço para que ele possa funcionar como um systemd serviço.

sudo cp util/endlessh.service /etc/systemd/system/

quando terminar, habilite o serviço para que ele seja executado em segundo plano.

sudo systemctl enable endlessh
Ssh Honeypot Systemctl Ativar sem fim

Por padrão, o infiniteh só funcionará em portas acima de 1024, mas queremos que ele use a porta SSH padrão para que possamos enganar os hackers e tentar atacá-la. Para fazer isso, precisamos editar o arquivo de serviço.

Este exemplo usa nano para editar o arquivo de configuração, mas fique à vontade para usar o editor de texto de sua preferência.

sudo nano /etc/systemd/system/endlessh.service

Quando o arquivo estiver aberto, descomente a linha a seguir removendo o caractere #:

#AmbientCapabilities=CAP_NET_BIND_SERVICE

Em seguida, adicione um # no início desta linha:

PrivateUsers=true
Arquivo de serviço sem fim Honeypot

Salve o arquivo e execute este comando:

sudo setcap 'cap_net_bind_service=+ep' /usr/local/bin/endlessh

Você precisará criar e configurar um arquivo de configuração para que o infiniteh saiba em qual porta ele deve ser executado. Você precisará criar um novo diretório para ele primeiro e, em seguida, criar o arquivo de configuração.

sudo mkdir -p /etc/endlessh
sudo vim /etc/endlessh/config

O arquivo de configuração precisará apenas de uma única linha nele. Isso dirá ao infiniteh para ser executado na porta 22, que é a porta padrão para SSH. Fazemos isso para que seja um alvo mais atraente para os hackers. Eles verão que a porta SSH padrão está aberta e tentarão invadi-la.

Digite o seguinte em seu arquivo de configuração:

Port 22
Configuração infinita do Honeypot

Você precisará iniciar o serviço infiniteh.

sudo systemctl start endlessh

Isso é tudo o que há para isso! Agora você terá infinitas rodando em sua porta SSH padrão e já está prendendo hackers.

Testando

Apenas para ter certeza de que o honeypot está funcionando como pretendido, vamos fingir ser um hacker por um segundo e tentar obter acesso ao SSH em seu servidor.

ssh root@<server-ip-address>

Desde que tudo tenha sido configurado corretamente, você deve ver que o ssh comando está preso e não está fazendo nada. Vamos dar uma olhada para ver o que realmente está acontecendo quando você (ou um hacker real) emite este comando.

Repita o mesmo comando, mas adicione o -vvv sinalizador para usar a opção detalhada.

ssh -vvv root@<server-ip-address>
Teste Ssh Honeypot

Agora deve ficar claro como essa pequena ferramenta está prendendo você e impedindo que você acesse o SSH em seu servidor. É lentamente, linha por linha, enviando um banner SSH muito grande para o cliente.

E, claro, como um hacker automatizou isso com um bot, eles não perceberão que isso está acontecendo até que você tenha desperdiçado horas, se não dias, do tempo deles.

perguntas frequentes

1. Isso impedirá que hackers acessem o SSH?

Embora seja um impedimento muito bom, não é garantido que pare os hackers completamente. Um hacker atento eventualmente perceberá que você criou um honeypot em seu servidor e poderá tentar portas diferentes para acessar o SSH em seu servidor.

No entanto, isso deve ser suficiente para evitar hackers que estão apenas procurando o fruto mais fácil.

2. Como uso o SSH se este programa estiver sendo executado na porta padrão?

Você precisará alterar a porta em que o SSH é executado. Essa é uma boa prática, mesmo se você não tiver um honeypot em seu servidor, pois os hackers sempre tentarão as portas padrão primeiro antes de procurar outras.

3. Existem outras opções que posso adicionar ao arquivo de configuração?

Sim, existem várias outras configurações que você pode alterar, incluindo a alteração da velocidade de atraso.

Você pode ver uma lista de opções no arquivo de configuração de amostra no repositório do Github.

Palavras finais

Agora que você aprendeu como configurar um honeypot em seu servidor para prender hackers e mantê-los distraídos para que não possam atacar mais nada, está longe de ser a única maneira de proteger o acesso SSH ao seu servidor.

Confira este artigo que mostra como usar chaves de criptografia para fazer login no SSH para ajudar a proteger ainda mais seu servidor.

Crédito da imagem: Mel em pote, favo de mel e pau por Yay Imagens

Join our Newsletter and receive offers and updates! ✅

0 0 votes
Article Rating
Avatar of Routech

Routech

Routech is a website that provides technology news, reviews and tips. It covers a wide range of topics including smartphones, laptops, tablets, gaming, gadgets, software, internet and more. The website is updated daily with new articles and videos, and also has a forum where users can discuss technology-related topics.

Você pode gostar...

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x