Ir para conteúdo
  • Cadastre-se

correções Correções gesior/myacc + configurações + proteções (ddos?)


Posts Recomendados

  • FeeTads pinned this tópico
  • FeeTads featured this tópico
  • 1 month later...
  • Moderador
Em 14/04/2023 em 22:00, FeeTads disse:

Salve rapaziada do  TK e da comunidade de tibia Otserv.

Recentemente alguns invejosos estão atacando servidores (DDoS), bugando o guilds de varios sites (tirando o lider e membros), assim buga a guild e muita coisa no OT.
Eles vão até o teu servidor e se passam por "adm do deletebra", já ouvi a uns tempos algumas pessoas falando disso, mas como eu tinha contato isso caiu por terra facilmente, um deles foi o ADM brendo, dono do antigo strongerFusion, onde ele me contou toda essa história, essa foi a primeira vez que me foi relatado sobre isso, hoje vejo que está parecendo ser mais frequente.

Caso qualquer pessoa entre no seu OT se passando pelo ADM do deletebra, favor entrar em contato comigo via discord: FeeTads#0246 Te ajudarei a resolver problemas que eles exploram sem cobrar nada por isso, para provar que não necessito atacar outros OT's para ter algum publico. Já tenho em mente quem pode ser essas pessoas, caso alguém tenha numero de telefone, nome real, ou alguma informação a mais dessas pessoas atacando e se passando por mim ou meu sócio, favor enviar no discord, irei atrás de resolver isso.

Vou deixar aqui alguns tutoriais de coisas básicas para você conseguir proteger o seu site desses SQL injections, e mais algumas coisinhas, caso futuramente eu resolva outros bugs explorados, vou postar aqui as correções.


Configurando CloudFlare (SSL) E subDominio (sv.seuIP)
 

  Mostrar conteúdo oculto

Com certificado SSL e seu site estando proxiado, vc não sofrerá com ataques em site direto na porta 80

Primeiro de tudo, será necessário comprar o domínio do seu OT, sim, COMPRAR seu domínio. Não indico de forma alguma você usar no.ip para isso.
passo 1: há alguns sites para comprar o dominio tipo  a GoDaddy (eu acho a melhor), e HostGator.

Após a compra do seu dominio, entre no site da cloudflare: https://www.cloudflare.com/pt-br/ e crie sua conta, pode utilizar seu e-mail pessoal mesmo.

passo 2: Ao logar, na página inicial da CloudFlare, não haverá nada além da HOME, e ao lado o "+ Add Site"

passo 3: clique em "+ add site", ele pedirá o dominio do seu site (aquele comprado no passo 1).

passo 4: Aparecerá a tela de planos da CloudFlare, planos pagos, mas calma, roland a tela pra baixo, você verá que há um plano FREE: 
 
image.png

Clique no Free e depois confirme abaixo.

passo 5: Após isso aparecerá a parte de configurar o NAMESERVER, isso é necessário para deixar o DNS proxiado pela CloudFlare. Vá no site onde (onde vc comprou o dominio), e altere o DNS (nameserver 1 e nameserver2), para os respectivos mostrados na cloudflare.
 5.1 - 
image.png

 

Ficando o nameServer 1 e NameServer 2 do teu dominio assim:

WhatsApp Image 2023-04-14 at 20.31.58.jpeg

Salve e depois clique em "Check NameServers" la na cloudflare.
Pode ser que a cloudFlare demore alguns minutos para confirmar tudo e redirecionar. (faça isso sempre com seu OT fechado, pois se estiver aberto já com players pode haver problema na conexão.)

Passo 6: Ao confirmar, está quase tudo ponto, agora é necessário configurar o DNS pela cloudflare.
    Após a cloudflare confirmar tudo, volte para a home, provavelmente seu dominio estará lá:
 img4.png
   

Clique nele e depois na barra lateral procure por DNS.

image.png

Agora vamos configurar seu subdominio e deixar seu site com SSL tudo certinho:
img6.png

   Deixe seu DNS dessa maneira, com esses 3 registros apenas, caso haja outros você pode deixar ou excluir tanto faz, use o "+ Add Record" pra adicionar uma nova regra.

ATENÇÃO
seuDominio.com => meuot.com.br
sv => sub dominio => você pode colocar oq quiser (ot / serv / sv / tb ...) ele será usado para logar no seu OT
EXEMPLO:
ipchanger > sv.meuot.com.br

não será mais possível logar no ot sem o subdomínio pois seu domínio agora está proxiado pela cloudflare.
então caso seu OT ja esteja online, será necessário alterar aquele IP interno (8.6 classic ou no init.lua do OTC) e os players terão de baixar novamente o client.

