GO - Programando en Lenguaje Google

miércoles 11 de noviembre de 2009


Google ha decidido hacer sus pininos en los lenguajes de programacion y ha lanzado GO un lenguaje de programación experimental y completamente abierto que combina la seguridad y rendimiento de C++ con la velocidad de un lenguaje dinámico como Python.

El proyecto GO comenzó en el 2007 como uno de esos proyectos personales que hacen los empleados de google. Se presumen que el tiempo de ejecución de Go es cercano al de C y la compilación es casi instantánea. Al ser un lenguaje moderno Google implementó un soporte especial para procesadores de varios núcleos. Aunque el sistema esta pensado para ingenieros de Google esta liberado como un software de código abierto.

“Hemos encontrado algunos de estos problemas muy frustrante y decidimos que la única manera de hacerles frente es con un nuevo lenguaje”, dijo Rob Pike, uno de los ingenieros principales del proyecto Google Go.

Google sabe que no es un lenguaje para novatos. Aunque presume que su curva de aprendizaje es similar a la de JAVA.

Actualmente, el proyecto Go cuenta con el lenguaje propio de programación, compiladores y un paquete runtime con una serie de funciones incorporadas (mascota incluida).

Se espera que este nuevo lenguaje tenga una rápida adopción en la web. Para los ingenieros de Google las razones para crear GO se justifican en el hecho de que en aproximadamente 10 años no ha surgido un nuevo sistema de programación, pero en ese lapso de tiempo la nube computacional ha sufrido grandes cambios.

Con este nuevo Lenguaje de Google se espera que el desarrollo de software sea mucho más rápido, independiente, compatible con las tendencias de hardware más recientes. Sin duda es un proyecto por demas ambicioso y revolucionario ya que el objetivo principal es que Go sirva como lenguaje de programación de sistemas como C o C++. Estaremos muy al pendientes del recibimiento que la comunidad de programadores le de a este nuevo Lenguaje de Programacion.

Saludos y hasta la proxima




Sitios Relacionados

[1] The Go Programming Language (Sitio Oficial)
[2] Nuevo lenguaje de programación: Go - La Morsa
[3] Go, nuevo lenguaje de programación de Google

Leer más...

¿Cuanto Vales en Realidad?

miércoles 4 de noviembre de 2009


Hace un par de dias gracias a un tweet de @mechecostas di con esta interesante historia a modo de reflexion, la cual les quiero compartir. Sin más preámbulos los dejo con la misma.

Alfredo, con el rostro abatido de pesar se reúne con su amiga Marisa en un bar a tomar un café.

Deprimido descargó en ella sus angustias... que el trabajo, que el dinero, que la relación con su pareja, que su vocación... todo parecía estar mal en su vida.

Marisa introdujo la mano en su cartera, sacó un billete de 50 dólares y le dijo:

- Alfredo, quieres este billete?

Alfredo, un poco confundido al principio, inmediatamente le dijo:

- Claro Marisa... son 50 dólares, quién no los querría?

Entonces Marisa tomó el billete en uno de sus puños y lo arrugó hasta hacerlo un pequeño bollo. Mostrando la estrujada pelotita verde a Alfredo volvió a preguntarle:

- Y ahora igual lo quieres?

- Marisa, no sé qué pretendes con esto, pero siguen siendo 50 dólares, claro que los tomaré si me lo entregas.

Entonces Marisa desdobló el arrugado billete, lo tiró al piso y lo restregó con su pie en el suelo, levantándolo luego sucio y marcado.

- Lo sigues queriendo?

- Mira Marisa, sigo sin entender que pretendes, pero ese es un billete de 50 dólares y mientras no lo rompas conserva todo su valor...

- Entonces Alfredo, debes saber que aunque a veces algo no salga como quieres, aunque la vida te arrugue o pisotee sigues siendo tan valioso como siempre lo hayas sido... lo que debes preguntarte es ¿Cuanto Vales en Realidad? y no lo golpeado que puedas estar en un momento determinado.

Alfredo quedó mirando a Marisa sin atinar con palabra alguna mientras el impacto del mensaje penetraba profundamente en su cerebro.

Marisa puso el arrugado billete de su lado en la mesa y con una sonrisa cómplice agregó:

- Toma, guárdalo para que te recuerdes de esto cuando te sientas mal... pero me debes un billete nuevo de 50 dólares para poder usar con el próximo amigo que lo necesite!

Le dio un beso en la mejilla a Alfredo - quien aún no había pronunciado palabra - y levantándose de su silla se alejó con su atractivo andar con rumbo a la puerta.

Alfredo volvió a mirar el billete, sonrió, lo guardó en su billetera y dotado de una renovada energía llamó al mozo para pagar la cuenta...

