Ontem, notei uma atividade suspeita ao executar netstat | grep http
na minha VM do Azure Ubuntu:
Mais de 60 linhas foram assim:
tcp 0 0 ser:http hosted-by.blazing:29248 SYN_RECV
tcp 0 0 ser:http hosted-by.blazingf:59438 SYN_RECV
tcp 0 0 ser:http 8.8.8.8:7057 SYN_RECV
# [SNIP]
Eu estou supondo que este é um ataque de inundação SYN, e dada a presença de 8.8.8.8
possivelmente algum IP Spoofing? Eu não tenho nenhuma proteção DDOS do Azure, apenas uma VM Ubuntu padrão. Eu tentei algumas coisas:
Excluiu a linha net.ipv4.tcp_syncookies=1
em /etc/sysctl.conf
e executou sysctl -p
, mas os pacotes acima continuaram.
Eu já tenho meu próprio script iptables , para bloquear um pouco o servidor. Ao verificar este script, notei algumas linhas não relacionadas em /var/log/syslog
:
INFO Exception processing GoalState-related files: [ProtocolError]
[Wireserver Exception] [HttpError] [HTTP Failed]
GET http://168.63.129.16/machine/?comp=goalstate -- IOError
timed out -- 6 attempts made
Algumas investigações sobre este IP mostram que é parte da infra-estrutura do Azure , então fui em frente e adicionei isso ao meu script de firewall, para permitir o tráfego de saída para esse IP na porta 80.
De repente, o tráfego SYN anterior parou.
UPDATE
Ok, algumas investigação adicional mostram que o Azure fornece uma base nível de proteção DDOS:
Basic: Automatically enabled as part of the Azure platform. Always-on traffic monitoring, and real-time mitigation of common network-level attacks, provide the same defenses utilized by Microsoft’s online services. The entire scale of Azure’s global network can be used to distribute and mitigate attack traffic across regions. Protection is provided for IPv4 and IPv6 Azure public IP addresses.
Acho que minha pergunta agora, para alguém que saiba: permitir o tráfego HTTP de saída para 168.63.129.16
ser uma parte essencial dessa proteção e explicar o comportamento que eu já vi?