Alterar o número da porta padrão realmente aumenta a segurança?

69

Tenho visto conselhos dizendo que você deve usar números de porta diferentes para aplicativos particulares (por exemplo, intranet, banco de dados privado, qualquer coisa que nenhum usuário externo use).

Não estou totalmente convencido de que possa melhorar a segurança porque

  1. Existem scanners de portas
  2. Se um aplicativo estiver vulnerável, ele permanecerá assim, independentemente do número da porta.

Perdi alguma coisa ou respondi minha própria pergunta?

Sam
fonte
30
Uma coisa que fiz foi usar certas portas padrão (por exemplo, porta SSH 22) como potes de mel. Qualquer pessoa que tente se conectar a essas portas será totalmente bloqueada por um xperíodo de tempo. Ele provou ser eficaz contra a varredura de portas. Obviamente, essa é apenas uma ferramenta na caixa de ferramentas de segurança.
Belmin Fernandez 28/09/11
A pergunta geral sobre segurança através da obscuridade é feita aqui: security.stackexchange.com/questions/2430/…
Tony Meyer
Bem, talvez um obstáculo para "script crianças"
Lukasz Madon
11
@BelminFernandez, "uma ferramenta na caixa de ferramentas de segurança" ? Não, isso é para reduzir a carga (desempenho) do servidor e não tem nada a ver com segurança além da mera ilusão. Em termos de segurança, é totalmente desnecessário se o servidor já estiver forte e se o servidor estiver vulnerável, não o tornará mais seguro.
Pacerier 8/16
@Pacerier, concordou que o esforço e o foco deveriam estar na implementação de práticas de segurança mais sólidas. No entanto, não há razão para que você não possa fazer as duas coisas.
Belmin Fernandez 8/16

Respostas:

68

Não fornece nenhuma defesa séria contra um ataque direcionado. Se o seu servidor estiver sendo direcionado, então, como você diz, eles farão uma varredura na porta e descobrirão onde estão suas portas.

No entanto, remover o SSH da porta padrão 22 impedirá alguns dos ataques de script infantil e não direcionados e amadores. Esses são usuários relativamente pouco sofisticados que estão usando scripts para varrer grandes blocos de endereços IP por vez, especificamente para verificar se a porta 22 está aberta e, quando encontrarem um, eles iniciarão algum tipo de ataque (força bruta, ataque de dicionário, etc). Se a sua máquina estiver nesse bloco de IPs que está sendo varrido e não estiver executando o SSH na porta 22, ela não responderá e, portanto, não aparecerá na lista de máquinas para o ataque deste script infantil. Portanto, existe alguma segurança de baixo nível fornecida, mas apenas para esse tipo de ataque oportunista.

A título de exemplo, se você tiver o registro de tempo no servidor (supondo que o SSH esteja na porta 22) e retire todas as tentativas únicas de SSH com falha que você puder. Em seguida, remova o SSH dessa porta, aguarde um pouco e faça o log diving novamente. Você, sem dúvida, encontrará menos ataques.

Eu costumava executar o Fail2Ban em um servidor público da web e era muito, muito óbvio quando mudei o SSH da porta 22. Ele cortou os ataques oportunistas em ordens de magnitude.

jdw
fonte
3
Acordado. Vi uma queda muito semelhante ao experimentar mover o SSH para uma porta não padrão. Felizmente, com a autenticação de senha desativada, é realmente um problema.
EEAA
3
Melhor resposta aqui até agora. Tudo se resume a quem está atacando. Certa vez, ajudei a administrar um sistema que foi atingido por um ataque de dia zero de um garoto de digitalização. Presumivelmente no MS-RDP, pois não tínhamos o IIS exposto pelo firewall. Nosso host não nos permitiu alterar a porta RDP (hospedagem gerenciada), então basicamente tivemos que ficar lá enquanto eles trabalhavam em um novo padrão para a filtragem IDS / IPS. Embora possa não ajudar tanto em servidores mais estabelecidos como o SSH que parecem ter menos problemas de segurança do que alguns produtos da Microsoft.
precisa saber é o seguinte
9
Definitivamente concordo. Segurança é tudo sobre camadas, e quanto mais você tem, mais seguro você é. Pode ser uma camada fraca, mas ainda assim uma camada. Contanto que não seja invocado apenas, ele pode aumentar a segurança.
Paul Kroon
11
Outro ponto para retirar o SSH da porta 22 é que uma grande quantidade de tentativas de SSH e serviços, já que o Fail2Ban às vezes pode ocupar um tempo valioso da CPU. Pode ser insignificante no hardware de primeira linha, mas alguns servidores mais antigos podem ter picos de CPU. Seu tempo de CPU, memória e largura de banda você pode usar para outras coisas.
Artifex
Fiz o mesmo com o RDP no Server 2003 - reduziu substancialmente a quantidade de entradas de autenticação com falha no Visualizador de Eventos.
Moshe
43

É muito útil manter os logs limpos.

Se houver falhas nas tentativas com o sshd em execução na porta 33201, você pode assumir com segurança que a pessoa está direcionando para você e você tem a opção de tomar as ações apropriadas, se desejar. Como entrar em contato com as autoridades, investigar quem pode ser essa pessoa ( fazendo referência cruzada com os IPs de seus usuários registrados ou o que for), etc.

Se você usar a porta padrão, será impossível saber se alguém está atacando você ou se são apenas idiotas aleatórios fazendo verificações aleatórias.

Thomas Bonini
fonte
8
distinção maravilhosa
ZJR
3
1 Este é o melhor argumento para alterar os números de porta que eu já ouvi e até agora a única coisa que poderia me seduzir para fazê-lo
squillman
2
+1 Este é um ótimo ponto. As ameaças direcionadas são muito mais perigosas que as probabilidades aleatórias (as crianças do script apenas passam para alvos mais fáceis se você tiver uma segurança decente). O invasor alvo pode saber muito mais sobre vulnerabilidades específicas ou mesmo padrões de senha. É bom ser capaz de reconhecer estes ataques fora do enxame de spam na porta 22.
Steven T. Snyder
11
Isto é falso. Vi pelo menos um servidor ser comprometido por uma varredura em uma porta SSH não padrão. Não há nenhuma razão inerente para que um invasor também não possa verificar outras portas.
Sven Slootweg
@SvenSlootweg, True, especialmente com os computadores cada vez mais rápidos e baratos, uma digitalização demorada 65535 vezes não é mais muito mais.
Pacerier 8/16
28

Não, não faz. Na verdade não. O termo para isso é Segurança por Obscuridade e não é uma prática confiável. Você está correto em ambos os seus pontos.

O Security by Obscurity, na melhor das hipóteses, impedirá as tentativas casuais de procurar por portas padrão, sabendo que em algum momento elas encontrarão alguém que deixou a porta da frente aberta. No entanto, se houver alguma ameaça séria que você enfrenta ao mudar a porta do deault, o processo inicial será mais lento, mas apenas marginalmente por causa do que você já apontou.

Faça um favor a si mesmo e deixe suas portas configuradas corretamente, mas tome as devidas precauções de travá-las com um firewall, autorizações, ACLs, etc.

