Como posso falsificar a porta 22 quando fiz o sshd escutar outra porta?

9

Em vez de tornar possíveis hackers a partir da varredura de portas no meu servidor, gostaria de fingir que o sshd está ouvindo na porta 22 e registrando as tentativas. Será que faz sentido fazer isso? Se sim, quais ferramentas / bibliotecas ativamente desenvolvidas estão disponíveis.

Jürgen Paul
fonte
1
Mas é melhor lembrar que a instalação de qualquer software adicional aumenta os riscos de penetração. Pode ser verdade que o OpenSSH seria mais forte de invadir do que qualquer coisa "falsa" como honeypot, por exemplo. Portanto, isso significa que você precisaria endurecer sua instalação de alguma maneira.
poige

Respostas:

9

Você também pode simplesmente registrar todas as tentativas de conexão à porta 22 com o iptables, mesmo que nada esteja escutando nessa porta:

$ sudo iptables -A INPUT -p tcp  --dport 2222 -j LOG
$ nc localhost 2222
$ tail -n1 /var/log/syslog
Oct 26 13:35:07 localhost kernel: [325488.300080] IN=lo OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:08:00 SRC=127.0.0.1 DST=127.0.0.1 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=56580 DF PROTO=TCP SPT=35625 DPT=2222 WINDOW=43690 RES=0x00 SYN URGP=0 
Dennis Kaarsemaker
fonte
4

Para responder à pergunta "Será que faz sentido fazer isso?" Eu pergunto: "Você é um pesquisador de segurança?" Se você responder sim, executar um honeypot ssh faria sentido.

Se você está apenas executando um serviço de produção e não se importa com verificações com falha, basta executar o sshd em uma porta diferente com mecanismos de autenticação adicionais (como chave pública apenas ou exigir um Yubikey ou dispositivo similar) e soltar a porta 22 tráfego sem registrá-lo.

Existem worms ssh de força bruta que fazem uma varredura ativa na Internet que analisam sua porta ssh o dia inteiro e, se você não estiver olhando os dados de logs ou honeypots de firewall, tudo o que você está fazendo é desperdiçar espaço em disco.

Paul Gear
fonte
3
A pergunta para mim não é "Posso fazer isso?", Mas "Devo fazer isso?". Eu vejo muitos administradores de sistemas ou desenvolvedores fazendo coisas porque acham que deveriam ou porque alguém lhes disse que deveriam ou porque "todo mundo" está fazendo isso. Fazer qualquer coisa sem ter necessidades, objetivos e resultados esperados claramente definidos é uma perda de tempo, dinheiro e energia.
joeqwerty