Por
Alejandro Franco : mail : info@datacraft.com.ar
Este artículo está dirigido a los usuarios
en general de Internet, y en especial a los webmasters.
No es una nota promoviendo el hacking de sitios web,
sino detallando las múltiples vías en
que es posible tomar por asalto a un sitio. Y, en general,
de cómo tomar precauciones al respecto.
Asaltando a un sitio web
Existen dos modos de asaltar a una pagina web : por
medios externos y por medios internos. Mientras que
los medios externos procuran romper códigos de
seguridad y acceder a sectores privados o restringidos
de una web, por los medios internos lo que se intenta
es directamente tomar el control del sitio y hacer con
él lo que se plazca. En todos los casos se trata
de explotar fallas de seguridad que van desde la protección
del servidor de hosting donde se aloja la página,
hasta errores de programación (y del lenguaje)
utilizado para diseñar el sitio.
Hackear una página web por medios externos no
precisa, necesariamente, poseer conocimientos especializados.
Basta con poseer el software apropiado. Generalmente
el objeto de este tipo de hacking son los sitios
adultos pagos, que le brindan a los usuarios que
abonaron el servicio una identificación y un
password. Pero existen muchos otros tipos de sitios
que utilizan dichas características : desde
bancos que le brindan acceso restringido a sus clientes
para operar, sitios web que brindan información
especializada o descarga de programas por pago previo
hasta incluso errores de programación en portales.
Este caso suele (o solía pasar) con los portales
construídos con PHP Nuke.
El PHP Nuke es básicamente un generador
de contenidos web; un portal prearmado, al cual el administrador
puede cambiar graficos y contenidos sin conocimientos
de html, y que es muy popular ya que es gratuito. El
problema es que para administrar el portal, el PHP
Nuke usa una interfase web que, mediante login y
password, se accede a la pagina donde se controla al
resto del sitio. Averiguando la URL de la página
que permite el acceso a la administración es
descubrir la puerta de acceso para controlar al sitio.
Solo resta hacerse con la id y la clave para controlar
el portal.
Cuando existe login y password de por medio, el medio
frecuente de forzar el acceso es por medio de los asaltantes
por fuerza bruta (brute force). Estos toman
bases de datos creadas por el usuario (o extraídas
de portales y foros de hackers, donde éstos publican
bases que hayan construido), las cargan en un programa
y las disparan contra el sitio a atacar (específicamente,
contra la url protegida que posee el acceso a los miembros),
el cual es un robot que prueba intensamente todas las
combinaciones posibles. Software de este tipo es el
Access Diver o el C-Force, los más
populares en su rubro, aunque existen otros. Y estos
programas permiten a su vez explotar el uso de proxys
intermediarios para camuflar el origen del ataque y
evitar represalias por los ISP o dueños de los
sitios atacados.
Esta clase de ataques no son generalmente dañinos,
exceptuando el caso de si se accede a un sitio donde
puedan manejar informacion vital que implique pérdidas
monetarias (p.ej. la cuenta de un usuario de un banco,
para realizar e-banking). Es castigable por ley, porque
de hecho es robo de un servicio pago, un fraude al titular
del sitio (accedemos gratis a contenidos pagos), pero
generalmente no suceden represalias ya que la cantidad
de ataques suele ser abismal y es imposible emprender
acciones legales contra multitudes de abusadores, además
de estar estos en numerosos países. En el caso
de sitios adultos y paginas de contenido restringido
(librerias on line, sitios pagos para ver videos, etc)
suelen optar por levantar sus niveles de seguridad.
Mientras que si el login / password está dirigido
desde el mismo hosting (restringiendo el acceso a carpetas
o directorios del mismo por el mismo sistema operativo
del server) es generalmente explotable, reemplazar
este sistema por una pagina web en PHP o ASP conectada
a una base de datos encriptada y con uso de cookies
y rastreo de IP autorizadas es totalmente efectivo e
inexpugnable. Pero muchas veces los programadores
suelen optar por los medios más sencillos y rápidos
para establecer la seguridad de un sitio, sin pensar
en las consecuencias.
El otro modo de acceder a un sitio restringido, es
creando una ilusión y engañando a los
mecanismos de seguridad. Esto se denomina spoofing
(o spoophing), y consiste en un navegador modificado
que le dice al server protegido que el navegante proviene
de una url autorizada y se encuentra ahora en una url
protegida. Como en Viaje a las Estrellas, el
usuario aparece teletransportado dentro de una sección
restringida del sitio, por engañar al server
diciéndole que ya pasó por la url que
pedía el login / password. Esto suele suceder
en sitios web que no utilizan cookies para validar a
los clientes - la seguridad está restringida
solo a la puerta de acceso y, pasada esta, es una web
normal sin normas de control -. El software utilizado
suele ser como el HyperSpoof o el ZSpoof,
fácilmente ubicables en foros de hackers, y que
poseen mecanismos de fuerza bruta; las bases de datos
que utilizan no son de login y password de usuarios,
sino de urls posibles (www.sitio.com/miembros, www.sitio.com/contenidos,
etc), y se dedica a probar con todas las variaciones
hasta obtener un resultado posible tanto de url de referencia
como de url de destino. El spoofing se da en sitios
con seguridad muy débil, y en contados casos.
Aún una seguridad de nivel medio o standard debería
impedir que el usuario pueda "spoofear" el
acceso e ingresar a los contenidos restringidos.
Otros métodos de acceder a un sitio
Existen otros medios que son más peligrosos que
un simple abuso de servicio, o de utilizar servicios pagos
de modo gratis. Es cuando directamente, se puede controlar
el contenido de un sitio web y hacer con él lo
que se plazca.
Increíblemente, un método para obtener
el control de un sitio es a través del mismísimo
Google. Muchos servers pueden proteger las secciones
restringidas de una web... pero no protegerse a sí
mismos. Y directorios sensibles del server están
a la vista, simplemente porque el robot de Google
(u otro buscador) ha accedido a ellos. Por ejemplo,
buscar expresiones como inurl:/cgi-bin/pass.txt,
filetype:pass pass intext:userid o allinurl:
admin mdb permiten acceder a los archivos de bases
de datos que contienen la lista de usuarios abonados
de un sitio... o la lista de passwords del administrador
del sitio o incluso del mismo server, si es compartido.
Tomando la base y probando el acceso FTP, puede ud.
aparecer de pronto en el mismo sitio web y, si desea,
borrarlo o cambiar sus contenidos, textos e imagenes.
En el caso de no obtener resultados en Google,
el acceso al control total se puede hacer por medio
de una conexión directa al servidor via Telnet.
Esta clase de accesos resultan mucho mas complejos y
precisan que el usuario sea especialista en sistemas
operativos. El hacker suele utilizar PCs con Linux
e intenta conectarse a los servidores (Linux
o Windows, aunque es reconocido que la seguridad
de los server Windows es más debil), y
acceder a los directorios restringidos que contienen
las bases de datos de administración. Y si bien
estas bases de datos suelen estar encriptadas, programas
como Jack The Ripper u otros permiten buscar
combinaciones que las revelen. Es una forma de asalto
muy compleja, mas esporádica y solo para especialistas.
Pero hay métodos muchos más simples,
hasta tontos, de acceder a contenidos restringidos o
de averiguar métodos de acceso :
1 - por la llamada ingeniería social :
básicamente, engañando al usuario / dueño
del sitio para que le revele de su propia boca el login
/ password. Esto es alarmantemente frecuente en las
cuentas de emails (hotmail, yahoo, etc.)
pero también puede utilizarse para obtener las
claves del FTP de un sitio. Básicamente lo que
se hace es obtener una cuenta de email con aspecto oficial
(por ejemplo, para embaucar a usuarios de hotmail, crear
una casilla tipo passwords@hotmail.com o robot@hotmail.com
... algo que parezca que proviene del webmaster del
sitio), y se envía un email a la victima ("nuestro
server ha detectado problemas... debido a cambiar de
servidor y al borrado del archivo de contraseñas...
se le pide que nos remita su login y pass para agendarlo
en la nueva base") para que el mismo responda
y le brinde voluntariamente dichos datos restringidos.
En el caso de sitios web, el hacker deberá simular
una casilla parecida al nombre del proveedor de hosting
(muchos soft de correo anonimo lo permiten), con una
casilla camuflada de respuesta. Y en el caso de hotmail
u otros servicios de correo gratuito, tanto el email
directo a la victima como publicar recetas magicas en
foros web dan una pavorosa multitud de resultados, con
miles de personas cayendo en la trampa (como, por ejemplo,
gente que desea espiar a su conyuge por supuesta infidelidad,
etc.). En estos casos, el mensaje es simple y tentador
: "hotmail posee una defecto en el robot que
devuelve las contraseñas a los usuarios que la
han perdido. Simplemente, para ud. espiar la casilla
de email de su conyuge debe enviar un email a robot@hotmail.com
- una obvia casilla falsa, pero que los usuarios
novatos no sospechan - con su login y clave actual,
y la casilla de correo que desea ud. acceder - la
de su conyuge -. Y el robot, por error, le reintegrará
un email con login y clave de dicha casilla".
De más está decir que la respuesta del
supuesto robot jamás llega, y usted termina por
darle su login y contraseña a un perfecto extraño..
2 - accediendo a las url de estadisticas de un
sitio : puede probarse con urls alternativas
donde pueden estar estadisticas de una pagina web. Cada
sitio web generalmente posee un servicio de estadisticas
para el webmaster (Webalizer, logs, etc.) que muchas
veces no están protegidas y se pueden acceder
de modo público (no figuran en buscadores pero
tampoco poseen protección), simplemente escribiendo
www.nombredelsitio.com/estadisticas o similares.
Y estas estadísticas, en el caso de que la web
tenga contenidos restringidos, suelen publicar las urls
del contenido privado en el historial... y muchas veces
se puede de este modo, capturar el login / pass de un
usuario legal, o bien entrar al sitio directamente (al
igual que el spoofing) o probando de spoofearlas, obviando
pasar por la pagina de control de seguridad.
No existe web imposible de hackear; sin embargo existen
webmasters perezosos que no siempre instalan los mejores
métodos de control y seguridad en sus sitios,
hallanándoles el camino a los asaltantes que
pululan en la red. Si estos se preocuparan a conciencia
sobre la seguridad de sus webs, los casos de hacking
serían muchos menos. Y al ser menos, sería
posible rastrearlos, castigarlos y combatirlos. |