squillman
fonte
17
A projeção de senhas (fortes) e criptografia para a idéia de segurança por obscuridade é um pouco de um trecho, na minha opinião humilde ...
squillman
5
Usando apenas 8 caracteres com o intervalo completo de caracteres alfabéticos e numéricos (e nem mesmo permitindo caracteres especiais), o número de combinações possíveis é 62 ^ 8 (218.340.105.584.896). O 65535 não está nem no mesmo universo que ele, mesmo ao empregar detectores de varredura de portas. Observe, estou descontando senhas fracas.
squillman
3
Mais uma vez , "não é como se a porta não padrão fosse todo o aparato de segurança". Cada pedacinho ajuda. É um ajuste de 10 segundos que, se nada mais, impedirá que seu servidor apareça para alguém que procura por SSH para começar a bater nas portas.
ceejayoz
8
Meh. Manter o controle de portas não padrão não vale a pena no meu livro. Concordo em discordar de qualquer pessoa ... Acrescentar contramedidas adicionais, além de alterar a porta, certamente faz parte da equação e prefiro deixar as coisas por conta das peças do quebra-cabeça.
squillman
6
Pelo que vi, as portas não padrão se tornaram bastante padrão. 2222 para ssh, 1080, 8080, 81, 82, 8088 para HTTP. Caso contrário, torna-se demasiado obscuro e você quer saber o que o serviço é na porta 7201 e por que você não pode se conectar a SSH em 7102.
BillThor
13

É um nível leve de obscuridade, mas não uma lombada significativa no caminho para invadir. É uma configuração mais difícil de suportar a longo prazo, pois tudo o que fala com esse serviço específico precisa ser informado sobre a porta diferente.

Era uma vez uma boa idéia para evitar worms de rede, pois eles tendiam a varrer apenas uma porta. No entanto, o tempo do verme que se multiplica rapidamente já passou.

sysadmin1138
fonte
2
+1 para problemas mais difíceis de configuração e suporte. Faz com que você perca tempo que poderia ser gasto em trancar a porta (em vez de ter que procurar onde a colocou em sua casa).
27611 Macke
12

Como outros já apontaram, alterar o número da porta não oferece muita segurança.

Gostaria de acrescentar que a alteração do número da porta pode realmente ser prejudicial à sua segurança.

Imagine o seguinte cenário simplificado. Um cracker verifica 100 hosts. Noventa e nove desses hosts têm serviços disponíveis nessas portas padrão:

Port    Service
22      SSH
80      HTTP
443     HTTPS

Mas há um host que se destaca da multidão, porque eles, o proprietário do sistema, tentaram ofuscar seus serviços.

Port    Service
2222    SSH
10080   HTTP
10443   HTTPS

Agora, isso pode ser interessante para um cracker, porque a verificação sugere duas coisas:

  1. O proprietário do host está tentando ocultar os números de porta em seu sistema. Talvez o proprietário pense que há algo valioso no sistema. Este pode não ser um sistema comum.
  2. Eles escolheram o método errado para proteger seu sistema. O administrador cometeu um erro ao acreditar na ofuscação da porta, o que indica que eles podem ser um administrador inexperiente. Talvez eles tenham usado ofuscação de porta no lugar de um firewall adequado ou de um IDS adequado. Eles também podem ter cometido outros erros de segurança e vulneráveis ​​a ataques de segurança adicionais. Vamos sondar um pouco mais agora, certo?

Se você fosse um cracker, escolheria dar uma olhada em um dos 99 hosts executando serviços padrão em portas padrão, ou em um host que esteja usando ofuscação de porta?

Stefan Lasiewski
fonte
14
Eu olhava para os 99 anfitriões, a menos que a experiência me ensinasse o contrário. Alguém que está movendo portas provavelmente tem mais chances de corrigir e proteger, se você me perguntar.
ceejayoz
4
Eu olhava para o 1 host que se destacava, com a chance de alguns PFY pensarem "Se eu mudar os números das portas, EU SOU INVINCÍVEL!" mas tem a senha raiz definida como "senha".
Andrew
3
@Ceejayoz, concordo completamente. Estou executando o SSH em 2222, sem valor de segurança, mas reduz o desempenho de scripts para crianças. Eu acho que é mais provável que eles também me ignorem, preocupados em mudar a porta, provavelmente tomaram outras medidas também. Obviamente não é toda a configuração padrão ...
Chris S
11
Entendo que nem todos concordam com a minha opinião. Mas, na minha experiência, havia muitos proprietários de sistemas que usariam ofuscação de porta, mas cometeriam erros como não atualizar o OpenSSH após a exposição de algumas vulnerabilidades críticas de segurança ou usariam chaves SSH não criptografadas de um sistema universitário compartilhado, etc. esses sistemas eram alvos interessantes.
Stefan Lasiewski
3
Por extensão: movendo-se para uma porta não padrão, é mais provável que você desencoraje as crianças de script, mas também é mais provável que intrigue um hacker experiente. O que implora a pergunta: por qual você tem mais medo de ser alvo?
tardate
9

Vou contra a tendência geral, pelo menos parcialmente.

Por si só , mudar para uma porta diferente pode levar alguns segundos enquanto é procurado, e, portanto, nada em termos reais. No entanto, se você combinar o uso de portas não padronizadas com medidas anti-portscan, isso poderá proporcionar um aumento realmente valioso na segurança.

Aqui está a situação que se aplica aos meus sistemas: Serviços não públicos são executados em portas não padrão. Qualquer tentativa de conexão com mais de duas portas a partir de um único endereço de origem, com ou sem êxito, dentro de um período especificado, resulta na queda de todo o tráfego dessa fonte.

Para vencer esse sistema, seria necessária sorte (atingir a porta correta antes de ser bloqueada) ou uma varredura distribuída, que aciona outras medidas, ou um tempo muito longo, que também seria percebido e acionado.

John Gardeniers
fonte
Combine isso com o argumento de Andreas Bonini sobre ataques direcionados e é um forte argumento para o uso de portas alternativas.
perfil completo de JivanAmara
5

Na minha opinião, mover a porta na qual um aplicativo é executado não aumenta a segurança - simplesmente pelo motivo de o mesmo aplicativo estar sendo executado (com os mesmos pontos fortes e fracos) apenas em uma porta diferente. Se o seu aplicativo tiver um ponto fraco, mover a porta que ele escuta para uma porta diferente não resolverá o problema. Pior, encoraja-o ativamente a NÃO lidar com a fraqueza, porque agora ela não está sendo constantemente pressionada pela verificação automatizada. Esconde o problema real, que é o problema que realmente deve ser resolvido.

Alguns exemplos:

  • "Limpa os logs" - Então você tem um problema de como está lidando com os logs.
  • "Reduz a sobrecarga da conexão" - a sobrecarga é insignificante (como a maioria das varreduras) ou você precisa de algum tipo de filtragem / mitigação de negação de serviço feita upstream
  • "Reduz a exposição do aplicativo" - Se o seu aplicativo não suporta a verificação e a exploração automatizadas, seu aplicativo tem sérias deficiências de segurança que precisam ser corrigidas (por exemplo, mantenha-o corrigido!).

A verdadeira questão é administrativa: as pessoas esperam que o SSH esteja em 22, o MSSQL em 1433 e assim por diante. Movê-los é mais uma camada de complexidade e documentação necessária. É muito chato sentar em uma rede e ter que usar o nmap apenas para descobrir para onde as coisas foram movidas. As adições à segurança são efêmeras, na melhor das hipóteses, e as desvantagens não são insignificantes. Não faça isso. Corrija o problema real.


fonte
2

Você está certo de que isso não trará muita segurança (como o intervalo de portas do servidor TCP possui apenas 16 bits de entropia), mas você pode fazê-lo por dois outros motivos:

  • como outros já disseram: invasores que tentam muitos logins podem sobrecarregar seus arquivos de log (mesmo que ataques de dicionário de um único IP possam ser bloqueados com fail2ban);
  • O SSH precisa de criptografia de chave pública para trocar chaves secretas para criar um túnel seguro (esta é uma operação cara que, em condições normais, não precisa ser feita com muita frequência); conexões SSH repetidas podem desperdiçar energia da CPU .

Observação: não estou dizendo que você deve alterar a porta do servidor. Estou apenas descrevendo razões razoáveis ​​(IMO) para alterar o número da porta.

Se você fizer isso, acho que precisará deixar claro para todos os outros administradores ou usuários que isso não deve ser considerado um recurso de segurança e que o número da porta usada não é sequer um segredo e que o descreve como um recurso de segurança que traz segurança real não é considerado um comportamento aceitável.

curiousguy
fonte
Os arquivos de log podem ser facilmente organizados com filtros adequados. Se você está falando sobre o desempenho do servidor devido à redução de logs, não estamos mais falando sobre segurança. O desempenho é um tópico completamente diferente.
Pacerier 8/16
Não quando o computador se torna inutilizável devido ao uso excessivo do disco.
curiousguy
Sim, isso é um problema de desempenho. O desempenho também é definitivamente importante, mas esse segmento específico está discutindo especificamente apenas sobre segurança. (Para fins desta discussão, apenas imagine que você é Google-size, e que o Google realmente quer esses dados para análise e / ou fins de venda.)
Pacerier
1

Eu posso ver uma situação hipotética em que haveria um potencial benefício de segurança na execução do seu sshd na porta alternativa. Isso seria no cenário em que uma vulnerabilidade remota trivialmente explorada é descoberta no software sshd que você está executando. Nesse cenário, executar o sshd em uma porta alternativa pode fornecer o tempo extra necessário para que você não seja um destino aleatório de drive-by.

Eu mesmo corro o sshd em uma porta alternativa em minhas máquinas particulares, mas isso é principalmente uma conveniência para manter a desorganização em /var/log/auth.log. Em um sistema multiusuário, eu realmente não considero que o pequeno benefício hipotético de segurança apresentado acima seja motivo suficiente para o incômodo extra causado pelo sshd não ser encontrado na parte padrão.

andol
fonte
O cenário só seria válida se todos os admin (s) absolutamente não tomar qualquer margem de manobra com este "tempo extra" que nunca para ir almoçar e etc.
Pacerier
1

Aumenta ligeiramente a segurança. Na medida em que o invasor que encontrou a porta aberta agora precisa descobrir o que está sendo executado na porta. Ainda não tendo acesso aos seus arquivos de configuração (ainda :-)), ele não tem idéia se a porta 12345 está executando http, sshd ou um dos milhares de outros serviços comuns, portanto, eles precisam fazer um trabalho extra para descobrir o que está sendo executado antes que possam ser seriamente. atacá-lo.

Também como outro pôster apontou, enquanto as tentativas de logon na porta 22 poderiam ser crianças sem roteiro, trojans zumbis ou mesmo usuários genuínos que digitaram incorretamente um endereço IP. É quase certo que uma tentativa de efetuar login na porta 12345 seja um usuário genuíno ou um invasor sério.

Outra estratégia é ter algumas portas de "armadilha de mel". Como nenhum usuário genuíno saberia sobre esses números de porta, qualquer tentativa de conexão deve ser considerada maliciosa e você pode bloquear / relatar o endereço IP incorreto automaticamente.

Há um caso especial em que o uso de um número de porta diferente definitivamente tornará seu sistema mais seguro. Se sua rede estiver executando um serviço público, como um servidor Web, mas também executando um servidor Web apenas para uso interno, você poderá absolutamente bloquear qualquer acesso externo executando um número de porta diferente e bloqueando qualquer acesso externo a essa porta.

user23523
fonte
O aumento de ~ 0,1% da segurança deve ser ponderado em relação à diminuição relevante da segurança , provavelmente resultando em uma perda líquida total de segurança, dependendo do caso de uso e do contexto.
Pacerier 8/16
0

Não por si só. No entanto, não usar a porta padrão para um aplicativo específico (por exemplo, SQL Server) forçará basicamente o invasor a verificar suas portas; esse comportamento pode ser detectado pelo firewall ou outras métricas de monitoramento e o IP do invasor bloqueado. Além disso, o "script kiddie" médio provavelmente será dissuadido quando a ferramenta simples ou o script de comando que eles estão usando não encontrar uma instância do servidor SQL na sua máquina (porque a ferramenta verifica apenas a porta padrão).

KeithS
fonte