nmap批量扫描(速度快)方法

博客介绍了Nmap扫描结果XML转化为XLS的方法,包括test.txt格式、扫多ip命令,需将ip.txt和生成的xml文件放到nmap目录下,安装Python及依赖模块python - libnmap、XlsxWriter,最后使用转换脚本完成转换,并提供了资源链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Nmap 扫描结果XML转化为XLS

1、test.txt格式

2、扫多ip命令

nmap -sV -sT -Pn --open -p0-65535 -iL test.txt -oX test.xml

-sV 探测端口服务版本

-sT TCP connect()扫描,这种方式会在目标主机的日志中记录大批连接请求和错误信息。

-Pn 扫描之前不需要用ping命令,有些防火墙禁止ping命令。可以使用此选项进行扫描

--open只查询端口处于开放状态的端口

-p <port ranges>: 扫描指定的端口

-iL ip.txt : 批量扫描ip.txt中的目标地址

-oX test.xml: 将扫描结果生成 test.xml 文件,如果中断,则结果打不开

-oA test.xml: 将扫描结果生成 test.xml 文件,中断后,结果也可保存

3、把ip.txt把放到nmap目录下

4、把生成对应的 xml文件放到这个目录下

建议安装python的版本如下图,不过本人安装的3.7.3

(1)Python(本次测试的python3.7)

(2)依赖python模块:python-libnmap、XlsxWriter,安装:pip install python-libnmap、pip install XlsxWriter

3)使用方法:nmap-converter.py [-h] [-o XLS] XML [XML ...]

示例:nmap-converter.py -o test.xlsx test.xml

(test.xlsx为转化后的Excel,test.xml为nmap输出xml格式结果)

不管用哪个版本安装上python的依赖(python-libnmap、XlsxWriter)就可以,出问题请百度解决

5、最后python nmap-converter.py -o ip.xls test.xml

转换脚本 https://github.com/mrschyte/nmap-converter

将python转换脚本nmap-converter.py、nmap扫描输出的xml⽂件 test.xml放在同⼀个⽬录下

资源:

「Nmap 扫描结果XML转化为XLS」等文件 https://www.aliyundrive.com/s/MAPBPXdTU37 提取码: 65jp 点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。

### 使用Nmap实现批量端口扫描 为了使用 Nmap 进行批量端口扫描,可以借助 Python 的 `python-nmap` 库来简化操作并集成到自动化脚本中。下面展示了如何通过编写 Python 脚本来完成这一目标。 #### 安装依赖库 首先需要安装 `python-nmap` 库,在命令行输入如下指令: ```bash pip install python-nmap ``` #### 编写Python脚本进行批量扫描 创建一个新的 Python 文件用于定义批量扫描逻辑。这里提供了一个简单的例子说明怎样针对多个 IP 地址执行全面的 TCP 端口扫描[^1]。 ```python import nmap def batch_port_scan(ip_list): nm = nmap.PortScanner() for ip in ip_list: try: print(f'Scanning {ip}...') result = nm.scan(hosts=ip, arguments='-p-') # 执行全端口扫描 for host in nm.all_hosts(): print('----------------------------------------------------') print(f'Host : {host} ({nm[host].hostname()})') print(f'State : {nm[host].state()}') for proto in nm[host].all_protocols(): lport = list(nm[host][proto].keys()) lport.sort() for port in lport: print(f'Port : {port}\tState : {nm[host][proto][port]["state"]}') except Exception as e: print(f"Error scanning {ip}: ", str(e)) if __name__ == "__main__": ips_to_scan = ['192.168.3.1', '192.168.3.2'] # 替换成实际要扫描的目标列表 batch_port_scan(ips_to_scan) ``` 上述代码片段实现了对给定IP地址列表中的每一个主机发起完整的TCP端口扫描请求,并打印出开放状态下的各个端口号及其对应的服务名称。注意 `-p-` 参数表示让 Nmap 对所有可能存在的端口 (即 1 到 65535) 进行探测[^2]。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一块金子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值