端口扫描的Python脚本[bak]


找到了一个端口扫描的Python小脚本,做个备份&学习:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import time, socket, thread

socket.setdefaulttimeout(3)

def port_scan(ip, port):
    try:
        if port>=65535:
            print 'Scanning port's range is 0-65535'
            port = 5000
        # create an AF_INET, STREAM socket (TCP)
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        scan_result = s.connect_ex((ip, port))
        if scan_result == 0:
            print ip, ":", port, "Port is open!"
        s.close()
    except:
        print "port-scan error-1"

def ip_scan(ipaddress):
    try:
        t = time.time()
        for item in range(0, 1000+1):
            #使用start_new_thread函数可以简单的启动一个线程
            #第一个参数指定线程中执行的函数,第二个参数为元组型的传递给指定函数的参数值
            thread.start_new_thread(port_scan, (ipaddress, int(item)))
            time.sleep(0.003)
        print 'Port-scan complete! Takes: %f seconds.'% (time.time()-t)
    except:
        print "port-scan error-2"

if __name__ == "__main__":
	ip_scan("127.0.0.1")
	ip_scan("192.168.1.1")

代码短小精悍,用的是底层的socket加上多线程,速度还是很快的。

, ,

《 “端口扫描的Python脚本[bak]” 》 有 4 条评论

  1. 技术自信
    https://mp.weixin.qq.com/s/pQZKTg1hFdHj9_Uv8MoQvQ
    `
    写到这,我又想起了很多事,有一次跟一个朋友讨论出海的事情,因为最近国外写FOFA的文章多了起来,用Goby的也多了起来,朋友说要先打中小市场,我打断了她,我问你是觉得我们的技术不好吗?她稍微愣了一下,说没有啊。我说那为什么我们不是先进世界500强呢?是政策问题还是品牌问题,亦或是技术不自信的问题?

    还有一次,同事问我说一个技术有ab两个方案,问我选哪一个。我问哪个难一点?同事也愣了一下,说b方案难一点。我说那就做b方案。我当然不是为了炫技没事找事,而是因为我非常确定,容易的路别人抄袭就会很简单,那算不了护城河,恰恰是那种大家都觉得可行但是都不敢去挑战的路,才会是我们未来保持持续领先的基石。今天我们手里有多少技术储备,明天,我们就能活地多么的自信。等到我们领先一代的技术出来的时候,我就会连“自信”这两个字都懒得提。
    `
    免费、跨平台、单文件部署的网络协议服务端模拟器
    https://github.com/fofapro/fapro/blob/master/README-CN.md

    如何打造一个网络扫描分析平台 – Part I
    https://nosec.org/home/detail/4890.html

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注