Entradas populares

sábado, 12 de marzo de 2011

Next Generation Firewalls: Eligiendo el futuro

Hace ya un tiempo ví un artículo de Gartner haciendo referencia de los next generation firewalls y al principio pensé que era otro recurso marketiniano para denominar nuevas funcionalidades o roles de los Paloalto Networks. No obstante, el mercado ha reaccionado sacando producto al mercado confirmando la apuesta de Nir Zuk, el producto se llama Checkpoint Application Control Software Blade. Sí, podemos considerar que es la amenaza más seria de los PAN. En este sentido, y debido a la arquitectura distribuida y la política de precios de CP es caro y de momento poco madura.


 Pero, volviendo a lo que nos ocupa, podríamos establecer una ruta evolutiva de los firewalls, teniendo el primer gran salto que hubo. Sistemas multipropósito vs sistemas monopropósito Firewalls,  ¿qué es lo diferencia un firewall convencional de uno considerado de nueva generación?
Para conocer la respuesta, voy a contestar con otra pregunta: Que diferencia un linux con IPTABLES de un firewall? Las respuestas pueden ser múltiples, pero algunas serías:


  1. Iptables filtra tráfico de una dirección ip o red a otras IPs o redes en función del puerto(Capa 4). 
  2. Las reglas son unidireccionales, por lo que aquellas aplicaciones que aunque conocido el comportamiento, no funcionarían de no habilitar la regla que permita la respuesta del otro sistema.
  3. Solo aporta filtrado de conexiones hasta capa 4 (IP y puerto), no inspecciona el tráfico en búsqueda de virus, de malformaciones de paquetes, de utilización errónea del protocolo, no permite filtrar en función de categorización de URLS.
  4. Muchas veces los procesos de NAT no están soportados o están limitados en utilización.
  5. No implementa servicios adicionales perimetrales, como VPNs o QoS...etc
Y habría una larga lista de otras diferencias pero el resumen sería que es IPTABLES es una solución básica, no escalable e insuficiente en funcionalidades, teniendo en cuenta la evolución de las comunicaciones. Así que hasta ahora, se consideraba aceptable que:


  • Los firewalls actuales, requieren de un conocimiento previo de la red y luego se pueden personalizar para cumplir con su cometido.
  • Los firewalls actuales, han simplificado las reglas haciéndolas bidireccionales con la tecnología statefull. Algunos se basan el el puerto habilitado y otros inspeccionan los primeros bytes para identificar la aplicación, por ejemplo http.
  • Casi todos los firewalls actuales, incorporan algunas o todas estas funcionalidades auxiliares: firmas de IPS, control de uso de los protocolos mediante ALG, antivirus, categorización de URLs, protocolos de enrutamiento dinámico, antispam, VPNs IPSEc y SSL, QoS. En este caso se denominan Unified Thread Management.
  • Los UTM que han incorporado una serie de funcionalidades que permiten inspeccionar, filtrar, modificar los paquetes pero con un rendimiento pobre y lo que es peor, con limitaciones debido a los flujos de procesos que atraviesa el paquete para poder ser tratado. 
    • Si un UTM, tiene una regla que permite el tráfico http por el puerto 80 contra un servidor que tenemos en la DMZ. El flujo que tiene que seguir el paquete seria, primero entra en el proceso de ACLS, luego pasa al proceso de detección de aplicación, luego al proceso enforcement de protocolo, luego pasa al proceso de NAT con el que ha sido publicado el servidor, después se le aplica la limitación por cliente de QoS, y finalmente al de enrutado a la DMZ y switching para entregarlo al servidor.
    • Todo esto, debe ser procesasado, y el paquete reserva un espacio en memoria, por lo que los recursos del firewall UTM se ven rapidamente comprometidos y la latencia de entrega del paquete suele ser alta.
Bien, ahora ya hemos repasado todas las bondades de los cortafuegos actuales, pero entonces ¿qué más necesitamos en la securización de nuestras infraestructuras?


  1. Identificar las aplicaciones de forma fiable, de forma que no se puedan aplicar técnicas de ofuscación de IPs, de tunneling o enmascaramiento. Este es el principal problema de los actuales firewalls. Y por otra parte, que las reglas se creen en función de la aplicación, no en función de puertos como hasta ahora.
  2. Identificación de las personas detrás de las conexiones. De forma que podamos crear reglas inteligentes para un usuario móvil,o un usuario con múltiples dispositivos.
  3. Disponer de la foto en tiempo real de que tráfico tenemos en la red. Eso quiere decir disponer de un cuadro de mandos que nos diga, que aplicaciones se reparten el ancho de banda, que usuarios son los que están detrás, si mi red esta bajo ataque, que documentos están siendo intercambiados, tengo fuga de información sensible????
  4. A partir de información real del comportamiento de la red, filtrar por usuarios, por aplicaciones o por partes de las mismas. No solo por IP o puertos.
  5. Tener todas las respuestas, y un único punto donde mirar cuándo algo raro pasa. 
  6. Poder registrar y controlar la fuga de información para cualquier aplicación que pueda extraer estos datos. No solo web y correo. Por ejemplo, post en el Facebook, un tweet o un fichero intercambiado por skype.
  7. Poder tener activados todos los filtros del tráfico, sea antivirus, ALG o firmas de ataques.
  8. Poder hacer cumplir la utilización de los recursos de la empresa mediante filtrado en función de categorización de contenidos.
  9. Y hacer todo esto sin latencia, ni colapsos del sistema, y sin tener en cuenta las posibles incompatibilidades entre funcionalidades debidos a los flujos.
En resumen, los firewalls actuales tratan de controlar algo que no entienden. Vamos que sería como ponerse en una frontera y fiarte únicamente de los pasaportes que te entregan ya que no entiendes ni una palabra de las personas que cruzan. Por lo que los firewalls de nueva generación, primero entienden el porqué y el quien, lo analizan y después lo dejan pasar.
HTH
RobClav

sábado, 5 de marzo de 2011

OT:Buscando networkers freelance en Barcelona

Parece que últimamente hable mas de cosas prácticas que de teorías pero creo que todo puede ser de vuestro interés. Así que ahora, estamos buscando freelance para colaborar en proyectos a corto, medio y largo plazo. No es necesario tener exclusividad pero si un conocimiento equiparable al CCNP en alguno de   los siguientes ámbitos:

  • Switching, routing multifabricante o Cisco.
  • Seguridad, Firewalls de Paloalto, Netscreen o Junipers.
  • Wifi, no importa el fabricante.
  • Telefonia IP Cisco, Avaya o Asterisk.
 Podéis contactar con nosotros mediante el correo o via Linked-IN.
Robclav

sábado, 5 de febrero de 2011

Barcelona CCIE Rack Rental at 650€, sprintando antes del LAB

Ya tenemos aquí los routers y switches para la versión actual del CCIE:

CCIE Routing & Switching 4.0 

En concreto la arquitectura corresponde con  al material de estudio de Internetwork Expert, por lo que es 100% compatible con los labs incluyendo MPLS; IOS Firewall...etc Creo que también lo podemos ajustar al de IP EXPERT o el de MICRONICS con un poco de tiempo.


El rack esta compuesto de cartoce equipos, incluyendo el servidor de consolas. En concreto:
  • 1 x 1841 256D/64F; 2 Fast Ethernet Ports & 1 Serial Port  
  • 1 x 3725 256D/64F; 2 Fast Ethernet Ports & 2 Serial Ports  
  • 1 x 3725 256D/64F; 2 Fast Ethernet Ports & 2 Serial Ports  
  • 1 x 2620XM 128D/32F; 1 Fast Ethernet & 2 Serial Ports  
  • 1 x 2620XM 128D/32F; 1 Fast Ethernet & 2 Serial Ports  
  • 1 x 2611XM 128D/32F; 2 Fast Ethernet & 4 Serial Ports  
  • 1 x 2610 64D/16F; with 8 Serial Ports (NM-8A/S) (FRSwitch/BB1) 
  • 2 x 2500 16D/16F; used as BackBone (BB2 & BB3) 
  • 1 x 2511 Terminal Server; with 16 ASYNC Ports 
  • 4 x 3550 with the latest Layer 3 EMI IP Services IOS
  • Cables de interconexión:
    • 1 x Serial Cables 
    • 12 x CAT5 Straight Cables 
    • 18 x CAT5 Crossover Cables 
    • 14 x Power Cables 
    • 14 x Mounting Brackets Pairs 
    • 1 x Console Cable 
    • Cables for Terminal Server