Saludos y hasta la proxima

Leer más...

¿Cómo proteger mi red inalambrica?

jueves 29 de octubre de 2009


Antes de comenzar quiero mencionar que lo que se muestra aqui es netamente con fines didacticos. El objetivo de este post es aprender a mejorar la seguridad en nuestras instalaciones y redes inalambricas.

Con la proliferación de los routers inalámbricos de los proveedores de Internet se dan cada vez más casos de personas que detectan que les estan usurpando ancho de banda mediante conexiones fraudulentas a sus equipos.

Sobre la seguridad en Internet no acabaríamos nunca de hablar, ya que es un tema tan enormemente complejo y variado que no se puede simplificar. Pero me gustaría dar algunos consejos para que podamos protegernos.

En concreto, cuando hablamos de las conexiones inalambricas o WiFi estamos añadiendo un elemento de fragilidad en nuestro sistema. Un elemento que compromete nuestra seguridad. Ese elemento es el hecho de que alguien puede conectarse a nuestra red sin que le veamos, ya que estará usando la red sin hilos.

Aquí les pongo una relación de las distintas "protecciones" para la red inalámbrica, y su grado de efectividad.

Filtrado MAC

Por muchos considerado el mejor sistema de protección para accesos no deseados.

¿Qué es una dirección MAC (Media Access Control address)? Una MAC es una dirección física escrita en nuestro adaptador de red. Esa dirección debería ser única, e identifica el proveedor y otros datos como pueden ser el país de fabricación, el número de série, etc...

Tiene una ventaja respecto a la dirección IP. La dirección MAC es (en principio) inmutable.

El filtrado MAC impide la conexión al router a determinadas MACs. Normalmente se puede configurar de dos maneras:

1.- Denegar las MACs listadas (lista negra): con esa opción impedimos que se nos conecten algunas direcciones MAC que no queremos que usen nuestros sistemas.

2.- Aceptar sólo MACs listadas (lista blanca): con esa opción se impide el acceso a todo el mundo menos a las direcciones MAC listadas.

Mito: Es la forma más efectiva de impedir accesos no deseados.

Realidad: NO, es la PEOR de todas las protecciones.

Explicación: El filtrado MAC es equivalente a tener un portero en la entrada con una lista de nombres. El portero pregunta al cliente cuál es su nombre. Cuando el cliente le dice el nombre el portero mira la lista y si el cliente está permitido, le deja pasar. En caso contrario, le deniega la entrada.

A mucha gente le puede parecer el sistema más seguro, pero... y si les digo que la lista de gente admitida se puede saber con anterioridad?

No podemos saber quién está en la lista, pero sí quién ha entrado alguna vez, por lo tanto podemos modificar la MAC de nuestro adaptador para simular ser alguien que ya sabemos que ha podido acceder con anterioridad.

¿Es fácil de obtener esa lista? Es trivial, es tan simple que cualquier programa sniffer proporciona ese dato.

Conclusión: Es la peor de las protecciones, pues es de las más recomendadas y a la vez la más fácil de romper.


Ocultar SSID

El SSID es el identificador de nuestra red inalámbrica, para conectar a una red necesitamos especificar el SSID.

Mito: Ocultar dicha información dificulta el acceso a personas que no conocen el SSID por adelantado.

Realidad: NO, es de las protecciones más ridículas, el SSID se sigue transmitiendo.

Explicación: Desactivando la opción SSID broadcasting (u ocultación de SSID) sólo evita lo que se llama SSID beaconing en el punto de acceso.

Básicamente hay 5 mecanismos que envían el SSID haciendo broadcast, el SSID beaconing es sólo uno de ellos. Por lo tanto esa opción sólo evita que el punto de acceso se vaya anunciando, pero cuando haya tráfico en dicha red el SSID se mostrará.

Sólo permanecerá el SSID oculto en caso de que nadie esté asociado ni realizando peticiones para asociarse a dicho punto de acceso.

Conclusión: No merece ni el click en la configuración del router para activarlo, es tan trivial que no merece la pena ocultar el SSID.

Además, más que una solución es un inconveniente. En caso de usar varios APs para permitir WiFi roaming los clientes pueden perder la conexión pensando que no encuentran el SSID. Además, dificulta la configuración, ya que algunos programas de configuración de red buscan los SSID en vez de preguntar por el nombre manualmente.


Desactivar DHCP

El DHCP es el protocolo de auto-configuración para los clientes de red. Permite que un cliente configure los DNS, gateway, IP, máscara de red y otros parámetros de configuración de forma automática.

Mito: Combinado con usar IPs poco frecuentes (por ejemplo un subrango de 172.16.0.0/12) dificulta al hacker para configurar la red.

Realidad: NO, es muy fácil descubrir qué IPs usan los clientes ya asociados y deducir la máscara de red y el gateway a partir de ahí.

Explicación: En las tramas IP se encapsulan las direcciones IP por lo que con un sniffer es muy simple ver qué IPs generan tráfico e incluso qué gateway utilizan.

Conclusión: No es una protección fiable para nada. El uso de DHCP facilita la configuración de los clientes y el desactivarlo suele ser una molestia mayor que la posible seguridad que ganemos.


WEP con claves de 128bits o más

La encriptación WEP (Wired Equivalent Privacy) es la primera implementación de seguridad para redes inalámbricas, ha demostrado ser muy poco segura y actualmente es posible romperla en minutos.

Mito: Usando WEP con claves largas (128bits, 256bits, ...) dificultan romper la encriptación.

Realidad: Usar claves WEP de más longitud retrasan pero no impiden romper la encriptación.

Explicación: WEP utiliza unos vectores de iniciación que se repiten con mayor o menor frecuencia. Las herramientas que se usan para hackear encriptación WEP generan tráfico expresamente para aumentar la repetición de los mismos vectores y permitir descubrir el password en pocos minutos.

Conclusión: Aún usando claves relativamente seguras los programas que se usan para hackear redes inalámbricas permiten inyectar tráfico que facilitan enormemente romper la encriptación, sea cual sea la longitud de las claves (y los vectores de iniciación).


WPA ó WPA2 (y variaciones)

WPA es la solución que salió tras el desastre de WEP. WPA corrige las deficiencias de su predecesor y permite configurar redes inalámbricas seguras que no pueden romperse fácilmente en cuestión de tiempo o de forma automática.

Mito: WPA y WPA2 son inexpugnables hasta la fecha.

Realidad: WPA (y WPA2) son protocolos mucho más seguros que WEP, no tienen fallos en el diseño y por lo tanto dificultan mucho hackear una red de ese tipo, pero no son invulnerables a los ataques de fuerza bruta.

Explicación: WPA elimina los defectos de WEP, usa un sistema de autenticación más complejo, usa cifrado RC4, añade verificación de integridad al mensaje, e incluye protecciones contra ataques de repetición.

Conclusión: WPA (y WPA2) es la mejor solución actualmente, pero no son inexpugnables.


¿Cómo proteger correctamente mi red inalambrica?

No hay receta para eso, en la seguridad informática siempre hay gente que buscará vulnerabilidades en los diseños. Por ejemplo, una vulnerabilidad en el algoritmo de cifrado RC4 o en el sistema TKIP podría perjudicar a WPA.

Actualmente el único ataque contra WPA es la fuerza bruta, lo que implica que sólo será realmente efectivo si el password que usamos está basado en diccionario o es muy simple.

Básicamente lo más aconsejable a día de hoy es hacer lo siguiente:

a) Usar WPA ó WPA2. WEP no es seguro ni puede hacerse seguro, de ningún modo. Yo mismo, para enseñarle a un amigo le peté su WEP de 128bits en 5 minutos, es terriblemente fácil.

b) Usar TKIP para WPA en caso de que esté disponible, ya que aumenta la seguridad WPA. Y si está disponible AES, mucho mejor.

c) Usar un password complejo, de más de 8 carácteres, mezcla de carácteres alfanuméricos y carácteres "raros", por ejemplo: X$gh98NjKX$qp.K8J7dfX.z/3

d) Cambiar el password de vez en cuando si es posible (por ejemplo, si hay pocos clientes).

e) Usar Windows XP SP1 (mínimo) o SP2 (mejor) o superior (eso incluye Linux) ya que el soporte WPA no está hasta el SP1, y está mejorado en SP2.

A todo esto me gustaria agregar que no hay que ponerse demasiado paranoicos por usar alguna de las protecciones antes expuestas, despues de todo siempre sera mejor implementar seguridad por minima que esta sea a no tener nada.

Saludos y hasta la proxima



[1] Original escrito por Paradox en OGame y replicado en Cientoseis.es

Leer más...

La Historia de Chico

lunes 26 de octubre de 2009


Catalina Valencia y Valeria Regazzoli cuentan La Historia de Chico, una historia escrita por Valeria que muestra en muchas formas cómo nosotros mismos somos ese Chico.

Creer en nosotros mismos es la clave, definir lo que queremos proyectar, tener claro a donde queremos llegar y no permitir el autosabotaje.

Proyectar confianza, y credibilidad es una forma que te ayudará a crear tu marca personal y a favorecer y obtener éxito en los negocios, en transmitir profesionalismo, con una identidad que te de prestigio y solidez. Tu Rostro y tu mirada permitirán que seas identificado por el mundo.

Saludos y hasta la proxima



Leer más...