网络端口号可以提供有关通过网络访问计算机的应用程序的关键信息。了解使用网络的应用程序和相应的网络端口,您可以为防火墙创建精确的规则并将远程主机配置为只允许有用的流量。此外,端点上的活动 TCP/IP 端口可能表明潜在的恶意活动或遭受网络攻击。获取所有活动 TCP 连接的列表在您网络上的每个 TCP 端点上,这是了解攻击面以及锁定您的网络免受未来安全事件和勒索软件影响的重要第一步。信息应包括源和目标 IP 地址和端口、进程信息和其他数据。本手册介绍了在 Windows 操作系统上创建活动 TCP 连接列表的一些简化方法。此外,您将了解如何借助 PowerShell 获取 TCP 连接。
手动:
1. 在 ROOT\StandardCIMV2 命名空间中执行 WMI 查询:
启动 WMI Explorer或任何其他可以运行 WMI 查询的工具。
运行 WMI 查询: SELECT * FROM MSFT_NetTCPConnection
2. 运行这个简单的 Windows Powershell 脚本:
通过 WMI 对象:Get-WmiObject -Namespace ROOT\StandardCIMV2 -Class MSFT_NetTCPConnection -Computer RemoteComputerName
3.使用以下代码选择特定列:
执行:Get-WmiObject -Namespace ROOT\StandardCIMV2 -Class MSFT_NetTCPConnection -Computer RemoteComputerName | 选择对象 RemoteAddress、RemotePort、OwningProcess、PSComputerName
4. 使用下面的行对结果进行排序:
调用命令:Get-WmiObject -Namespace ROOT\StandardCIMV2 -Class MSFT_NetTCPConnection -Computer RemoteComputerName | 选择对象 RemoteAddress、RemotePort、OwningProcess、PSComputerName | 排序对象远程地址
5. 下一个代码有助于过滤结果:
使用它: Get-WmiObject -Namespace ROOT\StandardCIMV2 -Class MSFT_NetTCPConnection -Computer RemoteComputerName | 选择对象 RemoteAddress、RemotePort、OwningProcess、PSComputerName | Where-Object -FilterScript {$_.RemoteAddress -like “192.168.*”}
6. 将结果保存到 CSV 文件:
运行: Get-WmiObject -Namespace ROOT\StandardCIMV2 -Class MSFT_NetTCPConnection -Computer RemoteComputerName | 选择对象 RemoteAddress、RemotePort、OwningProcess、PSComputerName | 导出-CSV “c:\file.csv” -Append -NoTypeInformation
7.下一步是查询多台计算机:
来自文本文件的计算机:Get-Content -Path c:\computers.txt | ForEach-Object {Get-WmiObject -Namespace ROOT\StandardCIMV2 -Class MSFT_NetTCPConnection -Computer $_}来自 AD 域的计算机: Get-ADComputer -Filter {OperatingSystem -Like 'Windows 10*'} | ForEach-Object {Get-WmiObject -Namespace ROOT\StandardCIMV2 -Class MSFT_NetTCPConnection -Computer $_.Name}