Python编程--目标IP地址段主机指定端口状态扫描

简介: Python编程--目标IP地址段主机指定端口状态扫描

Python编程–目标IP地址段主机指定端口状态扫描
渗透测试经常需要进行针对目标主机IP地址段的各主机的端口进行扫描,然后输出目标主机的开放端口的状态。现利用nmap-python模块编写一个扫描脚本程序。代码如下:

# 导入nmap模块
import nmap
# 定义findTgts函数,参数为subNet(目标子网), portLst(目标端口列表)
def findTgts(subNet, portLst):
   # 实例化nmap对象
    nmScan = nmap.PortScanner()
        # 遍历目标端口
    for port in portLst:
        nmScan.scan(subNet, str(port))
        # 建立一个目标主机空列表
        tgtHosts = []
        for host in nmScan.all_hosts():
            if nmScan[host].has_tcp(port):
              # 获取目标主机tcp协议的目标端口的状态
                state = nmScan[host]['tcp'][port]['state']
                # 判断端口状态是否开放
                if state == 'open':
                    print('[+] Found Target Host: ' + host + ' ' + 'port: ' + str(port) + ' open')
                    tgtHosts.append(host)

    return tgtHosts

if __name__ == '__main__':
    portLst = [21, 22, 25, 445]
    tgthosts = findTgts('192.168.31.33-240', portLst)

    print(tgthosts)
AI 代码解读

针对目标IP地址段(192.168.31.33-240)端口(21,22, 25, 445)进行扫描,结果如下所示:

[+] Found Target Host: 192.168.31.82 port: 21 open
[+] Found Target Host: 192.168.31.82 port: 22 open
[+] Found Target Host: 192.168.31.113 port: 445 open
[+] Found Target Host: 192.168.31.192 port: 445 open
['192.168.31.82', '192.168.31.113', '192.168.31.192']
AI 代码解读
目录
打赏
0
1
1
0
218
分享
相关文章
在Python程序中实现LevelDB的海量key的分批次扫描
通过本文的步骤,您可以在Python程序中实现对LevelDB海量key的分批次扫描。这样不仅能够有效地管理大规模数据,还可以避免一次性加载过多数据到内存中,提高程序的性能和稳定性。希望这篇指南能为您的开发工作提供实用的帮助。
76 28
Python网络编程小示例:生成CIDR表示的IP地址范围
本文介绍了如何使用Python生成CIDR表示的IP地址范围,通过解析CIDR字符串,将其转换为二进制形式,应用子网掩码,最终生成该CIDR块内所有可用的IP地址列表。示例代码利用了Python的`ipaddress`模块,展示了从指定CIDR表达式中提取所有IP地址的过程。
91 6
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息。本文分三部分介绍 nmap:基本原理、使用方法及技巧、实际应用及案例分析。通过学习 nmap,您可以更好地了解网络拓扑和安全状况,提升网络安全管理和渗透测试能力。
281 5
IP地址探秘:识别与解析的Python之旅 🚀
《IP地址探秘:识别与解析的Python之旅》通过Python的`ipaddress`模块,轻松实现IP地址的分类(如单播、多播、私有、环回或公有)及子网内所有IP的生成,使网络管理更加便捷高效。示例代码直观展示了功能实现过程。
55 1
|
4月前
|
Python编程--使用NMAP端口扫描
Python编程--使用NMAP端口扫描
51 1
|
4月前
|
Python获得本机本地ip地址的方法
【10月更文挑战第8天】 socket模块包含了丰富的函数和方法,可以获取主机的ip地址,例如gethostbyname方法可以根据主机名获取ip地址,gethostbyname_ex方法可以获得本机所有ip地址列表,也可以使用netifaces模块获取网卡信息。
78 0
Python--API编程:IP地址翻译成实际的物理地址
Python--API编程:IP地址翻译成实际的物理地址
97 0
使用Python编写网络扫描程序
使用Python编写网络扫描程序
78 0
python向IP地址发送字符串
python向IP地址发送字符串
58 0

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等