[HOW TO]: IIS 7 como servidor de archivos

IIS 7+ como Servidor de Archivos

Eventualmente, puede que necesiten ofrecer descarga de archivos a través de su IIS.

A continuación detallaré los pasos a seguir para versiones 7+:

CREAR EL SITIO

Lo primero es tener el sitio web creado en IIS. Si aún no lo hicieron, háganlo. Puede usarse incluso el sitio web por defecto. Una vez tengan creado el sitio, hagan click derecho sobre el mismo y luego click en permisos. Aquí pueden agregar o quitar usuarios que pueden acceder.

CONFIGURAR ACCESO ANÓNIMO

IIS 7 Fileserver
Configurando autenticación

A continuación, podemos permitir o no acceso anónimo. Esto se logra de la siguiente manera:

  • Elijan el sitio en el panel de la izquierda.
  • En el panel derecho (panel central en realidad) hagan click en Autenticación, dentro de la sección “IIS”.
  • Si no ven las secciones, debajo de esa sección tiene 2 tabs. Elijan el tab Características.
  • Dentro de autenticación, pueden optar por habilitar autenticación básica. Necesitarán luego agregar cada usuario y configurar los permisos deseados para cada uno.
IIS 7 Fileserver
Configuración de Autenticación.

AGREGAR MIME TYPES

Finalmente, necesitamos agregar el MIME Type para cada extensión posible en los archivos a compartir. De esta manera fuerzan a que esas extensiones sean tratadas directamente como una en IISdescarga(Esto es opcional, depende de cada uno):

IIS 7 Fileserver
Configurando MIME TYPES
  • Elijan el sitio web en el panel izquierdo y busquen “MIME Types” en el sector central.
  • Hagan click en “Agregar”.
  • En el primer campo, pongan la extensión deseada, como por ejemplo .iso.
  • Por último, completen el campo MIME Type con file/download.
IIS Fileserver
Agregando MIME TYPES

Eso es todo, espero que les sirva. No dejen de comentar cualquier duda que tengan. Tal vez pueda ayudar.

REFERENCIAS DE MICROSOFT:

Artículo en technet(En inglés)

WordPress y los ataques XMLRPC

LA SEGURIDAD EN WORDPRESS

En este artículo voy a comentarles sobre uno de los ejemplos del por qué tu sitio o tu red, es tan seguro como el más débil de sus componentes. WordPress no es excepción a la regla.

Hasta hace pocos meses atrás, pensaba que tenía cubierta la seguridad básica de mi blog y que al menos haría falta algo de dedicación para hackearlo. Bueno, una vez más, está demostrado que el “a mi no me va a pasar” es el peor error en el que uno puede caer.

Lo bueno es que siempre presto atención a los reportes y cuando comencé a recibir montones de reportes indicando bloqueos por intentos fallidos, decidí dar una mirada a los logs. Allí me llamó la atención una gran cantidad de registros de queries “POST” al /xmlrpc.php.

Logs de ataque a WordPress via xmlrpc.php
Logs del servidor web. Tengan en cuenta que cada línea, puede implicar miles de intentos de contraseñas, por lo que el impacto puede ser mucho mayor de lo que uno creería.

QUÉ ES XMLRPC?

Hasta entonces, un completo desconocido para mi, xmlrpc.php resultó ser un protagonista de una vulnerabilidad bastante sencilla de explotar.

Ahora bien, se preguntarán, como yo me pregunté, para qué sirve este bendito archivo?

XMLRPC es un protocolo que funciona como API y permite llamadas remotas.  Algunos de los usos más comunes de esta funcionalidad es el poder postear a través de un mail o un cliente de blogging; también es usado por varias funcionalidades de Jetpack(probablemente el plugin más útil y utilizado, a la vez, de wordpress); también permite comunicación con otros blogs.

Pero esto no es todo. Una de las llamadas que permite el protocolo, habilita a cualquiera  a “multicalls”, o sea, a realicar múltiples consultas en una sola vez. La aplicación más importante es el poder intentar miles de contraseñas en una vez, acelerando y amplificando los ataques de fuerza bruta. Un efecto secundario, pero no por eso menor, es el elevado consumo de recursos que provoca en el servidor, pudiendo llegar a convertirse en un DoS(denegación de servicio, al mantener saturado al servidor y suficientemente ocupado como para que no alcance a atender las peticiones de usuarios reales).

