📜  Python中的NSE工具模块介绍(1)

📅  最后修改于: 2023-12-03 15:19:27.133000             🧑  作者: Mango

Python中的NSE工具模块介绍

NSE(Nmap Scripting Engine)是一种用于Nmap网络扫描器的脚本引擎,它允许用户编写脚本来执行各种网络相关任务。在Python中,有一个称为“nmap3”的模块,它可以轻松地使用NSE脚本引擎。

安装

要使用nmap3模块,首先需要安装nmap,可以使用以下命令在Ubuntu上安装:

sudo apt-get install nmap

安装nmap之后,可以使用pip安装nmap3模块:

pip install python3-nmap
用法

以下示例演示了如何使用nmap3模块来扫描本地网络并获取运行SSH服务的主机列表:

import nmap3

nmap = nmap3.Nmap()

results = nmap.scan_top_ports("192.168.0.0/24", args="-p 22")

hosts = [r for r in results.keys() if results[r]["ports"][22]["state"] == "open"]

print(hosts)

代码解释:

  1. 导入nmap3模块。
  2. 创建Nmap实例。
  3. 调用scan_top_ports函数执行扫描。192.168.0.0/24是要扫描的网段,args="-p 22"指定只扫描SSH服务端口。该函数将返回一个包含扫描结果的字典。
  4. 通过遍历字典获取运行SSH服务的主机列表。
  5. 打印主机列表。
注意事项
  • nmap需要以root权限执行才能扫描所有端口和服务。
  • NSE脚本具有危险性,可能会导致网络安全问题。在使用时请小心谨慎,并遵循良好的网络安全实践。
参考资料