使用powershell搜索smb1的网络设备
将告诉我运行它的计算机是否正在运行smbv1 是否可以对其进行修改以在远程机器上运行?我有大约1000台服务器、6000台工作站和10000多台物联网/网络设备(尽管它们没有运行windows)使用powershell搜索smb1的网络设备,powershell,smb,Powershell,Smb,将告诉我运行它的计算机是否正在运行smbv1 是否可以对其进行修改以在远程机器上运行?我有大约1000台服务器、6000台工作站和10000多台物联网/网络设备(尽管它们没有运行windows) 我知道包捕获是一种典型的方法,但是我并没有一个中心瓶颈来在我的环境中放置包分析器 我用nmap+powershell解决了这个问题 Get-WindowsOptionalFeature –Online –FeatureName SMB1Protocol 我制作了一个文件夹(2019年9月),其中包含一
我知道包捕获是一种典型的方法,但是我并没有一个中心瓶颈来在我的环境中放置包分析器 我用nmap+powershell解决了这个问题
Get-WindowsOptionalFeature –Online –FeatureName SMB1Protocol
我制作了一个文件夹(2019年9月),其中包含一组以我的子网命名的文件夹:
10.0.0.0_23
10.10.10.0_24
10.100.10.0_24
等等。我的组织中大约有120个本地子网
然后我将\uu
更改为/
(Windows文件夹名称不能有/
)
现在我有了一个CIDR符号,可以在nmap中使用
Nmap有一个脚本来分析SMB的目标,它会告诉我它运行的是什么版本
整个子网的输出进入其各自的文件夹,并移动到下一个文件夹
我将编写另一个脚本来解析所有结果,并仅显示已启用SMB1的目标。查看使用
Invoke命令对系统列表运行scriptblock。如果在-ComputerName
参数中为I-C提供计算机列表,它将在每个系统上并行远程运行scriptblock。[咧嘴笑]
$NmapFolder = Get-ChildItem -Path "U:\nmap reports\Nmap Subnet
Scans\September2019" -Recurse -Directory -Force -ErrorAction SilentlyContinue
$data = ForEach ($item in $NmapFolder){
$Subnet = $item.Name.replace('_','/')
write-host "scanning"$Subnet". Please wait..."
nmap -p 445 --script smb-protocols -oN "U:\\nmap reports\\Nmap Subnet Scans\\September2019\\$item\\SMB_results.nmap" $Subnet
write-host "Done, report written for"$Subnet". Report has been written to: U:\\nmap reports\\Nmap Subnet Scans\\September2019\\"$item"\\SMB_results.nmap"
}