Szarny.io

There should be one-- and preferably only one --obvious way to do it.

Metasploitのsmb_versionモジュールを使ってWindowsマシンを特定する

SMBとは

Server Message Block (SMB) は、主にWindowsで使用されているOSI参照モデル第7層アプリケーション層部分の独自通信プロトコルの総称。 LANを通じてファイル共有やプリンタ共有などの実現に使用される。


Server Message Block - Wikipediaより

実践

msfconsoleの起動

# msfconsole
msf > 

モジュールの検索

msf > search smb_version

Matching Modules
================
   Name                               Disclosure Date  Rank    Description
   ----                               ---------------  ----    -----------
   auxiliary/scanner/smb/smb_version                   normal  SMB Version Detection

モジュールの設定

msf > use scanner/smb/smb_version
msf auxiliary(smb_version) > show options

Module options (auxiliary/scanner/smb/smb_version):

   Name       Current Setting  Required  Description
   ----       ---------------  --------  -----------
   RHOSTS                      yes       The target address range or CIDR identifier
   SMBDomain  .                no        The Windows domain to use for authentication
   SMBPass                     no        The password for the specified username
   SMBUser                     no        The username to authenticate as
   THREADS    1                yes       The number of concurrent threads

msf auxiliary(smb_version) > set RHOSTS 192.168.0.3
RHOSTS => 192.168.0.3

実行と確認

msf auxiliary(smb_version) > run

[+] 192.168.0.3:445       - Host is running Windows 10 Home (build:XXXXX) (name:DESKTOP-XXXXXXX)
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed

sf auxiliary(smb_version) > hosts

Hosts

address      mac  name             os_name     os_flavor  os_sp  purpose  info  comments
-------      ---  ----             -------     ---------  -----  -------  ----  --------
127.0.0.1         localhost        Linux                  3.X    server         
192.168.0.3       DESKTOP-XXXXXXX  Windows 10  Home              client  

以上より,192.168.0.3にてWindows 10 Homeが動作していることが分かります.