Vulnerabilidade DDoS/Dados e medidas de segurança P2P em servidores Pvp Metin2
Os pontos mais visados dos servidores pvp Metin2 pelos ciberataques são as portas P2P (Peer-to-Peer) e as vulnerabilidades Dice. Ao utilizar estas vulnerabilidades, os atacantes podem fazer o downgrade dos canais de jogo (CH), bloquear o servidor ou conceder a si próprios permissões inválidas. Neste guia, compilámos os passos que precisa de seguir para garantir a segurança do seu servidor e evitar estes ataques.
1. Fecho de portas P2P para o exterior (medida mais crítica)
As portas P2P permitem que os canais de jogo troquem dados entre si. Se estas portas permanecerem abertas para o exterior, os atacantes poderão obter privilégios de administrador ou fechar os canais enviando comandos falsos para o servidor. Para a solução, deve ativar a firewall do FreeBSD (IPFW ou PF):
- o seu servidor com Filezilla
/etc/rc.confAbra o ficheiro e ative a firewall adicionando estas linhas:
firewall_enable="YES" firewall_script="/etc/ipfw.rules"
- Então
/etc/ipfw.rulesCrie um ficheiro chamado , permita as portas do jogo que precisam de ser abertas para o exterior (porta de entrada, portas CH), e escreva como está escrito nos seus ficheiros CONFIG. Portas P2P apenas em localhost (127.0.0.1) Adicione uma regra para ouvir.
2. Configuração de segurança P2P nos ficheiros CONFIG
Se não estiver a utilizar ficheiros de origem e as definições do ipfw forem complicadas, pode limitar as ligações P2P dentro do servidor apenas a partir do ficheiro CONFIG de cada canal:
/usr/game/cores/channel1/CONFIGAbra o ficheiro.- Adicione o seguinte comando na linha inferior do ficheiro:
bind_ip 127.0.0.1 - Graças a este comando, este canal rejeitará pedidos diretos de escuta de portas de redes externas. Repita este processo em todos os ficheiros CH, Auth e Game99 CONFIG.
3.º Desativando o comando de vulnerabilidade “Dados”
Na geração mais antiga ou em ficheiros não protegidos, os jogadores podiam fazer um loop no motor de jogo e eliminar o CH digitando um comando de dados específico (`/dice`) na linha de chat. Para colmatar esta lacuna:
- Se tiver o código-fonte,
cmd.cppAbra o ficheiro eACM(do_dice)excluindo a linha completamente ou começando//desative o comando completamente e volte a compilar a fonte. - Se não estiver a utilizar ficheiros de origem, pode descarregar um ficheiro do jogo missão (script Lua) Utilize filtros que expulsem automaticamente o jogador do jogo ou bloqueie a palavra quando a palavra "/dice" é mencionada na linha de chat que está a escrever.
Este artigo foi preparado especialmente para o PvPServer.