SMB協議(服務器消息塊)
nmap -v -p139,445 192.168.21.0/24 --open
-v 顯示詳細內容
--open顯示已經開啟的端口
但是單單依據139和445端口的開放,就確定是windows系統過於粗糙可以根據smb-os-discovery.nse腳本去搜查更詳細信息
nmap 192.168.21.129 -p139,445 --script=smb-os-discovery.nse

但是這里的掃描只是判斷某個主機是否開放某個端口,我們還需要指定某個端口的補丁是否完善
nmap -v -p 139,445 --script=smb-check-vulns --script-args=unsafe=1 1.1.1.1
smb-check-vuins 檢測弱點
--script-args=safe=1 指定參數,也可以指定unsafe
后面跟IP
但是這里會報錯
錯誤信息:NSE: failed to initialize the script engine:
/usr/bin/../share/nmap/nse_main.lua:801: ‘smb-check-vulns.nse’ did not match a category, filename, or directory
這是由於從NMAP 6.49beta6開始,smb-check-vulns.nse腳本被取消了。
它被分為smb-vuln-conficker、•smb-vuln-cve2009-3103、smb-vuln-ms06-025、smb-vuln-ms07-029、smb-vuln-regsvc-dos、smb-vuln-ms08-067這六個腳本。
用戶根據需要選擇對應的腳本。如果不確定執行哪一個,可以使用smb-vuln-*.nse來指定所有的腳本文件。
修改后為
nmap -v -p139,445 --script=smb-vuln-*.nse --script-args=unsafe=1 192.168.21.129

也可以掃描具體主機信息
enum4linux -a 192.168.21.129
SMTP協議
掃描的前提是我們已經做過端口掃描,確定某個機器的25端口打開
nmap
smtp.163.com -p25 --script=smtp-enum-users.nse --script-args=smtp-enum-
users.methods={VRFY}

這里沒有發現用戶,默認是用root賬號檢測
解釋:
--script=smtp-enum-users.nse 指定用枚舉的方式發現用戶
--script-args=smtp-enum-users.methods={VRFY} 指定用什么方式去枚舉用戶,這里用VRFY
這里對SMTP的掃描以及理解還很淺顯,后續會對此內容加深理解