quarta-feira, 23 de abril de 2008

DNS Recursivo aberto

Uma vulnerabilidade muito comum e que abre a possibilidade de alguns tipos de ataques DDos e alguns outros são as “DNS Recursivo Aberto” para consultas externas.

Abaixo estarei abordando este assunto informando sobre os riscos e como corrigir isso em seu servidor Web.


Possíveis Riscos com “DNS Recursivo Aberto”:

• Ser vítima de ataques de envenenamento de cache (cache poisoning), que levam o servidor
recursivo a armazenar informações forjadas. Tais informações podem ser usadas para comprometer
a segurança de clientes que façam consultas a esse servidor.
• Ter esse servidor abusado por atacantes e utilizado para desferir ataques de negação de serviço
distribuídos (DDoS), que podem implicar nas seguintes conseqüências:
– o grande número de consultas DNS forjadas recebidas e, principalmente, a quantidade de
respostas grandes enviadas para a vítima, podem consumir uma quantidade considerável
de banda da rede com um servidor DNS recursivo aberto;
– dependendo do contrato do provedor de conectividade, a rede com o DNS aberto sendo
abusado pode ser co-responsabilizada em caso de ataque de negação de serviço contra
terceiros.
Para detalhes técnicos sobre este tipo de ataque, consulte a seção “Características do Ataque
de Negação de Serviço Abusando de Servidores DNS Recursivos Abertos”.
===============
***O texto acima (1.1 Possíveis Riscos) foi retirado do documento original escrito por
"Autores: Cristine Hoepers, Klaus Steding-Jessen, Nelson Murilo, Rafael R. Obelheiro"
Disponível para download em
http://www.cert.br/docs/whitepapers/dns-recursivo-aberto/
===============


Verificando e corrigindo "DNS Recursivo Aberto"
Para verificar se este é o caso , vá em

http://www.intodns.com e digite um domínio de seu servidor.

Se estiverem abertas, você irá ver um alerta em vermelho em "Recursive Queries"

———–

Para corrigir siga os passos abaixo:

Efetue login como root em seu servidor pleo SSH e edite o named:

pico /etc/named.conf

Procure por:

key "rndckey" {

};

Após este código acima de options { insira:

acl "trusted" {
xxx.xxx.xxx;
xxx.xxx.xxx;
xxx.xxx.xxx;
127.0.0.1
};

xxx são os números de seus servidores de DNS, geralmente definidos no arquivo /etc/nameserverips

Dentro de options { abaixo de

// query-source address * port 53;

coloque o seguinte:

version "Servidor DNS";

allow-recursion { trusted; };

allow-notify { trusted; };

allow-transfer { trusted; };

Salve e feche o editor ( ctrl+x e y)

Agora, reinicie seu servidor DNS

service named restart

**Se você utiliza um firewall, lembre-se de deixar aberta a porta 53 tanto para udp quanto para tcp.

Germano Ferreira

Administrador Linux- Top Hospedagem

Nenhum comentário: