python脚本基于端口开启服务识别信息收集

简介: python脚本基于端口开启服务识别信息收集

本文转载:https://xiaochuhe.blog.csdn.net/article/details/122301129
1.源代码如下:

#!/usr/bin/python3
# -*- coding: utf-8 -*-
 
import nmap
import optparse
 
def NmapScan(targetIP, targetPort):
    # 实例化PortScanner对象
    nm = nmap.PortScanner()
    try:
        # hosts为目标IP地址,argusments为Nmap的扫描参数
        # -p:对指定端口进行扫描
        # -sV:对端口进行服务程序探测
        result = nm.scan(hosts=targetIP, arguments='-sV -p'+str(targetPort))
        # 对结果进行切片,提取端口信息
        # 这里需要注意的是,提取信息时需要把端口转化为int型
        port_infor = result['scan'][targetIP]['tcp'][int(targetPort)]
        # 分别显示  端口号:端口状态 端口服务:端口服务程序
        print("[{}:{}] : [{}:{}]".format(targetPort, port_infor['state'] , port_infor['name'], port_infor['product']))
    except Exception as e:
        print(e)
 
 
if __name__ == '__main__':
    parser = optparse.OptionParser('usage: python %prog -i ip -p port\n\n'
                                    'Example: python %prog -i 192.168.1.1 -p 80,3306\n')
    # 添加目标IP参数-i
    parser.add_option('-i','--ip',dest='targetIP',default='192.168.1.1',type='string',help='target ip address')
    # 添加扫描端口参数-p
    parser.add_option('-p','--port',dest='targetPort',default='80',type='string',help='target port')
    options,args = parser.parse_args()
    for i in range(0,len(options.targetPort.split(','))):
        NmapScan(options.targetIP, options.targetPort.split(',')[i])

2.用法:

python 此脚本 -i IP范围 -p 端口范围

相关文章
|
28天前
|
Linux Shell Python
Linux执行Python脚本
Linux执行Python脚本
27 1
|
1月前
|
JSON API 数据库
解释如何在 Python 中实现 Web 服务(RESTful API)。
解释如何在 Python 中实现 Web 服务(RESTful API)。
26 0
|
1天前
|
机器学习/深度学习 存储 监控
数据分享|Python卷积神经网络CNN身份识别图像处理在疫情防控下口罩识别、人脸识别
数据分享|Python卷积神经网络CNN身份识别图像处理在疫情防控下口罩识别、人脸识别
10 0
|
14天前
|
开发者 索引 Python
实践:如何使用python在网页的表格里抓取信息
实践:如何使用python在网页的表格里抓取信息
|
15天前
|
机器学习/深度学习 数据可视化 数据挖掘
用Python进行健康数据分析:挖掘医疗统计中的信息
【4月更文挑战第12天】Python在医疗健康数据分析中扮演重要角色,具备数据处理、机器学习、可视化及丰富生态的优势。基本流程包括数据获取、预处理、探索、模型选择与训练、评估优化及结果可视化。应用案例包括疾病预测、药物效果分析和医疗资源优化,例如使用RandomForestClassifier进行疾病预测,Logit模型分析药物效果,以及linprog优化医疗资源配置。
|
18天前
|
JSON 测试技术 持续交付
自动化测试与脚本编写:Python实践指南
【4月更文挑战第9天】本文探讨了Python在自动化测试中的应用,强调其作为热门选择的原因。Python拥有丰富的测试框架(如unittest、pytest、nose)以支持自动化测试,简化测试用例的编写与维护。示例展示了使用unittest进行单元测试的基本步骤。此外,Python还适用于集成测试、系统测试等,提供模拟外部系统行为的工具。在脚本编写实践中,Python的灵活语法和强大库(如os、shutil、sqlite3、json)助力执行复杂测试任务。同时,Python支持并发、分布式执行及与Jenkins、Travis CI等持续集成工具的集成,提升测试效率和质量。
|
24天前
|
数据采集 Java API
python并发编程: Python使用线程池在Web服务中实现加速
python并发编程: Python使用线程池在Web服务中实现加速
18 3
python并发编程: Python使用线程池在Web服务中实现加速
|
24天前
|
存储 监控 异构计算
【Python】GPU内存监控脚本
【Python】GPU内存监控脚本
|
24天前
|
Ubuntu Unix Linux
【Linux/Ubuntu】Linux/Ubuntu运行python脚本
【Linux/Ubuntu】Linux/Ubuntu运行python脚本
|
1月前
|
XML Shell Linux
性能工具之 JMeter 使用 Python 脚本快速执行
性能工具之 JMeter 使用 Python 脚本快速执行
41 1
性能工具之 JMeter 使用 Python 脚本快速执行