Podéis alquilar el rack por 15 días consecutivos o por un mes entero.  El precio por 24h/15 días es de 350€ y de 650€ por 24h/mes. Sí, lo sabemos, estamos reventando el precio a la mitad pero solo tenemos un rack para compartir.
Por otra parte, si quieres tener un espacio en Barcelona para estudiar de lunes a domingo( 24 horas) en la misma sala que el rack de práctica lo puedes tener por 250€/mes. Si estas estudiando con un colega podéis compartir esa sala por el mismo precio, pero solo dispondréis de un rack de prácticas. Puedes ver que la sala de estudio está muy bien situada, con todo tipo de transporte y servicios en el centro de BCN:Kub solutions, Gran via 581 4C. Barcelona(España)  En breve colgaré fotos de la sala y su entorno.

Puedes probar el LAB dos horas de forma gratuita. De momento no he publicado el enlace pero puedes enviarme un correo a la cuenta de correo, o mediante mensajería del LinkedIN y te activo el acceso.

Paloalto user identification gathering information from E-directory and third-party LDAP

Hi Folks, these weeks I was working in a Paloalto Networks Firewall integration with E-Directory. In order to did that, Palaolto said to us, we must to upgrade the customer E-directory to higher release or forget it. The same answer for other LDAP connections. At this point, a friend of mine, David Rivas decided to create a Perl script to solve it, and IT WORKS GREAT!! So, all that you to do is:
  1. Save the scipt to a perl file(edirectory.pl for instance).
  2. Download the perl module. http://www.perl.org
  3. Download the PAN API for User-id identification from the PAN support site.
  4. Run both scripts, they will talk together.
  5. Check it at the paloalto using: show pan-agent or show user pan-agent statistics
  6. Write me a comment ;)
Obviously, you can find more info at: https://live.paloaltonetworks.com/thread/2175
You can find more information about David Rivas at 
http://es.linkedin.com/pub/david-rivas-cordero/21/694/664

BUT, if you need more help about this problem, don't hesitate to contact me. 
Robclav


# Created by David Rivas. Barcelona 2011
# Comments added by Robclav
#!/usr/bin/perl -w


use PAN::API;
use Net::LDAP;

#put the domain of e-directory
my $domain = "dominio";

#put the ip address of e-directory server
$ldap = Net::LDAP->new ( "192.168.1.1" ) or die "$@";

#put ldap credentials, user and password
$ldap->bind ( "cn=user,dc=$domain", password => "password", version => 3 );          # use for changes/edits

#this sub creates a LDAP search
sub LDAPsearch
        {
          my ($ldap,$searchString,$attrs,$base) = @_ ;
          if (!$base ) { $base = "dc=$domain"; }
          if (!$attrs ) { $attrs = ['cn','networkAddress' ]; }
          my $result = $ldap->search (
                base    => "$base",
                scope   => "sub",
                filter  => "$searchString",
                attrs   =>  $attrs
                );
        }
    my @Attrs = ();             
