SMB扫描,SMTP扫描
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的扫描以及理解还很浅显,后续会对此内容加深理解