Descrição
Protecao contra exploits de pacote num jar unico da 1.8 a 1.21. O plugin entra na conexao do jogador e barra o pacote ruim antes de o servidor tentar entender ele — que e exatamente onde o travamento acontece.
Duas camadas dentro da conexao
O plugin nao espera o evento do Bukkit: ele se coloca em dois pontos da propria conexao, e um deles vem antes de qualquer plugin do servidor poder ver o que chegou.
- Camada de bytes — fica antes do decodificador do servidor e ve o pacote ainda cru. E ela que barra o pacote gigante, a enxurrada e o consumo de banda. Como nao depende do formato interno do pacote, vale igual em qualquer versao.
- Camada de pacotes — fica logo antes do servidor e ve o pacote ja montado. E ela que analisa itens, NBT, janelas, livros e movimento. O que ela cancela o servidor nunca chega a processar — nao e um evento cancelado depois, e um pacote que deixou de existir.
A protecao comeca no aperto de mao, nao no login: quem se conecta ja esta sendo lido desde o primeiro byte.
43 verificacoes, em 12 grupos
Cada uma liga e desliga sozinha, com limite proprio, VL, amortecedor e comandos de punicao no lugar de um chute fixo.
- rede — pacote maior do que o cliente consegue enviar e cabecalho fora do formato
- enxurrada — pacotes por segundo, limite por tipo de pacote, banda, pacotes grandes em sequencia, troca de slot e cliques de inventario
- janela — slot que nao existe, botao invalido, modo de clique invalido, clique em janela fechada e alteracoes de slot demais
- item — profundidade do NBT, itens por pacote, caracteres escondidos, nome e lore gigantes, JSON repetitivo, traducao e tecla, listas gigantes, itens dentro de itens, livro e cabeca inflada
- criativo — pacote de criativo fora do criativo, slot invalido, quantidade impossivel, item pesado demais, acao de clique escondida, encantamento e atributo absurdos, entidade guardada no item
- colocar — blocos por segundo, bloco colocado longe demais e posicao fora do mundo
- posicao — coordenada que nao e numero, movimento demais no mesmo tique, coordenada fora do mundo e salto impossivel
- carga — nome de canal invalido, mensagens demais, registro de canais inflado, carga gigante e canal proibido
- livro — paginas demais, pagina grande demais e livro grande demais
- tab — comando que trava o servidor pelo completar e texto de selecao
- comando — lista de comandos conhecidos por explorar falhas de outros plugins
- receita — identificador inventado e livro de receitas usado como enxurrada
Mecanicas que tambem derrubam servidor
Nem todo exploit chega por pacote torto. Estes vem de uma mecanica do jogo usada de um jeito que ninguem previu, e cada um ja foi problema real:
- Espera minima para reusar o portal do nether
- Teto de velocidade da flecha (o arco que mata de um tiro)
- Espera entre dois usos da tesoura
- Fechar o inventario ao quebrar bloco, que fecha a porta de varias duplicacoes
- Alcapao com trilho e comparador, o vaivem de redstone que nao termina
- Espera minima entre abrir dois bau
Alertas que dizem o que aconteceu
O alerta traz o jogador, a verificacao, o VL e, no hover, a descricao da regra e o que foi encontrado — o tamanho do pacote, a profundidade do NBT, o canal, o numero de paginas. Clicar sugere o comando de consulta daquele jogador.
- Alertas no jogo, no console e num arquivo por dia, com limpeza automatica depois do numero de dias que voce escolher.
- Envio para um canal do Discord, com o conteudo do embed montado por voce.
- Registrador de pacotes pesados para diagnostico: mostra qual pacote de qual jogador segurou a thread de rede.
Feito para nao atrapalhar o servidor honesto
- Amortecedor por verificacao: o tropeco isolado nao vira falha. So vira quando se repete.
- Modo impressora: servidor que libera mod de construcao em massa recebe rajada legitima de blocos. O plugin reconhece a rajada e afrouxa a contagem enquanto ela dura, em vez de voce ter que desligar a verificacao para todo mundo.
- Faixa mais tolerante para jogadores de Bedrock, que chegam com os pacotes traduzidos por um intermediario.
- Limpeza periodica de VL, para o jogador comum nao acumular falhas soltas ao longo de horas.
- Nada de disco ou rede na thread do servidor: alerta em arquivo e envio ao Discord saem por fila propria.
Compatibilidade
Um jar so, da 1.8 a 1.21, em Spigot, Paper e Purpur. Nenhum nome interno do servidor esta escrito no codigo: a leitura dos pacotes e feita por tipo e ordem de campo, e e isso que faz a mesma verificacao valer no servidor antigo e no novo, sem biblioteca de protocolo instalada junto.
Lançado em 25 de agosto de 2026
Atualizações
- Primeira versao.
Avaliações dos Usuários
e compre este plugin para deixar uma avaliação.