怎么用python扫描主机_python扫描主机开放的端口
!/usr/bin/python
-- coding: utf-8 --
"""
@version: ??
@author: Guanjie Zhou
@license: Apache Licence
@file: dis_port_threading.py
@time: 17-5-27 上午8:21
"""
import socket
import time
import threading
socket.setdefaulttimeout(1)
建立存放开放端口的列表
open_port = []
锁
lock = threading._allocate_lock()
线程列表
threads = []
计数器
openNum = 0
端口扫描函数
def socket_port(ip, port):
global openNum
try:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 返回连接结果,成功的话返回为0,失败返回errno的值
# 这里要注意的是下边的函数里边的为(ip, port)一个整体
result = s.connect_ex((ip, port))
if result == 0:
lock.acquire()
print '[+] %d open' % port
open_port.append(port)
openNum += 1
lock.release()
except:
print u"端口扫描异常"
def ip_scan(ip, port_range=65535):
# 输入ip地址后,扫描在范围内的端口占用情况
try:
start_time = time.time()
for port in range(0, port_range):
t = threading.Thread(target=socket_port, args=(ip, int(port)))
# 将线程加入线程列表
threads.append(t)
t.start()
# 线程加join
for t in threads:
t.join()
end_time = time.time()
print u'[] %s扫描完成,总共用时: %.2f' % (ip, (end_time - start_time))
print u'[] 一共开放%d端口,具体如下: ' % (openNum)
print open_port
except:
print u"端口扫描出错"
if name == 'main':
# 输入要扫描的端口号
url = raw_input('Input the ip whitch you want to scan: ')
# 输入要扫描的范围
port_range = raw_input(u"输入要扫描的最大端口: ")
# 判断为空的时候,设置一个默认值
if not port_range:
port_range = 65535
ip_scan(url, int(port_range))
怎么用python扫描主机_python扫描主机开放的端口相关推荐
- python是什么牌子主机_python 收集主机信息
这篇文章是之前几篇的一个小综合.也是通过收集主机的一些参数信息,熟悉python里的文件读取,字符切割,字典存储等知识. 文章结构: (1) 文章目的,需要收集的信息,并逐个分析如何获取信息. (2) ...
- 网络扫描,端口扫描,漏洞扫描,带你认识nmap
nmap是一款用于网络发现和安全评估的开源工具.它可以扫描网络主机,了解主机的开放端口和服务信息,甚至可以对操作系统进行识别. 以下是nmap主要用途: 网络发现:nmap可以扫描网络上的主机,了解主 ...
- [批量主机存活扫描工具scanhost]扫描主机存活[python版本,非nmap版本]
地址: http://blog.csdn.net/hujkay 作者:Jekkay Hu(34538980@qq.com) 关键词:主机扫描,主机存活,纯python版本,非nmap 时间: 2014 ...
- python实现syn半扫描_python 使用raw socket进行TCP SYN扫描实例
1. TCP SYN扫描 端口扫描常用于用于探测服务器或主机开放端口情况,被计算机管理员用于确认安全策略,同时被攻击者用于识别目标主机上的可运作的网络服务.端口扫描是向一定范围的服务器端口发送对应请求 ...
- python中用socket检测端口_python基于socket函数实现端口扫描
本文实例为大家分享了python基于socket实现端口扫描的具体代码,供大家参考,具体内容如下 自学Python一段时间,写个端口扫描器练练手.有什么不足之处,请见谅 这是基于socket函数对端口 ...
- NetBIOS主机名扫描工具nbtscan
2019独角兽企业重金招聘Python工程师标准>>> NetBIOS主机名扫描工具nbtscan NetBIOS主机名是NetBIOS协议为主机分配的名称.通过NetBIOS主机名 ...
- 【Linux】29.扫描本机同一局域网内 某端口开启 的主机
扫描本机同一局域网内 某端口开启 的主机 关于nc的用法可参考博客<nc之netcat端口测试与nmap工具> 链接: https://www.cnblogs.com/chuyiwang/ ...
- BLE主机主动扫描和被动扫描
1.目的 识别什么是主动扫描 什么是被动扫描 2.分析 在实际中如果需要获得扫描响应,需要主机设置为主动扫描.如果仅仅是需要广播数据则设置为被动扫描.主动扫描和被动扫描的区别在于:主动扫描可以获得广播 ...
- 主机Ping扫描自动化工具
工具集 主机Ping扫描自动化工具 官网下载地址:http://www.nirsoft.net/utils/multiple_ping_tool.html 示例:
最新文章
- 一张图带你了解 Spring Cloud 微服务架构!
- 突破置换模块计算瓶颈,MSRA开源轻量版HRNet,超越主流轻量化网络!|CVPR2021...
- lvs的十种调度算法概念
- 同步机制之 ReentrantLock
- python生成器yield原理_生成器yield关键字详解
- OS / Linux / Ubuntu 创建应用的快捷方式
- 关于磁盘,磁柱,磁头,扇区的概念
- js将文字填充与canvas画布再转为图片
- 两个数和三个数的最大值和最小值宏定义
- Web Directions South 2012的四个大创意
- python画圣诞帽_用Python给头像戴圣诞帽
- 如何利用cmd打开资源管理器
- unity 安卓apk安装后的文件路径
- texstudio暗色主题2.0
- $q -- AngularJS中的服务
- 【问题篇】Springboot解决报错“java.sql.SQLException: Unable to load authentication plugin ‘caching_sha2_passw”
- 周三直播 | PaddleGAN又开金手指,零门槛人像转卡通
- D. Treasure Island
- Wireshark lua 插件简介
- 关于VMware15使用unlocker解锁Mac OS时cmd一闪而过导致失败的问题解决方法
热门文章
- php dom xml解析,Php Xml解析之DOMDocument使用方法浅解
- 记得5年前左右的时候,IT这块刚好处于最火专业之一!至今为止,依旧很多人选择计算机!由于女生也很多选择这块,所以给很多公司带来了福利啊!以前一个互联网公司女生少的可怜啊!可随着IT这块人员的进入,竞争
- OpenCASCADE:OCCT应用框架OCAF之TObj模型辅助类和包装
- OpenCASCADE:使用 扩展数据交换XDE之子形状的管理
- OpenCASCADE:Modeling Data之形状的属性
- BOOST_TEST_FOREACH宏相关的测试程序
- boost::python::wrapper相关的测试程序
- boost::mpl模块实现find_if相关的测试程序
- boost::hana::negate用法的测试程序
- boost::hash_combine模块实现json哈希值的测试程序