散尽浮华 2023

過去心不可得,現在心不可得,未來心不可得。
安寻安放,不卑不亢;重剑无锋,大巧不工!
  1. 首页
  2. network
  3. 正文

Python:多线程端口扫描

2020年11月19日 2745点热度 0人点赞 0条评论
#!/usr/bin/python3
# -*- coding: utf-8 -*-
from socket import *
import threading
from time import sleep, ctime

lock = threading.Lock()
openNum = 0
ports = []
threads = []

def portScanner(host,port):
    global openNum
    global ports
    try:
        s = socket(AF_INET,SOCK_STREAM)
        res = s.connect((host,port))
        lock.acquire()
        openNum+=1
        print('[+] %d open' % port)
        ports.append(port)
        lock.release()
        s.close()
    except:
        pass

def main():
    setdefaulttimeout(1)
    print('starting at:', ctime())
    for p in range(1,65536):
        t = threading.Thread(target=portScanner,args=('10.20.0.205',p))
        threads.append(t)
        t.start()     

    for t in threads:
        t.join()

    print('[*] The scan is complete!')
    print('[*] A total of %d open port ' % (openNum))
    print('all DONE at:', ctime())
    print(ports)

if __name__ == '__main__':
    main()

测试结果,65535个端口耗时17秒

标签: 暂无
最后更新:2020年11月19日

admin

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2023 散尽浮华 2023. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang