zoukankan      html  css  js  c++  java
  • python端口扫描

    简易版:

    #author:Blood_Zero
    #coding:utf-8
    
    import socket
    import sys
    
    PortList=[21,22,23,25,80,135]
    #
    
    host=sys.argv[1]
    
    for i in PortList:
        sock=socket.socket()
        sock.settimeout(2)
        try:
            sock.connect((host,i))
            print "the port %d is open" %i
        except Exception:
            print "the port %d is not open" %i
        sock.close()

    执行方法:python port_scan.py www.xx.com

    多线程端口扫描:

    #author:Blood_Zero
    #coding:utf-8
    
    import socket
    import multiprocessing
    import sys
    
    host=sys.argv[1]
    PortList=[21,22,23,25,80,135]
    
    #定义端口扫描函数
    def scan(port):
        port=(int(port))
        sock=socket.socket()
        sock.settimeout(1)
        print "the port %d is scanning" %port
        try:
            sock.connect((host,port))
            print "the server %s port %d is open" %(host,port)
        except Exception:
            print "the server %s port %d is not open" %(host,port)
        sock.close()
    
    # 主函数
    if __name__=="__main__":
        thread=multiprocessing.Pool(processes=100)
        for i in PortList:
            thread.apply_async(scan(i))    
        thread.close()

    执行方式 python port_scan.py www.xx.com

    后续还会出很多加强版!

  • 相关阅读:
    10_SpringBoot集成TkMybatis插件
    Mysql-YUM安装
    docker数据拷贝
    jquery实现倒计时功能
    CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作
    vue中开发webSocket
    YARN 与Maprd 配置
    js实现轮播图2
    DOM
    js五星好评
  • 原文地址:https://www.cnblogs.com/BloodZero/p/4445691.html
Copyright © 2011-2022 走看看