CÓMO PROTEGERSE CONTRA ATAQUES XMLRPC

La segunda pregunta que lógicamente se estarán haciendo. Bueno, existen muchas maneras, todas consisten en el bloqueo o restricción del uso del xmlrpc.php.

  • XMLRPC ATTACKS BLOCKER

La mejor manera para esto, es simplemente,  a través de “XMLRPC Attacks Blocker”. Este plugin es gratuito y se puede descargar desde tu wordpress.  El mismo nos da opciones muy útiles. Podemos, por ejemplo, permitir el acceso al archivo a un usuario único y bloquear automáticamente cualquier IP que intente acceder al mismo.

El inconveniente de este método, es que desactivar el uso de este archivo provocaría que Jetpack y algunas otras funcionalidades se rompan.

La gran ventaja, la sencillez, cualquiera puede usar esta opción. Si les preocupa esta vulnerabilidad, o bien si sospechan que están explotando esta vulnerabilidad contra su sitio, debieran considerar evaluar las funciones que realmente necesitas de Jetpack y buscar la manera de reemplazarlas, en lo posible

  • JETPACK:

El mismo plugin permite proteger tu WordPress de abuso sobre xmlrpc.php. Desde la función protect se puede habilitar fácilmente defensa muy efectiva contra diversos ataques de fuerza bruta. A la vez, dicha funcionalidad incluye una “lista blanca” para permitir acceso a IPs específicas.(Vale aclarar que, en Argentina al menos, un 90% de los usuarios seguramente tienen IP dinámica, con lo cual esto no les servirá de mucho…)

Protect restringe el acceso a xmlrpc, reduciendo la vulnerabilidad de tu WordPress.
Protect restringe el acceso a xmlrpc, reduciendo la vulnerabilidad de tu WordPress. Aquí vemos la whitelist de Protect.
  • A TRAVÉS DE .HTACCESS:

Otra manera de protegerse consiste en bloquear el acceso a XMLRPC.PHP, a través del .htaccess.  Para ello sigan los siguientes pasos:

  • Edita el .htaccess, se encuentra en el raíz de tu sitio. Es posible hacerlo con el editor nativo que tienen los paneles de control, o bien pueden también descargarlo por ftp, editarlo con cualquier editor de texto y volver a subirlo. Si no sabés nada de código, es buena idea consultar a tu hosting o a un desarrollador. Inserta el siguiente código: RedirectMatch 403 /xmlrpc.php
  • Del mismo modo, editen el archivo functions.php del tema que estén usando(Si en algún momento cambian de tema, no olviden este paso. Agreguen el siguiente código:
    function removeHeadLinks() {
    remove_action(‘wp_head’, ‘rsd_link’);
    remove_action(‘wp_head’, ‘wlwmanifest_link’);
    }
    add_action(‘init’, ‘removeHeadLinks’);
  • MANUAL DESDE APACHE:

Este método implica acceso SSH, con lo cual no es una opción para cualquiera, pero si es su caso y tienen algunos conocimientos de Apache, solo necesitan agregar lo siguiente dentro del <VirtualHost> del sitio en cuestión: <VirtualHost>

<files xmlrpc.php>
order allow,deny
deny from all
</files>
</VirtualHost>

Espero este artículo les sea útil.  Tengan en cuenta finalmente que, en materia de seguridad, todo cambia todos los días, por lo que si conocen algún método fuera de los que hemos comentado, no duden en compartirlo!

REFERENCIAS:

Artículo de CloudFlare(En Inglés)

Artículo en Digital Ocean(En Inglés)

Adiós a otro grande de la música internacional

Ayer se supo que el genial David Bowie perdió la batalla contra el cáncer. David fue un impresionante y terriblemente prolífico autor, cantante, productor, pintor, actor, etc. Nos dejó un vastísimo legado de música de distintos géneros y estilos.

davidbowiefaces

David comenzó a incursionar en la música a principios de los ’60, pero no fue hasta 1969 que realmente saltó a la fama con su primer UK Singles top 5, “Space Oddity”. En 1975 tocó el top1 con Fame, que constituyó uno de los rotundos cambios de estilo que frecuentemente realizó a lo largo de su carrera.

Pero el éxito de David recién acababa de comenzar. Por nombrar algunos de sus momentos cumbres, menciono las colaboraciones con Brian Eno: “Low”, “Heroes” y “Lodger”(Todas en el top 5 de UK); el excelente “Under Pressure“, en colaboración con Queen, también top 1 y su inolvidable actuación en “Laberinto

David fue un innovador nato, pasando por estilos tan diversos como glam, soul, funk, rock, pop, new wave, electronic, alternative, and more.

Trabajó con algunos de los más grandes músicos de la historia, como, Queen,  Brian Eno, Iggy Pop, Annie Lennox, Tina Turner, Stevie Ray Vaughan, etc.

Les dejo una lista de todas sus apariciones en charts:

Fecha Title, Artist Mayor Puesto Semanas en el Chart
06.09.
1969
SPACE ODDITY DAVID BOWIE 5 14
24.06.
1972
STARMAN DAVID BOWIE 10 11
16.09.
1972
JOHN I’M ONLY DANCING DAVID BOWIE 12 10
09.12.
1972
THE JEAN GENIE DAVID BOWIE 2 13
14.04.
1973
DRIVE-IN SATURDAY DAVID BOWIE 3 10
30.06.
1973
LIFE ON MARS DAVID BOWIE 3 16
15.09.
1973
LAUGHING GNOME DAVID BOWIE 6 12
20.10.
1973
SORROW DAVID BOWIE 3 15
23.02.
1974
REBEL REBEL DAVID BOWIE 5 7
20.04.
1974
ROCK AND ROLL SUICIDE DAVID BOWIE 22 7
22.06.
1974
DIAMOND DOGS DAVID BOWIE 21 6
28.09.
1974
KNOCK ON WOOD DAVID BOWIE 10 6
01.03.
1975
YOUNG AMERICANS DAVID BOWIE 18 7
02.08.
1975
FAME DAVID BOWIE 17 8
11.10.
1975
SPACE ODDITY {1975} DAVID BOWIE 1 10
29.11.
1975
GOLDEN YEARS DAVID BOWIE 8 10
22.05.
1976
TVC 15 DAVID BOWIE 33 4
19.02.
1977
SOUND AND VISION DAVID BOWIE 3 11
15.10.
1977
HEROES DAVID BOWIE 24 8
21.01.
1978
BEAUTY AND THE BEAST DAVID BOWIE 39 3
02.12.
1978
BREAKING GLASS (EP) DAVID BOWIE 54 7
05.05.
1979
BOYS KEEP SWINGING DAVID BOWIE 7 10
21.07.
1979
DJ DAVID BOWIE 29 5
15.12.
1979
JOHN I’M ONLY DANCING (AGAIN) DAVID BOWIE 12 8
01.03.
1980
ALABAMA SONG DAVID BOWIE 23 5
16.08.
1980
ASHES TO ASHES DAVID BOWIE 1 10
01.11.
1980
FASHION DAVID BOWIE 5 12
10.01.
1981
SCARY MONSTERS (AND SUPER CREEPS) DAVID BOWIE 20 6
28.03.
1981
UP THE HILL BACKWARDS DAVID BOWIE 32 6
14.11.
1981
UNDER PRESSURE QUEEN AND DAVID BOWIE 1 11
28.11.
1981
WILD IS THE WIND DAVID BOWIE 24 10
06.03.
1982
BAAL’S HYMN (EP) DAVID BOWIE 29 5
10.04.
1982
CAT PEOPLE (PUTTING OUT FIRE) DAVID BOWIE 26 6
27.11.
1982
PEACE ON EARTH/LITTLE DRUMMER BOY DAVID BOWIE AND BING CROSBY 3 10
26.03.
1983
LET’S DANCE DAVID BOWIE 1 16
11.06.
1983
CHINA GIRL DAVID BOWIE 2 8
18.06.
1983
SPACE ODDITY {1983} DAVID BOWIE 85 3
18.06.
1983
THE JEAN GENIE {1983} DAVID BOWIE 98 2
25.06.
1983
LIFE ON MARS {1983} DAVID BOWIE 97 1
24.09.
1983
MODERN LOVE DAVID BOWIE 2 8
05.11.
1983
WHITE LIGHT/WHITE HEAT DAVID BOWIE 46 3
22.09.
1984
BLUE JEAN DAVID BOWIE 6 9
08.12.
1984
TONIGHT DAVID BOWIE 53 5
09.02.
1985
THIS IS NOT AMERICA DAVID BOWIE AND THE PAT METHENY GROUP
14 8
08.06.
1985
LOVING THE ALIEN DAVID BOWIE 19 9
07.09.
1985
DANCING IN THE STREET DAVID BOWIE AND MICK JAGGER 1 15
15.03.
1986
ABSOLUTE BEGINNERS DAVID BOWIE 2 9
21.06.
1986
UNDERGROUND DAVID BOWIE 21 7
08.11.
1986
WHEN THE WIND BLOWS DAVID BOWIE
44 4
04.04.
1987
DAY-IN DAY-OUT DAVID BOWIE 17 6
27.06.
1987
TIME WILL CRAWL DAVID BOWIE 33 4
29.08.
1987
NEVER LET ME DOWN DAVID BOWIE 34 6
07.04.
1990
FAME 90 (GASS MIX) DAVID BOWIE
28 4
22.08.
1992
REAL COOL WORLD DAVID BOWIE
53 1
27.03.
1993
JUMP THEY SAY DAVID BOWIE
9 6
12.06.
1993
BLACK TIE WHITE NOISE FT AL B SURE DAVID BOWIE
36 2
23.10.
1993
MIRACLE GOODNIGHT DAVID BOWIE
40 2
04.12.
1993
THE BUDDHA OF SUBURBIA DAVID BOWIE
35 3
23.09.
1995
THE HEARTS FILTHY LESSON DAVID BOWIE 35 2
02.12.
1995
STRANGERS WHEN WE MEET/THE MAN WHO… DAVID BOWIE 39 2
02.03.
1996
HALLO SPACEBOY DAVID BOWIE 12 4
16.11.
1996
TELLING LIES DAVID BOWIE
76 1
08.02.
1997
LITTLE WONDER DAVID BOWIE
14 3
26.04.
1997
DEAD MAN WALKING DAVID BOWIE 32 2
30.08.
1997
SEVEN YEARS IN TIBET DAVID BOWIE
61 2
21.02.
1998
I CAN’T READ DAVID BOWIE
73 2
02.10.
1999
THURSDAY’S CHILD DAVID BOWIE
16 5
18.12.
1999
UNDER PRESSURE QUEEN & DAVID BOWIE
14 9
05.02.
2000
SURVIVE DAVID BOWIE 28 2
29.07.
2000
SEVEN DAVID BOWIE
32 2
11.05.
2002
LOVING THE ALIEN SCUMFROG VS BOWIE
41 2
29.06.
2002
SLOW BURN DAVID BOWIE
94 1
28.09.
2002
EVERYONE SAYS HI DAVID BOWIE
20 3
12.07.
2003
JUST FOR ONE DAY (HEROES) DAVID GUETTA VS BOWIE
73 2
26.06.
2004
REBEL NEVER GETS OLD DAVID BOWIE
47 2
22.12.
2007
PEACE ON EARTH/LITTLE DRUMMER BOY BING CROSBY & DAVID BOWIE
73 2
19.01.
2013
WHERE ARE WE NOW DAVID BOWIE
6 2
29.11.
2014
SUE (OR IN A SEASON OF CRIME) DAVID BOWIE
81 1

 

Pueden ver la lista original, con más info, acá(en inglés)

Por último, les dejo el link del excelente video que hizo con David Guetta: Heroes

Clickjacking

Es probable que aún no hayan oido/leido de clickjacking. Por lo que voy a comenzar con una introducción:

Qué es clickjacking?

Muy probablemente, todos nos hemos encontrado con esto alguna vez en internet, sobre todo si queremos descargar algo de una página. Por ejemplo, el típico caso, buscamos descargar un programa y caemos en un sitio que no es el oficial. Vemos un botón “Download”(Descargar) grande, hermoso y pensamos que ahí se descarga… La inocencia te valga! En lugar de eso, se nos abre un número n de ventanas con publicidad. Probablemente hasta avisos porno. Pero claro! El botón legítimo de descarga, era uno chiquito más abajo de la pantalla. Toda una estafa no?

Hay sitios web que utilizan clicjacking intencionalmente para forzar al visitante a ver publicidad que les da ganancias, ya sea las necesarias para mantener el sitio web o bien para ganancia adicional. Este no es el peor caso, aunque crean que sí.

Puede pasar, que tengamos un sitio web para nuestro negocio. Un atacante hace un sitio web en blanco, probablemente con un dominio muy parecido al nuestro y solo le pone un botón, ya sea de descarga de algo, o de compra, o lo que sea. Ese botón lo sitúa, siguiendo nuestro ejemplo, en la cabecera del sitio, o sea en la parte de arriba.

Debajo de la cabecera utiliza una función para “llamar” a nuestro sitio, de manera que el resultado será una réplica de nuestro sitio, pero con el botón que el atacante puso arriba. A este botón, finalmente, puede hacerlo hacer lo que él quiera, literalmente. Desde descargar un programa  que es similar a lo que el visitante de nuestro sitio venía a buscar, pero probablemente infectado, hasta ejecutar peticiones  ocultas a otros sitios, utilizando al visitante(sin él saberlo) como máquina zombie en un ataque a mayor escala a otra víctima. Las posibilidades son muchas y variadas.

Obviamente que el atacante está utilizando nuestro sitio para engañar a la gente. Uno pensaría que esto no debiera ser posible, pero lo es. Hay buenas razones para usar este método para fines constructivos, como por ejemplo reutilizar una página en varios sitios. Y hay gente que sabe usarlo para sus propios fines no tan inocentes.

Vamos un poco más profundo:

Para quien tiene un servidor, deben saber que se pueden tomar medidas para proteger nuestros sitios de éste tipo de ataques, que se basan en el uso del header x-frame. Por lo tanto, la defensa se basa en restringir el uso de dicho header:

Dicho header tiene 3 opciones:

  • DENY: Es la mejor opción, siempre que sea posible. Si bien lo más común es que no haga falta permitirlo, hay situaciones en las que puede ser necesario permitir el header, para uso propio. Un caso común es el de incrustar partes de un sitio nuestro,  en otro sitio nuestro, o en el de un partner, por ejemplo.
  • SAMEORIGIN: Esta opción permite solo al propio sitio a hacer uso del header. En pocas palabras, solo se permite incrustar contenido de nuestro sitio, en páginas del mismo sitio.
  • ALLOW-FROM uri, Esta opción permite definir los sitios(las URLs mejor dicho, que pueden hacer uso de contenido de nuestro sitio. Actualmente, no todos los navegadores suportan esta opción y es importante saber que, en un navegador que no lo soporte, el comportamiento por defecto será simplemente un allow(O sea que será lo mismo a que no haya ningún parámetro).

Es importante también, saber que las opciones arriba expuestas fueron creadas en 2009, por lo que navegadores en versiones anteriores muy probablemente sean vulnerables a clickjacking.

Cómo implementar las opciones de x-frame:

IIS 7+:

Si bien esta no es la única defensa posible, voy a recomendarla y comentarla mejor, porque a mi juicio es la manera más sencilla(Y la que yo he utilizado por el momento.  las x-frame options se pueden definir a nivel de HTTP response header. En IIS 7 y superiores es muy sencillo de aplicar:

  • Abrir el IIS y elegir el servidor. Esto también se puede hacer a nivel de sitio, en lugar de a nivel global como estoy mostrando. El procedimiento es el mismo, solo que tenemos que elegir el sitio en particular.

    Clickjacking Defense IIS 7
    Pantalla principal de IIS 7
  • En el panel central, dentro de la sección IIS, podemos encontrar la opción HTTP response headers.

    Clickjacking Defense IIS 7
    La opción HTTP Resonse Header
  • Hacemos click en Add

    Clickjacking Defense IIS 7
    Hacemos click en Add
  • En Name, ponemos el nombre del header, en el caso de este artículo, es X-Frame.
  • Finalmente, en Value ponemos el valor que queramos aplicar.

    Clickjacking Defense IIS 7
    La opción Allow-From require que agreguemos URL

IIS 6:

En IIS también es sencillo, aunque no se puede hacer a nivel servidor, sino sitio por sitio. Los pasos son prácticamente los mismos pero cambia el lugar de las opciones:

Clickjacking Defense IIS 6
Elegimos el sitio y accedemos a sus propiedades.
Clickjacking Defense IIS 6
Elegimos el tab HTTP Headers
Clickjacking Defense IIS 6
Agregamos Name y Value, tal como en IIS 7

Apache:

Veamos ahora cómo proteger de clickjacking a nuestros sitios hosteados con apache.

En el caso de Apache, es bastante simple también. Solo basta acceder por SSH y editar el httpd.conf, agregar la línea:

Header always append X-Frame-Options SAMEORIGIN

y finalmente reiniciar apache.

En caso que no tengamos acceso SSH al servidor(Por ejemplo, en un servidor web compartido), pueden implementar el código en su archivo .htaccess. Edítenlo desde el administrador de archivos o via FTP y agreguen la siguiente línea:

Header append X-FRAME-OPTIONS "SAMEORIGIN"

Si quieren testear los cambios efectuados, pueden hacerlo de muchas maneras. Dos de las más sencillas:

  • Crear un nuevo archivo html que contenga código embebiendo el sitio supuestamente protegido. Pueden usar el siguiente código:
<html> 
  <head> 
    <title>Clickjack test page</title> 
  </head> 
  <body> 
    <p>Website is vulnerable to clickjacking!</p> 
    <iframe src="http://www.sitioprotegido.net" width="500" height="500"></iframe> 
  </body> 
</html>
Referencias:

Página en la wiki oficial de OWASP(en inglés)

Artículo de geekflare sobre cómo proteger servidores apache (en inglés)

 

Nuevo record para los DDoS

Qué son los DDoS?

Para el que no está en el tema, un ataque DDoS(Distributed Denial of Service) se basa en la saturación de un servicio, generando tráfico de dimensiones muy por encima de lo normal en un período reducido de tiempo. El término Distributed indica que, en lugar de usar algunos pocos equipos para enviar todo ese tráfico, se utilizan máquinas o redes infectadas de manera que estás, muchas veces sin saberlo, envíen tráfico a un destino específico.

Al recibir tantas conexiones simultáneamente, un servidor(muchas veces un servidor web que sirve un sitio web específico) está saturado y no logra atender conexiones de los visitantes “reales”. A veces incluso, una causa secundaria es que el servidor se sobrecarga tanto que deja de responder y hace falta reiniciarlo. Aún así, luego del reinicio las conexiones siguen llegando y saturan completamente la red, si no se toman las medidas adecuadas. Los ataques DDoS son una “evolución” de los ataques DoS, que muchas veces eran frenados fácilmente bloqueando algunas IPs de donde provenía el ataque. Pero en este caso, en cambio, se pueden utilizar incluso miles de equipos domésticos, por lo que no es tan sencillo de mitigar.

Batiendo récords

DDoS en 2015

El año pasado vio un ataque de dimensiones remarcables: 324GBps. Para darles una mínima idea, una conexión a internet doméstica en Argentina, ronda los 3 GBps..

DDoS en 2016

Sin embargo, a poco de estrenar el 2016, ya tenemos un nuevo récord mundial, 602GBps y lo recibió la BBC de Londres,, cuyo sitio quedó fuera de servicio por alrededor de 3 horas.

Los culpables parecen ser “New World Hacking Group”, responsables del ataque al sitio de la campaña política de Donald Trump. Los mismos alegaron al respecto, que no tuvieron un motivo real para este ataque y que se concentran en ISIS. Añadieron que el ataque a la BBC fue solamente con el fin de probar lo que pueden hacer.

Referencias:

Artículo de Arbor Networks sobre el mayor DDoS del 2015(En Inglés)

El mayor ataque DDoS de la historia hasta el momento, artículo en fossbytes(En inglés)

Good bye Ian

Powered by Debian

Ayer los medios hicieron pública la muerte de Ian Murdock, el genial fundador de Debian.

A través de su cuenta de twitter, había estado publicando acerca de su supuesta decisión de suicidarse. Todo esto bastante extraño.

Aquí pueden ver los últimos tweets de Ian, a través del caché de Google.

Desde este blog, humildemente me uno a la comunidad Debian en dar mis condolencias a su familia y amigos. Ojalá que salga a la luz lo que realmente sucedió y se logre atrapar a los culpables, si los hay.

No dejen de leer el artículo de Docker, excelente resumen de la genialidad de Ian y su trabajo y esfuerzos en pro del open source.:

http://blog.docker.com/2015/12/ian-murdock/

RIP Ian!

[BUG]: VirtualBox Kernel driver not installed

Un bug recurrente en VirtualBox

Más de una vez me ha pasado esto mismo. Cada vez que hay actualizaciones en el kernel de Ubuntu, mi máquina virtual Windows, en VirtualBox, deja de arrancar con un error “Kernel driver not installed (rc=-1908)”. Debo decir que la primera vez, un escalofrío recorrió mi cuerpo. La máquina virtual que uso para trabajar día a día… Ya no arrancaba más! Pero bueno, somos IT y tenemos que investigar todos los días un problema nuevo, verdad?

El error obtenido al intentar iniciar cualquiera de las Máquinas Virtuales en VirtualBox
El error obtenido al intentar iniciar cualquiera de las Máquinas Virtuales.

Se trata aparentemente de un bug bastante viejo y conocido, pero nunca corregido. Antes, se solucionaba corriendo sudo /etc/init.d/vboxdrv setup. Con systemd esto ya no funciona y de hecho, el mismo error indica que se ejecute:

sudo /sbin/vboxconfig

Error de VirtualBox al iniciar la VM
Este es el segundo error que muestra VirtualBox. No muy descriptivo, verdad?

Sin embargo, dicho comando no logra ningún cambio. Luego de horas y horas de incontables reportes y soluciones obsoletas, encontré la solución:

sudo /usr/lib/virtualbox/vboxdrv.sh setup

Si tenés alguna otra duda, o este método no te funciona, no dejes de comentarlo aquí! Tal vez pueda ayudarte a buscar una mejor solución.

 Fuente: Foro de Virtualbox(En Inglés)

 

Incompatibilidad de SQL Collation luego del upgrade a Jira 7

UPGRADE A JIRA 7 Y SQL COLLATION

El otro día me tocó hacer un upgrade a Jira 7 en un ambiente de desarrollo. Luego del upgrade, comenzamos a ver una advertencia acerca de la incompatibilidad de la DB actual, sugiriéndome que use un “Collation” soportado por ellos(El warning está en inglés, asique me pareció bien poner el término en inglés acá).

Qué es la collation de una Base de Datos? Tiene que ver con el set de caracteres soportados y, por lo que entiendo, define qué caracteres son permitidos y entendidos por la DB.

Ahora vamos al tema original. Por qué de repente ya “no le gusta” la Base de Datos a Jira? Según el equipo de soporte, esta incompatibilidad ya existía antes pero en Jira 7 agregaron una funcionalidad que revisa los logs y avisa activamente  de posibles problemas. Por lo que muy probablemente esta situación ya existía pero no lo habíamos notado.

EL ERROR DE SQL COLLATION

El warning  recomienda usar una de las collations soportadas. De acuerdo con la documentación provista:

We support ‘SQL_Latin1_General_CP437_CI_AI’ and ‘Latin1_General_CI_AI’ as case-insensitive, accent-insensitive, and language neutral collation types. If your SQL Server installation’s collation type settings have not been changed from their defaults, check the collation type settings.

Por lo tanto hará falta cambiar el collation a uno de esos dos. En mi caso, usamos SQL Server y, si bien ellos sugieren volver a crear una Base de Datos nueva y restaurarla, encontré una manera más sencilla aún. Simplemente hace falta abrir el Managemente Studio, buscar la Base de Datos; click derecho y luego propiedades. En propiedades, hay que elegir opciones, allí está la opción de cambiar la collation, solo hará falta buscar una de las dos soportadas y aplicarlo.

REFERENCIAS DE JIRA Y SQL SERVER

https://confluence.atlassian.com/adminjiraserver070/connecting-jira-applications-to-sql-server-2012-792297796.html

https://msdn.microsoft.com/en-AU/library/ms175835%28v=sql.110%29.aspx

Espero les sea de utilidad, he visto muchísima gente consultando este mismo problema. Si les ayuda a resolver su situación, agradecería que lo compartan o que comenten cualquier sugerencia o duda.

Troyano en Linux: Rekoobe

NUEVO TROYANO EN LINUX

Días atrás, La firma Anti-Virus Dr. Web publicaba en su blog el  descubrimiento de este troyano que afectaría a sistemas Linux.

El mismo fue originariamente enfocado en la arquitectura SPARC sin embargo, ya existe una nueva versión que apunta a equipos corriendo sobre procesadores Intel, tanto de 32 como de 64 bits.

Dr. Web afirma que el troyano es bastante simple, pero a la vez difícil de detectar, ya que encripta su archivo de configuración propio y es capaz de conectarse a un servidor remoto para recibir comandos y luego proceder a controlar el equipo. Además, toda la información intercambiada con el servidor de control remoto es dividida y encriptada también.

ALGUNOS DETALLES SOBRE EL FUNCIONAMIENTO DE REKOOBE

La compañía de seguridad incluye información adicional, como por ejemplo las firmas SHA-1 que usa el troyano para encriptar su comunicación al servidor remoto:

  • a11bda0acdb98972b3dec706d35f7fba59587f99 (SPARC)
  • 04f691e12af2818015a8ef68c6e80472ae404fec (SPARC)
  • 466d045c3db7c48b78c6bb95873b817161a96370 (SPARC)
  • cd274e6b73042856e9eec98d258a96cfbe637f6f (Intel x86)
  • 8e93cfbaaf7538f8965080d192df712988ccfc54 (Intel x86-64)

UBICACIONES DEL ARCHIVO DE CONFIGURACIÓN

  • /usr/lib/liboop-trl.so.0.0.0
  • /usr/lib/libhistory.so.5.7
  • /usr/lib/libsagented.so.1
  • /usr/lib/libXcurl
  • /usr/lib/llib-llgrpc

ESQUEMA DE LA CONFIGURACIÓN DE REKOOBE

Endpoint es el servidor remoto con el cuál se comunicará para recibir comandos y enviar información:

SECRET value
MAGIC value
PROXYHOST value
PROXYPORT value
USERNAME value
PASSWORD value
ENDPOINT value
SERVER_PORT value
CONNECT_BACK_DELAY value

Dr. Web no ha publicado detalles sobre cómo eliminar el troyano, aunque probablemente alcance con eliminar su archivo de configuración.

Fuente:

Noticia en el sitio de Dr. Web(en inglés)

 

Lluvia de Noviembre

freddiemercury

Un 24 de Noviembre de 1991, nos dejaba el grande, inigualable, líder de Queen. Dotado de una voz increíble y un registro amplísimo, Freddie fue irreemplazable tras su partida(aunque muchos, incluyéndome, esperábamos que el gran George Michael tomara su lugar).

Freddie-Mercury

freddiemercury_i-want-to-break-free-3

Freddie murió muy joven, a la edad de 45 años, víctima del SIDA, que le habría sido confirmado 4 años antes. Esto no impidió que Freddie fuera autor de una gran mayoría de los mayores éxitos de Queen, entre ellos Bohemian Rhapsody, We are the champions, Crazy little thing called love.

Sin dudas, el mundo perdió con Freddie a uno de los más grandes músicos que haya existido.

Les dejo un video sobre los últimos momentos de Freddie: https://www.youtube.com/watch?v=tahbqGPjovo