ip numérico = 154.15.15.15(EXEMPLO) > esse é o ip numérico da sua máquina, ele eh o ipv4 padrão que você recebe do host em que comprou sua maquina.

DEIXE a parte "proxied" como na foto para os Cname e Domínio, e DEIXE "DNS ONLY" somente aonde estiver o seu subdomínio.

Feito isso só esperar propagar, isso pode levar alguns minutos até algumas horas, seja paciente.
Quando você entrar no seu site, verá que ele está seguro e com certificado SSL.
tipo assim:

img7.png

Após isso para que a pessoa não entre no site pelo (sv.seudominio.com.br) 
abra o index.php da pasta raiz (está dentro da pasta html)
 


if($_SERVER['HTTP_HOST'] == 'sv.seuDominio.com.br') {
	header("Location: https://seuDominio.com.br");
}
if($_SERVER['HTTP_HOST'] == 'IP NUMÉRICO') {
	header("Location: https://seuDominio.com.br");
}


Isso fará que quando a pessoa tente entrar no seu site usando meios não seguros (DNS only) ele redirecione pro seguro > proxiado pela cloudflare

_________________________________________________________________________________________________________________________________________


CORREÇÃO GUILDS.PHP / INJECTION SQL TIRANDO LIDER DA GUILD
 

  Mostrar conteúdo oculto

 @gesior postou essa correção recentemente, caso você goste da sua pagina de guilds.
LINK do post do gesior.
basicamente abra seu guilds.php e procure por:
 





if($guild->getName() == $player_to_change->getRank()->getGuild()->getName() || $guild_leader)

 e troque por:
 





if($guild->getName() == $player_to_change->getRank()->getGuild()->getName())


basicamente mesma coisa no myacc.
basta somente retirar aquele " || $guild_leader". que o problema estará resolvido.



---------------------------- MEU GUILDS.PHP --------------------------------
Vou deixar a minha page que eu arrumei e modifiquei/estilizei algumas coisas aqui
o Meu guilds.php utiliza também uma table extra na database, chamada "GuildMemberShip" que uso para fazer uma contagem de players online no look do player.





comandos 1:
CREATE TABLE `guild_membership` (
  `player_id` int(11) NOT NULL,
  `guild_id` int(11) NOT NULL,
  `rank_id` int(11) NOT NULL,
  `nick` varchar(15) NOT NULL DEFAULT ''
)
execute o comando 1 e depois
comando 2:
ALTER TABLE `guild_membership`
  ADD PRIMARY KEY (`player_id`),
  ADD KEY `guild_id` (`guild_id`),
  ADD KEY `rank_id` (`rank_id`);


isso criará a tabela guild_membership na sua database, que é usada pelo meu guilds.php
----------------

guilds.php
---------------
Provavelmente você precisará mexer em algumas fotos/botões que a page utiliza, pra isso você vai precisar saber usar o editor de html do próprio google, é bem facil até, caso você não saiba, procure por "button" dentro do arquivo, vc achará varias vezes ele mostrando o caminho da imagem.
ex:  style="background-image:url('.$layout_name.'/images/buttons/sbutton.gif)
Ou seja, ele está buscando pela imagem na pasta (o teu pode ser diferente) "html/layout/tibiacom/images/buttons" a imagem sbutton.gif, caso não existe, procure aonde existe uma imagem com esse nome no seu servidor e coloque dentro dessa pasta.


PROTEÇÕES PARA DIMINUIR EFEITOS DE DDoS
 

  Ocultar conteúdo

isso não significa que vai anular ataques DDoS (até pq isso é impossivel), mas são algumas medidas pra diminuir efeitos negativos disso.

resetar a porta 7171 de conexões após um ataque e diminui a quantidade de trafego/IP
 





sudo iptables -A INPUT -p tcp --syn --dport 7171:7172 -m connlimit --connlimit-above 10 --connlimit-mask 32 -j REJECT --reject-with tcp-reset
sudo iptables -A INPUT -p tcp --dport 7171:7172 -m state --state NEW -m hashlimit --hashlimit-mode srcip --hashlimit-above 40/min --hashlimit-burst 40 --hashlimit-name ots_conn_rate_min -j REJECT --reject-with tcp-reset
sudo iptables -A INPUT -p tcp --dport 7171:7172 -m state --state NEW -m hashlimit --hashlimit-mode srcip --hashlimit-above 2/sec --hashlimit-burst 2 --hashlimit-name ots_conn_rate_sec -j REJECT --reject-with tcp-reset


NÃO É NECESSÁRIO
Aumentar o numero de conexões máximas na porta 7171 pela maquina (pra aceitar mais que 1024 players) limite do linux
https://github.com/gesior/tutorials/blob/master/polish/konfiguracja-serwera-linux/8-konfiguracja-limitu-otwartych-plikow.md

