| 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. |