martes, 29 de marzo de 2011

DNS Seguridad Basica


Cuando estuve trabajando bajo algunos servidores de DNS, encontré bastante documentación acerca de seguridad de ellos, algunos hablaban desde las versiones del servicio de bind, otros sobre dns poisoning, algunos mas sobre recursión, transferencia de zonas y un sin fin mas pero lo básico fue esto.

Cada una de estas opciones era completamente configurable y protegía en mayor medida al servidor en cuestión, nunca esta demás tener el servidor protegido a dejarlo con algunas puertas abiertas las cuales después podrían causar dolores de cabeza.

Toda esta documentación y configuración creo yo debería ser aplicada en los servidores y mas si estos servidores están en un ambiente de producción.

A que viene todo esto? Pues bien en algunos momentos libres te da por hacer algunas pruebas y ver si encuentras algún servidor DNS mal configurado para satisfacer tu curiosidad, y afortunadamente aveces tienes éxito.

Recuerdo que un día mi amigo Wicho, encontró que el DNS de su escuela, de paga pero para el, patito esta abierta la transferencia de DNS, y con esas zonas pudo encontrar un módem, router que utilizaban, entramos a la interfaz, y después las cosas se tornaron mas complicadas.

Pero vaya es de paga, no es ingeniería, no es muy reconocida, así que pues vamos a probar en mi anterior escuela, el IPN, digo es una de las escuelas publicas de México con mayor reconocimiento además la escuela ESCOM tiene el reconocimiento como la mejor institución de ISC del país, por lo tanto no debería existir ningún problema de este tipo, pero oh!! vaya sorpresas de la vida.

Quiero mencionar, que no soy ningún experto en seguridad pero hay cosas que son en extremo sencillas que deberían de ser cuidadas y mas aun en organizaciones tan grandes como estas donde si hay expertos y gente con mucho mucho talento.

Primeramente verifique que DNS usaba nuestro dominio querido: ipn.mx

~$: whois ipn.mx
Domain Name: ipn.mx



Created On: 30-abr-1995

Expiration Date: 29-abr-2013

Last Updated On: 01-nov-2009

Registrar: NIC Mexico

URL: http://www.nic.mx



Registrant:

Name: Instituto Politecnico Nacional

City: No hay informacion

State: Distrito Federal

Country: Mexico



Administrative Contact:

Name: Contacto NIC del IPN

City: Mexico

State: Distrito Federal

Country: Mexico



Technical Contact:

Name: Departamento de Conectividad del IPN

City: Mexico

State: Distrito Federal

Country: Mexico



Billing Contact:

Name: Contacto NIC del IPN

City: Mexico

State: Distrito Federal

Country: Mexico



Name Servers:

DNS: apollo.telecom.ipn.mx 148.204.103.2

DNS: godel.esfm.ipn.mx 148.204.102.3


Y encontramos que eran dos servidores DNS apollo.telecom.ipn.mx y godel.esfm.ipn.mx, estos dos, son los servidores DNS de toda la institución, es decir de todas las escuelas, centros de investigación, postgrados etc etc etc.

Debería ser obvio que tendrían que estar bien protegidos ya que si uno de ellos se cae o peor aun los dos lo hacen pues no habrá simplemente paginas de IPN disponibles por que nuestros navegadores no sabrán a que IP ir a hacer las peticiones.

Entonces empezamos el análisis de cada uno de ellos primero el DNS primario: apollo.telecom.ipn.mx

~$: nmap apollo.telecom.ipn.mx

Interesting ports on apollo.telecom.ipn.mx (148.204.103.2):

Not shown: 981 closed ports

PORT STATE SERVICE

21/tcp open ftp

22/tcp open ssh

23/tcp open telnet

25/tcp open smtp

53/tcp open domain

80/tcp open http

110/tcp open pop3

111/tcp open rpcbind

135/tcp filtered msrpc

139/tcp filtered netbios-ssn

143/tcp open imap

445/tcp filtered microsoft-ds

554/tcp open rtsp

593/tcp filtered http-rpc-epmap

873/tcp open rsync

993/tcp open imaps

995/tcp open pop3s

1755/tcp open wms

2049/tcp open nfs


o.O no puede ser el DNS maestro, también es un servidor web, ftp, de correo, nfs, y demas como pueden ver, perooooooo telnet? No puedo creer que tengan un servicio de telnet activo, deben restringirlo un poco no? Verifiquemos

~$: telnet apollo.telecom.ipn.mx

Trying 148.204.103.2...

Connected to apollo.telecom.ipn.mx (148.204.103.2).

Escape character is '^]'.



FreeBSD/i386 (apollo.telecom.ipn.mx) (ttyp0)



login: nomms

Password:

Login incorrect


Nooooo, si esta activo sin restricción, por lo menos no conocemos el password.

Pero bueno ya sabemos que es un freebsd, seguro google nos trae resultados, o peor aun algun gandul por alli pudiera hacer un tipo hombre en medio sniffear el telnet y cuando el incauto ponga su password sin cifrar pues tendremos acceso al servidor.

Pero no es el tema, lo que si, es como puede ser que este servidor tenga tantos servicios activos, peor aun sin restricciones mínimas como de IP por ejemplo, cualquiera puede entrar a los servicios, son tantos que en alguno seguro pasa algo malo si alguien lo propone.

Pero vayamos al DNS, ya que sabemos que ese es el servidor DNS de la institucion veamos que nos dice de la ESCOM o de cualquier otra.

~$:dig escom.ipn.mx @apollo.telecom.ipn.mx +short

148.204.58.240

~$:dig upiita.ipn.mx @apollo.telecom.ipn.mx +short

148.204.103.161



Bueno la IP nada del otro mundo, probemos la recursión, que es eso? Bueno la recursión en un DNS es si yo le pregunto algo y este no sabe de que estoy hablando y esta activa la recursión, como a mi me están preguntando voy y pregunto a quien si conoce y respondo, que perjuicios trae esto? Pues bien imaginen que miles de usuarios tienen configurado en sus maquinas que este servidor sea quien responda las peticiones de cualquier tipo, habría tanto trafico que si no es una maquina poderosa o un cluster podría morir, simplemente por tantas peticiones.

~$:dig facebook.com @apollo.telecom.ipn.mx


;; WARNING: recursion requested but not availabl


Perfecto por ese lado no tendremos problemas, como vemos esta desactivada esta, que sigue? Ha!! la version, si esta es menor a la 9, que dios nos libre, estamos en serios problemas.

~$:dig @apollo.telecom.ipn.mx version.bind chaos txt +short

"9.4.2"


9.4.2 sin broncas o tal vez si, mejor busco en google y me aseguro que si hay un bug, hacer lo necesario para que no tengamos problemas, o igual buscamos en google para causar problemas.

Ahora solo verificaremos la transferencia de zonas:

~$:dig escom.ipn.mx @apollo.telecom.ipn.mx axfr



; <<>> DiG 9.7.2-P3 <<>> escom.ipn.mx @apollo.telecom.ipn.mx axfr

;; global options: +cmd

escom.ipn.mx. 3600 IN SOA apollo.telecom.ipn.mx. hostmaster.telecom.ipn.mx. 2011032500 86400 3600 604800 172800

escom.ipn.mx. 3600 IN NS dns.math.cinvestav.mx.

escom.ipn.mx. 3600 IN NS godel.esfm.ipn.mx.

escom.ipn.mx. 3600 IN NS apollo.telecom.ipn.mx.

escom.ipn.mx. 3600 IN A 148.204.58.240

alebrige.escom.ipn.mx. 3600 IN A 148.204.58.231

www.biocomp.escom.ipn.mx. 3600 IN A 148.204.58.235

www.cisce.escom.ipn.mx. 3600 IN A 148.204.103.34

ciudadsegura.escom.ipn.mx. 3600 IN A 148.204.56.138

www.dsid.escom.ipn.mx. 3600 IN A 148.204.58.233

ipn-ave.escom.ipn.mx. 3600 IN A 148.204.58.234

isc.escom.ipn.mx. 3600 IN A 148.204.58.240

www.isc.escom.ipn.mx. 3600 IN A 148.204.58.240

k2k.escom.ipn.mx. 0 IN CNAME conocimiento.escom.ipn.mx.

knowledge.escom.ipn.mx. 0 IN CNAME conocimiento.escom.ipn.mx.

posgrado.escom.ipn.mx. 3600 IN A 148.204.58.238

www.saes.escom.ipn.mx. 3600 IN A 148.204.58.239

sepi.escom.ipn.mx. 3600 IN A 148.204.103.161

www.sepi.escom.ipn.mx. 3600 IN A 148.204.103.161

www.upis.escom.ipn.mx. 3600 IN A 148.204.58.235

www.escom.ipn.mx. 3600 IN A 148.204.103.161

escom.ipn.mx. 3600 IN SOA apollo.telecom.ipn.mx. hostmaster.telecom.ipn.mx. 2011032500 86400 3600 604800 172800

;; Query time: 145 msec

;; SERVER: 148.204.103.2#53(148.204.103.2)

;; WHEN: Tue Mar 29 12:52:24 2011

;; XFR size: 22 records (messages 1, bytes 604)


Noooo la transferencia si esta activa, no puede ser, lo mismo que mi amigo Wicho, ahora con tantos host podremos ir viendo que encontramos en cada uno, y ver que mas encontramos, si! ustedes pueden cambiar el comando y ver las zonas de sus respectivas escuelas, o mas aun ver host que no son de sus escuelas.

Bien y ahora que? Pues nada, ese es un problema, ya que como les comentaba, ahora conocemos de cierta manera que equipos tienen X cosa, por los puertos podemos identificar si es Windows, Linux, Unix de forma basica o rapida, o si tenemos mas conocimiento podemos emplear otras técnicas.

Pero bueno como es posible que los administradores tengan permitido la transferencia de zonas, mas aun como es posible que no sea un servidor dedicado para DNS, y peor aun como es posible que tenga telnet ¬¬.

Este post, no trata de que vayas y molestes al prójimo si no al contrario busques, encuentres e informes para evitar estos problemas, yo por mi parte ya les envié un correo, espero hagan caso.

Y el segundo DNS? Pues bien ya saben los principios chequenlo ustedes y si encuentran algo malo o tienen una sugerencia para el administrador haganla saber, lo unico que ganaran, es que seamos un poco menos ignorantes, y la conciencia tranquila.

3 comentarios:

Darth Walo dijo...

Pues esta chido, pero no me llego la info o pon un link

Unknown dijo...

recuerdo cuando husmemos en el servidor del simón bolivar

Unknown dijo...

Nahhhh...
jaja, da pena!

Publicar un comentario

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Walgreens Printable Coupons