python 端口扫描,主机端口扫描程序设计Python
本文主要介绍Python编写的安全小工具TCP全连接端口扫描器。本文通过TCPconnect实现了一个TCP全连接端口扫描器。有一定的参考价值,有需要的小伙伴可以参考一下。
00-1010端口扫描器前言:的简单多线程版本
通过端口扫描,可以知道目标主机开通了哪些服务。这里,我们将通过TCP connect实现一个TCP全连接端口扫描器。
目录
#!/usr/bin/python3
# -*-编码: utf-8 -*-
从套接字导入*
def端口扫描器(主机,端口):
尝试:
s=套接字(AF_INET,SOCK_STREAM)
s.connect((主机,端口))
打印([[]% d打开“%端口”)
关闭()
例外:
打印(([-] %d关闭“%端口”)
定义主():
setdefaulttimeout(1)
对于范围(1,1024):内的p
端口扫描仪( 192.168.0.100 ,p)
if __name__==__main__:
主()
说明:
对原理:,的不同端口进行TCP连接,根据连接成功与否判断端口是否开放。AF_INET指定IPv4协议,SOCK_STREAM指定connect((host,port)),一种面向流的TCP协议,发起到指定IP:端口的连接。默认超时为1秒。
一个简单的端口扫描器
#!/usr/bin/python3
# -*-编码: utf-8 -*-
从套接字导入*
导入线程
锁=线程。锁定()
openNum=0
线程=[]
def端口扫描器(主机,端口):
全局openNum
尝试:
s=套接字(AF_INET,SOCK_STREAM)
s.connect((主机,端口))
lock.acquire()
openNum=1
打印([[]% d打开“%端口”)
lock.release()
关闭()
例外:
及格
定义主():
setdefaulttimeout(1)
对于范围(1,1024):内的p
t=螺纹。Thread(target=portScanner,args=(192.168.0.100 ,p))
threads.append
启动()
对于线程:中的测试
t.join()
打印([*]扫描完成!)
打印([*]总共%d个开放端口 % (openNum))
if __name__==__main__:
主()
说明:
使用多线程,1,t=线程。Thread() 2,t.start() 3,t.join()多线程。为了保证线程安全(共享变量的一致性),这里需要锁定处理共享变量的代码段。本文介绍了用Python编写的安全小工具TCP全连接端口扫描器。关于Python TCP端口扫描器的更多信息,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望你以后能支持风行IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。