SET 39 Call For Papers

¿Eres un hacker? Si deseas pasar a formar parte de la historia del hacking hispano, colabora con la próxima edición de SET 39 enviándonos un artículo. No esperes más, esta es tu oportunidad de demostrar lo que sabes. Ayúdanos a construir una revista de hackers para hackers. SET Staff

Firewalls y Proxys (y III)

      4363

Autor: Paseante
IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
o 11. FIREWALLS Y PROXYS (y III)                                            o
IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII


Finalizamos este cursillo sobre los firewalls en Saqueadores describiendo
el proceso de certificacion de seguridad de los mismos.
Estos tres textos han intentado dar una idea general acerca de los
firewalls y proxys y aunque no son el ultimo grito, hace casi un a€o que
los escribi, si que han permitido tocar un tema del que no se habia
comentado nada en Saqueadores hasta el momento.

La NCSA (no confundir ni con la NSA ni con la NASA!!) efectua unos test para
medir el grado de seguridad de los productos informaticos, al someter un
producto a esos test el fabricante se compromete a suministrar las siguientes
versiones del producto para su evaluacion, en las paginas de la NCSA se puede
consultar la lista actualizada de productos certificados y su nivel. Son los
famososo B1, C2 (no, no son carnets de conducir) que vienen a ofrecer un
estandar de lo que se puede esperar de seguridad en un producto.
En el mercado de la seguridad la "certificacion NCSA" es muy apreciada, el
orden de mayor a menor es el siguiente.

A1
B1
B2
B3
C1
C2
D

Todo lo que sea mayor que C1 es ya definitivamente "muy poco amigable", el
nivel A es directamente de "una mala leche del copon". De todas maneras la
mejor informacion sobre la NCSA y sus actividades esta en sus paginas web.

N --> National
C--> Computer
S--> Security
A--> Association

Y la direccion?. Buscadla!. No querreis todo masticado?

  
Si alguno lo recuerda dijimos que el dilema de la proteccion es no hacerse
tan agobiante que no permita el uso de la red a aquellos que estan
autorizados y que provea los servicios para los que ha sido creada, como:

Permitir a usuarios internos acceder a redes externas mediante Telnet, FTP,
WWW
Permitir acceso externo al servidor FTP y servidor WWW
Proveer un medio de enviar correo usando SMTP
Dar informacion DNS externa a los usuarios de la red protegida
Ofrecer visibilidad del DNS a la red exterior (solo la "puerta de entrada")

Pero ademas debe denegar el acceso a lo que no esta expresamente permitido
 

La NCSA no se ocupa solo de que un producto sea seguro sino que evalua tambien
su funcionalidad, en plain ASCII, evalua que sean no solo seguros sino
usables, una red invulnerable que no se pueda utilizar no tiene ningun valor.
Su test de seguridad se basa en realizar un estudio sobre la respuesta del
producto ante los ataques mas conocidos, comunes, frente a crashes, etc.
Prepararse que la lista que viene es peque€a. Esto es lo que ellos testean
para saber si merece el visto bueno o no (obviamente los test cambian con el
tiempo y dependen del producto, en este caso un firewall)


     Rlogin y Rsh Checks 
     HTTP Check 
     Check X Window System 
     Rexd Check 
     Wall Check 
     Admind Checks 
     NFS Export Checks 
     NFS Portmapper Export 
     Sendmail Check Aliases 
     Sendmail Check Wizard Backdoor 
     Sendmail Check Debug Mode 
     Sendmail Check Remote Execution 
     Sendmail Identd Bug 
     FTP Mkdir Checks 
     FTP Check CD Bug 
     FTP Check Site Exec 
     FTP Check Writeability of All File 
     IP Spoofing Options 
     Gateway Host 
     Socks Host 
     Reproduccion de Crashes 
     TFTP (Trivial File Transfer Protocol) Checks 
     Finger Checks 
     Rusers Checks 
     UUCP Check 
     Scan RPC/UDP 
     Selection_svc Checks 
     Boot Param Checks 
     SNMP Checks 
     NIS Checks 
     Rstat Checks 

Esta es una lista de comprobacion de bugs, fallos de configuracion/dise€o..
ampliamente conocidos y por lo tanto no seria tolerable que un sistema
que aspira a ser seguro los permitiese.
Para que no quede asi a "palo seco" explicare muy brevemente que se intenta
en cada prueba. (Lectura especialmente recomendada a aquellos que padecen
insomnio)



===================
Rlogin y Rsh Checks
===================

Tanto la fragilidad de Rlogin como Rsh dan a un intruso acceso directo al
servidor.
Rlogin afecta a sistemas AIX y Linux y permite a cualquier usuario efectuar
rlogin como root sin necesidad de password. Por lo tanto cualquiera podria
explotar este fallo ejecutando el siguiente comando:

rlogin victima.com -l -froot
Y a continuacion veria el banner del login y un shell.



==========
HTTP Check
==========

Esta opcion permite buscar el servidor HTTP en cada host. Si se encuentra el
servidor, Internet Scanner informa de la version en funcionamiento. Alguno
de los servidores httpd tienen fallas de seguridad que pueden permitir
ejecutar comandos de manera remota.

Aclaraciones de Paseante
------------------------------------------------------
Ironicamente el propio servidor desarrollado por la NCSA en su version 1.3
contenia notables "huecos".
-------------------------------------------------------


=====================
Check X Window System
=====================

Sirve para comprobar si se puede abrir un X display . Si es vulnerable un
intruso puede ejecutar comandos como cualquier usuario. En muchos casos un
usuario tiene xhost + lo que viene a significar que cualquiera tiene acceso
al X display.


==========
Rexd Check
==========

Comprueba si rexd se ejecuta, cuando lo hace en un sistema remoto cualquiera
con un programa que emule el comando 'on' puede obtener acceso al shell lo
que conlleva la via libre al fichero de claves entre otros.


==========
Wall Check
==========

Comprueba que el daemon del wall se ejecute, puede ocurrir que el daemon
permita dirigir datos a las terminales de los usuarios enga€andoles sobre la
proveniencia de los mismos.


=============
Admind Checks
=============

Testea que admind este en marcha. Por defecto admind se ejecuta como
inseguro lo que podria facilitar el acceso a un hacker.



=================
NFS Export Checks
=================

Nada que decir para aquellos que leyeron el articulo sobre SATAN en el
numero 9 de SET. Para los demas, el nombre es una ayuda y no cobramos por
la revista.



=====================
NFS Portmapper Export
=====================

Lo mismo que el anterior pero via el mapeador de puertos.
Para mas informacion sobre NFS en este mismo numero publicamos un
articulo sobre trafico NFS.



======================
Sendmail Check Aliases
======================

Comienza el show de fallos del sendmail. Busca uuencode y decode.



==============================
Sendmail Check Wizard Backdoor
==============================

Busca la backdoor wiz que se hallaba en antiguas versiones del sendmail.



==========================
Sendmail Check Debug Mode
==========================

Otro mas del sendmail!. Previene que la version del sendmail
autorice el modo "debug".



===============================
Sendmail Check Remote Execution
===============================

Y sigue la fiesta!!. Verifica que sendmail no admita
ejecucion remota de comandos.



===================
Sendmail Identd Bug
===================

Un intruso puede obtener acceso a traves de sendmail si usa identd para
encontrar usuarios remotos por el nombre. El intruso puede ejecutar entonces
comandos remotos en el sistema.



=================
FTP Mkdir Checks
=================

Comprueba que un intruso no pueda escribir en el directorio principal.



================
FTP Check CD Bug
================

Comprueba que no exista el bug que permite a un atacante conseguir
privilegios de root en la maquina.


===================
FTP Check Site Exec
===================

Esta prueba sirve para indicar si un intruso puede obtener acceso a la
maquina, si fuese asi implicaria que cualquiera podria ejecutar el shell
desde el puerto ftp como root.



===================================
FTP Check Writeability of All Files
===================================

Comprueba que un atacante no pueda sobreescribir los ficheros.



  *******************
*-IP Spoofing Options-*
  *******************


-- TCP Sequence Prediction --

Activa la prediccion de secuencia TCP para evitar que se haga "spoofing"
de maquinas autorizadas y con ello se obtenga acceso a la red.


-- Source Port --

Sirve para especificar el puerto desde que se intentara efectuar la conexion.
La mayoria de los firewalls estan configurados para permitir acceso a puertos
especificos y a traves de ellos ofrecer aplicaciones. Esto es un potencial
camino de entrada para hackers.
Por ejemplo, en muchos firewalls un puerto accesible es FTP-DATA (puerto 20).
Si ese puerto es escogido como source port todas las conexiones TCP seran
originadas desde ese puerto, si el firewall esta mal configurado se puede
sortearlo utilizando el puerto.


============
Gateway Host
============

Intenta sortear el firewall efectuando un re-rutado de paquetes, se "sacan"
los paquetes del camino del gateway o router para comprobar si el firewall
provee 'block source routing'.
Si no es asi se podria efectuar un 'source routing' a traves del gateway y
conectarse con una maquina insegura fuera del firewall.

[Cuanto mas lo leo menos me creo que lo vayais a entender ;>, intento decir
en plain ASCII que se trata de probar si se puede forzar a los paquetes a
seguir otro camino que el marcado por el firewall sin que este intervenga||
Asi esta mas claro!]


==========
Socks Host 
==========

Intenta conectar a traves del servicio de socks, si estos estan mal
configurados pueden permitir conexiones no deseadas a traves del gateway.



=======================
Reproduccion de Crashes
=======================

Se reproducen metodos que causan la detencion del sistema, un crash o
similares.
Por ejemplo: Satan-style scanning, 'stealth' scanning, UDP bomb check...

** Aclarar aqui que la guerra de stealth-anti stealth sigue su curso **

============================================
TFTP (Trivial File Transfer Protocol) Checks
============================================

Comprueba si se puede conseguir el ficheros de claves. Un TFTP
incorrectamente configurado ejecutandose en un host permite acceder a
cualquier fichero legible lo que puede incluir el fichero de claves.



=============
Finger Checks
=============

La NCSA ejecuta una busqueda finger de usuarios en el sistema lo que da
informacion sobre lo ocupado de la maquina, cuentas de login, informacion
sobre los otros usuarios...
Ello puede ser de utilidad a cualquiera que trate de comprometer la maquina.

NOTA: Ver el articulo sobre SATAN en SET 9 para ver hasta que punto es esto
cierto


=============
Rusers Checks
=============

Similar a la anterior, busca usuarios en el host remoto y facilita informacion
sobre quien usa el sistema y sobre posibles cuentas validas en el mismo.

NOTA: Idem que arriba.


==========
UUCP Check
==========

Verifica si es posible efectuar login mediante el servicio UUCP


============
Scan RPC/UDP
============

Efectua un escaneo de servicios RPC si el programa no puede encontrar el
mapeador de puertos. Normalmente el mapeador de puertos indica en que
puertos se hallan los servicios RPC. Sin embargo algunos mapeadores de
puertos bloquean esa informacion para que un intruso no pueda encontrarlos,
no obstante un escaneo puede detectar si alguna maquina esta ejecutando
servicios RPC que pueden ser potencialmente vulnerables.


====================
Selection_svc Checks
====================

Comprueba si se puede obtener el password por un atacante


=================
Boot Param Checks
=================

Comprueba la ejecucion de bootparam. Una maquina ejecutando bootparam es
como un servidor a clientes sin unidad de disco. Un problema con bootparam es
que si se esta ejecutando y alguien consigue adivinar que maquinas hacen de
cliente y servidor puede obtener DNS que le permita hacer un NIS para
conseguir el fichero de claves.


===========
SNMP Checks
===========

Chequea si SNMP se ejecuta. SNMP puede ser utilizado para recoger informacion
sobre el host donde se ejecuta si se utiliza con palabras"default"


==========
NIS Checks
==========

Comprueba que el fichero de passwords no sea obtenible via NIS


============
Rstat Checks
============

Cuando se ejecuta el daemon Rstat puede dar informacion sobre la
maquina a un atacante.


La obtencion de una certificacion NCSA no implica que el producto sea
invulnerable sino que cuando se instala y mantiene de acuerdo a las
instrucciones del fabricante protege la red frente a a la mayoria de ataques,
de nuevo es la incompetencia en su configuracion y la torpeza en su manejo lo
que puede provocar problemas de seguridad.
Por supuesto espero que nadie con afan de Capitan Trueno se lance a probar
los bugs de arriba en todos los ordenadores que encuentre porque se puede
encontrar con que no funcionen--> una perdida de tiempo
O que funcionen-->ordenador con escasa seguridad-->un gran problema si no
nos gusta la carcel.
Tened en cuenta que puesto que estos 'bugs/desconfiguraciones' son
ampliamente conocidos no cabe esperar que funcionen en ninguna red
medianamente bien administrada o que al menos utilice software de este siglo.

Espero que este articulo junto a los de los numeros 9 y 10 os hayan dado una
vision general de lo que es un firewall (sin bromear hay gente que los
confunde con el modem!!?) a aquellos que solo habian oido campanas hasta
ahora.
Por supuesto se podria escribir y profundizar muchisimo mas, hablar de
modelos concretos pero el que este interesado que busque, no pretendo
escribir una tesis doctoral sobre este tema :-)

                                                            

Eso es todo amigos.