#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
# 编程思路
# 1、定义portscan函数,创建socket对象进行TCP端口扫描
# 2、启动多线程运行PortScan函数
# 3、记录并输出扫描结果与时间
import socket # 创建TCP连接
from threading import Thread # 多线程模块,进行多线程扫描
import time # 时间模块,记录扫描所需时间
def main():
target = input("IP:")
start_time = time.time()
s_time = time.ctime()
print("[*] Start port scan at %s" % s_time)
for port in range(1, 65536): # 定义扫描的端口范围
# 2、启动多线程运行PortScan函数
t = Thread(target=portscan, args=(target, port)) # 创建线程对象
t.start() # 开始线程
end_time = time.time()
print("[*] All done in %.2f s" % (end_time - start_time))
def portscan(target, port):
# 1、定义portscan函数,进行TCP端口扫描
try:
client = socket.socket(
socket.AF_INET, socket.SOCK_STREAM) # 创建socket对象
client.connect((target, port)) # 建立TCP连接
print("[*] %s:%d端口开放" % (target, port))
client.close()
except:
pass # 捕获异常
if __name__ == "__main__":
main()
python-多线程扫描端口是否开放
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 2019.3.20更新(将代码升级为非阻塞式多进程,效率极大提升)2019.6.28更新 (将代码模块化,复用性更...
- 版权声明:本文为博主原创文章,未经博主允许不得转载。 我就看了几天的python。这个作为练习,若有错误,望指出。...
- 前言 今天为大家一个利用Python扫描开放主机的TCP端口,首先你要查看其中的开放的端口,创建一个TCP全连接扫...