#you can consult all attributes using @Attrs instead of 'networkAddress'
my $attrs = ['cn', 'networkAddress' ];
#loop to check e-directory information every 20 seconds
while(1){
sleep 20;
my $result = LDAPsearch($ldap,"sn=*",$attrs);
        my $href = $result->as_struct;
        my @arrayOfDNs  = keys %$href ;
        foreach (@arrayOfDNs) {
           my $valref = $$href{$_};
           my @arrayOfAttrs = sort keys %$valref;
           my $attrName;

  my $userName ='';
  my $IPAddress= '';
  
           foreach $attrName (@arrayOfAttrs) {
             # skip any binary data:
             next if ( $attrName =~ /;binary$/ );
             # get the attribute value (pointer) using the
             # attribute name as the hash
             $attrVal =  @$valref{$attrName} ;
   #print " @$attrVal \n";
#print "$attrName \n";
$string = 'networkaddress';
if ($attrName eq $string) {
#print "\t $attrName: @$attrVal \n";
$network = "@$attrVal \n";
#printf "variable entera: $network \n";
($type,$rest) = split(/#/,$network);
#uncoment next line to debug the information obtained of e-directroy
#printf "Type: %d # Rest: %vd\n", $type, $rest;
if ($type==1 || $type==9) {
#change the substring values 2, and 4 to select correctly the bytes (substrng)
#that corresponds to the ipaddress
$addr = substr($rest,2,4);
#print "substring: $addr \n";
$ip_addr = sprintf("%vd\n", $addr);
#print "decoded ip: $ip_addr";
$networkAddress = $ip_addr;
$IPAddress = $networkAddress;
}
} else {
$user = "@$attrVal";
$userName = $user;
}
             }
 
#Only sends information of users that have networkAddress
#the users that are not logged would be excluded
if($IPAddress ne ''){
print "$userName $IPAddress \n";
#put the useridagent ip
$useridagent    = '192.168.1.2';
$useridapi      = PAN::API::UID->new($useridagent);
$useridapi->login("$domain"."\\"."$userName",$IPAddress);
}
  
         }

}

martes, 25 de enero de 2011

Out Of Topic: La Ley-mordaza-Sinde, Wikileaks, anonymous y Chaos Computer Club

Esto es un bloc de networking y de seguridad pero como se utiliza estos conocimientos también es importante. Primero de todo dejar claro que no pertenezco, ni represento a ninguna organización citada, ni realizo ni he realizado ninguna acción contraria a la ley.

Por una parte expresar mi opinión personal en contra de la ley-mordaza-SINDE en la que se autoriza a un grupúsculo opaco a decidir que web les gusta y que no les gusta. Vamos como la vieja censura, pero impuesta desde EEUU como desveló http://WIKILEAKS.org.

El problema de fondo, es que quiere organizar otra mafia del tipo SGAE http://www.publico.es/dinero/8605/sgae-la-punta-del-iceberg-de-un-entramado-societario, con la que nos da miedo hasta silbar en la ducha. 

Pero no todo son malas noticias, tenemos la demostración de una nueva forma de participación en el gobierno de los países,  desde las bases y no desde las jerarquías. Actualmente muchos partidos políticos tienen las manos atadas y dominados por los mercados.
Y, ¿quien nos dice la verdad? ¿Quién esta mostrando los hilos que mueven nuestras vidas? Ciudadanos globales de la red, que retiran la impunidad y muestran la verdadera cara de algunos políticos, organizaciones y gobiernos.
Y todo eso gracias al dominio de la seguridad en sistemas y comunicaciones de ciudadanos globales comprometidos con la verdad y la libertad de la información. Quiero dar las gracias desde este blog a los componentes de Wikileaks, Anonynous, Chaos computer club y todos los hackers que comparten sus conocimientos e información. Esto da sentido al esfuerzo de este blog y de otros similares.
Como siempre, pienso pensar desde el punto de vista ético servicios de protección contra las "manifestaciones" del Siglo XXI, sean DDOS (Distributed Denial of Service), data leaks o cualquier mecanismo de protesta digital contra algunas organizaciones, empresas o políticos claramente amorales.
Larga vida a la libertad digital
Robclav

viernes, 14 de enero de 2011

Donde esta el maldito debug en Paloalto Network????

Creo que no soy el único que sea preguntado como se activa y se ve el resultado del Debug en PALOALTO. Bien pues sin demasiados comentarios más os dejo el resumen de los comandos claves. Comentar que la forma de entenderlo es teniendo en mente los netscreen y su get dbug stream. También hay algunos comandos para ver los ficheros que hemos creado o como desactivar "Fast forwarding" de cara a procesar todos los paquetes y poder analizarlos.
Show debug PALO ALTO NETWORKS by RobClav

A partir de aquí es una copia de un documento de la red:


Turning off hardware acceleration to identify whether it's FPGA/NP issue or software issue (less common)
  • set session offload no" to turn off firewall hardware offload -
  • debug dataplane fpga set {sw_aho|sw_dfa|sw_dlp} yes" to turn off content match offload when hardware offlad is turned off,


Check resource-monitor to verify that dataplane is not overloaded.
  • debug dataplane show resource-monitor


Check data-plane health -  Also any error in:
  • less dp-log mprelay.log”

There are three main types of pcaps: 

1. Filter-pcap (a.k.a debug filter)
-  use to capture based upon src/destIP ,and src/dest port 
2.  Application-pcap
-  use to capture packets for a particular app-ID (use when appID detects traffic that is not that app)
3.  Unknown-pcap -  useforcapturingunknown-tcp,unknown-udp,unknown-p2p

  To configure: debug dataplane filter set
•  To confirm config: debug dataplane get
•  To view packets: view-pcap filter-pcap scp export filter
•  To clean up: delete debug-filter file
To list existing files:
  • view-pcap filter-pcap

To view in real-time the contents of a particular file, use the argument “follow yes”:

  To configure: set application dump on
•  To confirm config: debug dataplane show application setting
•  To view packets: view-pcap application-pcap scp export application from
•  To clean up: set application dump off delete pcap directory

First specify what you want to see: debug dataplane filter on debug dataplane filter set source x.x.x.x dest y.y.y.y
2. Now enable debugging: debug dataplane on debug
debug dataplane set flow basic
3. Generate traffic
4. To view output: tail follow yes dp-log pan_task*
5. To clean up:
debug dataplane off debug dataplane on error debug dataplane filter off

miércoles, 12 de enero de 2011

Aerohive, de la teoría a la práctica

Aerohive and the city 2010 by robclav
    Estos días estoy configurando los equipos de Aerohive en toda su grandeza. La verdad es que como todos los proyectos de wifi, existen fantasmas en zonas de cobertura, pero lo que hemos hecho con estos equipos solo se puede hacer con otros que valen 10 veces más.
   El resumen es sencillo, Wifi A+B+G+N para acceso y para establecer una red mallada entre edificios via WIFI MESH.
Las antenas utilizadas son las que el propio fabricante vende, de 3,3 Dbis, que son más que suficientes para la interconexión de los edificios y el acceso wifi de terminales móviles.
    En el caso de que la situación de los puntos de acceso sea muy elevado, se pueden sustituir por unas antenas de 9 Dbi 3x3 MIMO.  Estas lo que harían es mejorar la sensibilidad permitiendo acceso wifi para móviles a distancias inverosímiles.
Los propios Aerohives, permiten aplicar diferentes políticas y servicios accesorios en función de cada SSID. Por ejemplo, definir pool DHCP, medidas de seguridad como muchos firewall convencionales, mecanismos de autenticación, horarios de publicación de SSID...etc.
Aerohive 2010 + RobClav
Bien, además con el mantenimiento de los equipos se incluye una gestión online que se llama Hivemanager express que permite monitorizar la infraestructura y configurar el 80% de las funcionalidades.


Hasta aquí los aspectos positivos y diferenciales. Pero, ¿cuales son los aspectos a pulir de este fabricante norteamericano?
Pues para empezar, os recomiendo que por poco dinero más, elegir la versión no express de la gestión que incorpora localización y otros servicios premium.

Por otra parte hay que configurar QoS en la salida a Internet porque si los paquetes de CAPWAP (Protocolo de comunicación entre APs o entre APs y controladores) se pierden, la gestión muestra los puntos de acceso como caídos. Con este propósito, es mejor cambiar de UDP hacia TCP para eliminar falsos positivos.

En este camino de mejoras, remarcar que las cajas de exterior suministradas por el fabricante son extraordinarias, pero a veces innecesarias. Por lo que cuando se trate de un entorno controlado(Sin posible vandalismo) se pueden sustituir por otras cajas con menos protecciones. Se dice, se comenta, se rumorea que los siguientes AP de exterior ya vendrán rugorizados para evitar accesorios adicionales.

Conclusiones, que pese que hay cosas que se pueden y deben mejorar, es un producto que planta cara a soluciones WIMAX y otras soluciones WIFI MESH, y GANA.