#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
# 編程思路
# 1、定義portscan函數(shù),創(chuàng)建socket對(duì)象進(jìn)行TCP端口掃描
# 2、啟動(dòng)多線(xiàn)程運(yùn)行PortScan函數(shù)
# 3、記錄并輸出掃描結(jié)果與時(shí)間
import socket # 創(chuàng)建TCP連接
from threading import Thread # 多線(xiàn)程模塊,進(jìn)行多線(xiàn)程掃描
import time # 時(shí)間模塊,記錄掃描所需時(shí)間
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、啟動(dòng)多線(xiàn)程運(yùn)行PortScan函數(shù)
t = Thread(target=portscan, args=(target, port)) # 創(chuàng)建線(xiàn)程對(duì)象
t.start() # 開(kāi)始線(xiàn)程
end_time = time.time()
print("[*] All done in %.2f s" % (end_time - start_time))
def portscan(target, port):
# 1、定義portscan函數(shù),進(jìn)行TCP端口掃描
try:
client = socket.socket(
socket.AF_INET, socket.SOCK_STREAM) # 創(chuàng)建socket對(duì)象
client.connect((target, port)) # 建立TCP連接
print("[*] %s:%d端口開(kāi)放" % (target, port))
client.close()
except:
pass # 捕獲異常
if __name__ == "__main__":
main()
python-多線(xiàn)程掃描端口是否開(kāi)放
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 2019.3.20更新(將代碼升級(jí)為非阻塞式多進(jìn)程,效率極大提升)2019.6.28更新 (將代碼模塊化,復(fù)用性更...
- 版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。 我就看了幾天的python。這個(gè)作為練習(xí),若有錯(cuò)誤,望指出。...
- 前言 今天為大家介紹一個(gè)使用多線(xiàn)程生成的IP端口掃描器,2這里使用多線(xiàn)程的操作是很有必要的。這里,一個(gè)很自然的思路...
- 前言 今天為大家一個(gè)利用Python掃描開(kāi)放主機(jī)的TCP端口,首先你要查看其中的開(kāi)放的端口,創(chuàng)建一個(gè)TCP全連接掃...