Recentemente, fiz muitas pesquisas sobre como configurar um servidor FTP (VSFTPD 3.0.5) e protegê-lo a ponto de me sentir razoavelmente confortável em tirá-lo do meu armário e expô-lo à Internet a partir da minha rede doméstica para compartilhe com algumas pessoas selecionadas.
O servidor está em execução e exposto à Internet há cerca de 36 horas (olhos treinados de perto nos logs de conexão) e já notei pelo menos duas ocasiões distintas em que posso ver o que parece ser um punhado de IPs desconhecidos tentando (sem sucesso por todas as indicações que conheço) fazer login, ou talvez apenas confundir o prompt de login do FTP com lixo na esperança de quebrá-lo de alguma forma? Eu realmente não consigo entender o que eles estão fazendo aqui, se na verdade é um mau ator. Aqui está um exemplo dos logs do servidor:
Sat Jan 6 15:27:02 2024 [pid 1553282] CONNECT: Client "199.45.154.16"
Sat Jan 6 15:27:02 2024 [pid 1553282] FTP response: Client "199.45.154.16", "220 Take a file, leave a file."
Sat Jan 6 15:27:02 2024 [pid 1553282] FTP command: Client "199.45.154.16", "????????????!??#?_??NV????ZBV??M??R???E??MU l?"??w??s??]#????Y??w??""
Sat Jan 6 15:27:02 2024 [pid 1553282] FTP response: Client "199.45.154.16", "530 Please login with USER and PASS."
Sat Jan 6 15:27:02 2024 [pid 1553282] FTP command: Client "199.45.154.16"
Sat Jan 6 15:27:02 2024 [pid 1553282] FTP command: Client "199.45.154.16", "G??XP??????3?G???????9?K???????E?????????????#?????+?"
Sat Jan 6 15:27:02 2024 [pid 1553282] FTP response: Client "199.45.154.16", "530 Please login with USER and PASS."
Sat Jan 6 15:27:02 2024 [pid 1553282] FTP command: Client "199.45.154.16", "?$?????,?R?S???????????????'?/???(?0?`?A?V?W?????????????"
Sat Jan 6 15:27:02 2024 [pid 1553282] FTP response: Client "199.45.154.16", "530 Please login with USER and PASS."
Sat Jan 6 15:27:02 2024 [pid 1553282] FTP command: Client "199.45.154.16", "?/?<???????5?=???????A?????????????????????????<MY_HOME_IP>???????????????"
Sat Jan 6 15:27:02 2024 [pid 1553282] FTP response: Client "199.45.154.16", "530 Please login with USER and PASS."
Sat Jan 6 15:27:02 2024 [pid 1553282] FTP command: Client "199.45.154.16", "?"
Sat Jan 6 15:27:02 2024 [pid 1553282] FTP response: Client "199.45.154.16", "530 Please login with USER and PASS."
Sat Jan 6 15:27:03 2024 [pid 1553286] CONNECT: Client "199.45.154.16"
Sat Jan 6 15:27:03 2024 [pid 1553286] FTP response: Client "199.45.154.16", "220 Take a file, leave a file."
Sat Jan 6 15:27:03 2024 [pid 1553286] FTP command: Client "199.45.154.16", "??????????????F?Z?0????YE???L[7I?IQ?]Q????] ?A?3????!"1?h#u??u?K?m????xU?G?????????????????A???????=?5???????<?/?"
Sat Jan 6 15:27:03 2024 [pid 1553286] FTP response: Client "199.45.154.16", "530 Please login with USER and PASS."
Sat Jan 6 15:27:03 2024 [pid 1553286] FTP command: Client "199.45.154.16", "?????????????W?V?A?`?0?(???/?'???????????????S?R?,?????$?"
Sat Jan 6 15:27:03 2024 [pid 1553286] FTP response: Client "199.45.154.16", "530 Please login with USER and PASS."
Sat Jan 6 15:27:03 2024 [pid 1553286] FTP command: Client "199.45.154.16", "?+?????#?????????????E???????K?9???????G?3???????????????<MY_HOME_IP>???????????????"
Sat Jan 6 15:27:03 2024 [pid 1553286] FTP response: Client "199.45.154.16", "530 Please login with USER and PASS."
Sat Jan 6 15:27:03 2024 [pid 1553286] FTP command: Client "199.45.154.16", "?"
Sat Jan 6 15:27:03 2024 [pid 1553286] FTP response: Client "199.45.154.16", "530 Please login with USER and PASS."
Eles continuam fazendo coisas assim ou tentando fazer login como anonymous
eu desativei. Percebi que os carimbos de data e hora estão tão próximos que tenho certeza de que deve ser algum tipo de automação/script. A IA sugeriu que os "comandos" poderiam ser criptografados ou ofuscados de alguma forma, mas acho que não, porque se eu fizer login e enviar comandos legítimos, o VSFTPD os registrará claramente em texto simples.
Estou pensando que alguém está procurando uma exploração em uma versão antiga do servidor? Eu li que houve um grande problema com o VSFTPD 2.3.4, então talvez seja assim que a exploração foi feita?
Estou chocado com a rapidez com que este servidor em execução no meu IP foi encontrado e estou tentando confirmar o que está acontecendo e se há algo proativo que posso fazer para permanecer seguro (além de colocar o servidor off-line). Atualmente, o VSFTPD não está bloqueado pelo IP de origem, embora eu esteja considerando isso agora. Também li algo sobre pessoas que usam fail2ban
servidores FTP? Nunca usei, mas se isso ajudar, estou interessado.
Cada IP na Internet é verificado com mais ou menos frequência.
Tente ocultar o máximo possível, usando uma porta não padrão no roteador voltado para a Internet e encaminhando-a dessa porta para a porta correta do computador.
Use também uma senha bonita e complicada para a conta que deseja expor na internet.
Recebo facilmente 1000/dia em portas conhecidas aleatórias e isso ocorre com bloqueio de endereço IP (mas ainda registra a tentativa)
Gosto de pensar nisso como radiação de fundo. Existem toneladas de bots automatizados, alguns executados por hackers e outros por empresas de segurança. É provável que quanto mais tempo ficar exposto, maior será o número de tentativas.
Uma VPN na frente da sua rede seria definitivamente uma escolha melhor do que a exposição direta.
Você deve instalar o fail2ban, então na pasta /etc/fail2ban há uma informação sobre como configurar o arquivo jail.local e/ou jail.conf para monitorar os serviços que você está executando.
Se você continuar a exposição direta, acabará atraindo a atenção de hackers que tentarão explorar seu servidor FTP. À medida que uma nova versão é lançada, você precisará atualizá-la, pois os hackers também leem as notas de lançamento.
Principalmente, você estará exposto a ferramentas automatizadas que tentarão adivinhar a senha ou explorar o vsftpd.
No que diz respeito ao bloqueio de IPs, seria melhor colocar endereços IP na lista de permissões do que bloquear, porque sua lista se expandirá rapidamente. Tenho monitorado principalmente para satisfazer minha curiosidade, mas o resultado é uma lista de bloqueios com 1,1 milhão de IPs bloqueados permanentemente.
Provavelmente não, esta não é uma tentativa de varredura/sondagem de hackers:
Percorrendo os IPs de origem registrados e fazendo pesquisas reversas de DNS neles (por exemplo
dig -x ip.addr.goes.here
), revela que a maioria dos IPs são resolvidos de volta para hosts que parecem fazer parte de grandes redes de scanner operadas por projetos legítimos fretados para verificar a Internet em busca de coisas que estão em execução e expostos, identificar se eles são vulneráveis a certas explorações e (supostamente) notificar os proprietários, se possível.A maior parte dessa atividade é provavelmente benigna, mas ficar de olho na origem dela é uma boa ideia.
Algumas das fontes que identifiquei até agora são:
Existem medidas proativas adicionais disponíveis para prevenir atividades maliciosas:
fail2ban
- bloqueia suspeitos de ataque após um número configurado de tentativas de login malsucedidas