Gracias al aporte de Paulino Calderon (@calderpwn) tenemos disponible desde hace unas horas un script para sumar a nuestra colección en nmap que nos permite con un solo comando escanear la red y descubrir aquellos equipos que podrían ser afectados por el último ransomware WannaCry.

Lo que hace este script es conectarse al $IPC y ejecutar una transacción sobre FID 0 para verificar el error “STATUS_INSUFF_SERVER_RESOURCES” y así determinar si el equipo fue parcheado o no contra MS17-010.

El único requerimiento (además de un nmap actualizado) es descargar el script de github y copiarlo al directorio /scripts

wget https://raw.githubusercontent.com/cldrn/nmap-nse-scripts/master/scripts/smb-vuln-ms17-010.nse
mv smb-vuln-ms17-010.nse /opt/nmap-7.40/scripts/
sudo ./nmap -sC -p445 --open --max-hostgroup 3 --script smb-vuln-ms17-010.nse 192.168.1.0/24

Un ejemplo de equipo vulnerable retornaría algo similar a:

Nmap scan report for 192.168.1.2
Host is up (0.00079s latency).
PORT    STATE SERVICE
445/tcp open  microsoft-ds
 
Host script results:
| smb-vuln-ms17-010: 
|   VULNERABLE:
|   Remote Code Execution vulnerability in Microsoft SMBv1 servers (ms17-010)
|     State: VULNERABLE
|     IDs:  CVE:CVE-2017-0143
|     Risk factor: HIGH
|       A critical remote code execution vulnerability exists in Microsoft SMBv1
|        servers (ms17-010).
|       
|     Disclosure date: 2017-03-14
|     References:
|       https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-0143
|       https://blogs.technet.microsoft.com/msrc/2017/05/12/customer-guidance-for-wannacrypt-attacks/
|_      https://technet.microsoft.com/en-us/library/security/ms17-010.aspx

Para solucionar esta vulnerabilidad debemos aplicar los parches que tan gentilmente nos ofrece Microsoft tanto para los sistemas mantenidos como para los XP y 2003.

Para Windows XP y 2003 descargar y aplicar los siguientes parches de seguridad (requiere reinicio)
https://blogs.technet.microsoft.com/msrc/2017/05/12/customer-guidance-for-wannacrypt-attacks/?utm_content=buffer8d9ab&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer

Para las versiones actuales de Windows descargar y aplicar los siguientes parches de seguridad (requiere reinicio)
https://technet.microsoft.com/en-us/library/security/ms17-010.aspx

Actualización:
Si cuando ejecutamos el escaneo obtenemos como respuesta es un error similar al siguiente:

NSE: smb-vuln-ms17-010 against 192.168.1.2 threw an error!
/usr/bin/../share/nmap/scripts/smb-vuln-ms17-010.nse:85: variable 'debug1' is not declared
stack traceback:
        [C]: in function 'error'
        /usr/bin/../share/nmap/nselib/strict.lua:80: in function '__index'
        /usr/bin/../share/nmap/scripts/smb-vuln-ms17-010.nse:85: in function 'check_ms17010'
        /usr/bin/../share/nmap/scripts/smb-vuln-ms17-010.nse:160: in function </usr/bin/../share/nmap/sc...

Es probable que necesitemos actualizar el nmap, tarea relativamente sencilla siguiendo estos pasos:

wget https://nmap.org/dist/nmap-7.40.tar.bz2
bzip2 -cd nmap-7.40.tar.bz2 | tar xvf -
cd nmap-7.40
./configure
make
sudo make install