use o tradutor caso queira entender melhor.

caso você use OVH

deixe o modo de mitigação ativa permanente isso fará com que o sistema da OVH fique procurando por DDoS sempre, o que diminui o tempo de ativação de até 60s da ovh, ou seja, tomar ataque por 60s enquanto ativa.

comandos no terminal:

Se você quiser alterar esta opção toda vez que o kernel estiver funcionando, você precisará alterá-la /etc/network/options definindo syncookies=yes. Isso terá efeito sempre /etc/init.d/networking que for executado (o que geralmente é feito no momento da inicialização), enquanto o seguinte terá um efeito único até a reinicialização, ou seja sempre utilizar esses comandos após religar a máquina:

echo "1" > /proc/sys/net/ipv4/tcp_syncookies (protege o seu sistema contra flood de pacotes syn)
 

net/ipv4/icmp_echo_ignore_all = 1 (comando para ignorar pings no server)

Nota: Certifique-se de que /etc/network/options tenha 'ip_forward=no'
echo "1" > /net/ipv4/conf/all/forwarding = 0
 

Descartar os pacotes SYN que não são recebidos:
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP

 

Descartar pacotes com fragmentos:
iptables -A INPUT -f -j DROP

 

Descartar pacotes mal criados XMAS:
iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP

 

Descartar pacotes nulos:
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP

iptables -A INPUT -p tcp --syn -m limit --limit 1/s --limit-burst 3 -j ACCEPT  (Isso limitará o número de conexões SYN que podem ser estabelecidas por segundo, evitando que um ataque de inundação de conexão sobrecarregue o sistema.)

 

 

 

Espero que isso ajude a muitos, a se prevenir de pessoas que tentam atacar OT's se passando por outros, ou até que vão la pedir pontos para jogar se não eles irão atacar, se prevenir de pessoas mal intencionadas.

PS: Caso você tenha no seu site a pagine "house" e "tickets" recomendo retirar do seu site, pois há maneira de injetar SQL por esses arquivos.
Vou postar em breve o tickets arrumado.

Boa sorte rapaziada, se cuidem, e caso alguém faça isso, por favor entre em contato comigo.

 

 

 

 

Parabéns por compartilhar! Espero que todos tenham conseguido melhorar a proteção de seus servidores.

A todos que quiserem se aprofundar ainda mais em como proteger-se de ddos, considere dar uma olhada aqui
[Linux] Proteção contra DDOS usando Módulo Dos_Evasive do Apache - Tutoriais Infraestrutura & Proteção - Tibia King - Tudo sobre Tibia, OTServ e Bots!
 

Participe da organização Open-Tibia.
Meus Perfils pessoais

Linkedin Rafhael Oliveira Tryber | XP Inc Github Rafhael Oliveira Tryber | XP Inc

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por Qwizer
      MercadoPago Checkout Transparente (CC)
       
      Abaixo Segue código PHP de pagamento via cartão de credito pelo mercado pago com retorno automático para quem quiser adaptar em seus sites ter uma direção de onde ir 
      testado em Znote e MyAcc.
       

       
       
      https://mega.nz/folder/m4QkWBLS#PIvJ_scVm7w8-5FLlStTHg  
    • Por Argona2509
      Boa tarde venho por aqui pedir ajuda estou com um problema no gesior para criar conta nao aparece vocacao e o nome Nadega Sample
       
       
    • Por Magato
      Galera, boa tarde a todos.
       
      Estou iniciando um servidor com o mapa Pbot e estou com dificuldades em encontrar um website para ele.
       
      Procurei na internet toda e não achei um link que me levasse ao download do Gesior Onix para pbot exclusivo (o link estava quebrado)
       
      Tentei utilizar o Gesior 2012 mas o layout do site e todas as funcionalidades estão bugadas.
       
      Gostaria que alguém pudesse me ajudar e postasse aqui algum link de gesior para PBOT. A versão do meu servidor é 8.60.
       
      Agradeço a quem puder.
       
       
    • Por BonasxD
      Bom galera primeiramente não sei se estou na area correta ou se nao estou, se nao por favor mover para area certa, grato!
      Estou com esse erro ao tenta instalar o gesior usando a tfs 0.4 não passa dessa parte ja tentei de tudo e nao sei oque fazer ;(
       
      Testei o mesmo procedimento no meu Windows e Funcionou corretamente agora no meu VM(Ubuntu22) não passa desse erro. 
       
      Ja pesquisei por tudo e não sei oque fazer

    • Por Jordanl42ss
      Quando eu vou hospedar o site do meu poketibia ele da erro faldo q a classe do não foi encontrada 
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo