python 3.6.7实现端口扫描器

本文实例为大家分享了python 3.6.7端口扫描器的具体代码,供大家参考,具体内容如下

环境:python 3.6.7

# -*- coding: utf-8 -*-
import socket
import threading
import argparse

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

def portscan(ip, port):
 global openNum
 try:
 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
 s.connect((ip, port))
 lock.acquire()
 openNum = openNum + 1
 print('[+] %d open' %port)
 lock.release()
 s.close()

 except:
 pass

def main():
 parse = argparse.ArgumentParser()
 parse.add_argument('-H', dest = 'ip', type = str)
 args = parse.parse_args()
 ip = args.ip
 socket.setdefaulttimeout(3)

 for port in range(1, 1024):
 t = threading.Thread(target = portscan, args = (ip, port))
 threads.append(t)
 t.start()

 for t in threads:
 t.join()

 print('[*] The host:%s scan is complete!' %(ip))
 print('[*] A total of %d open port ' %(openNum))

if __name__ == '__main__':
 main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 使用Python编写简单的端口扫描器的实例分享

    单线程实现 单线程实现道理比较简单,这里尝试Soket连接3389,连接成功说明端口开放,否则说明没有开远程服务.随便修改了一下就ok了,代码如下,最终得到自己的IP地址. #!/usr/bin/env python import socket if __name__=='__main__': port=3389 s=socket.socket() for cnt in range(253,2,-1): address='XXX.XXX.XXX.'+str(cnt) #XXX.XXX.XXX I

  • python nmap实现端口扫描器教程

    NMap,也就是Network Mapper,最早是Linux下的网络扫描和嗅探工具包. nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端.确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting).它是网络管理员必用的软件之一,以及用以评估网络系统安全. 正如大多数被用于网络安全的工具,nmap 也是不少黑客及骇客(又称脚本小子)爱用的工具 .系统管理员可以利用nmap来探测工作环境中未经批准使用的服务器,但是黑客会利用nmap来搜

  • Python3多线程版TCP端口扫描器

    本文实例为大家分享了Python3多线程版TCP端口扫描器的具体代码,供大家参考,具体内容如下 使用命令 python BannerDemo.py -H 192.168.200.101 -p 22,3306 代码如下 import optparse import socket from socket import * from threading import * screenLock = Semaphore(value=1) def connScan(tgtHost,tgtPort): try

  • 使用Python3制作TCP端口扫描器

    在渗透测试的初步阶段通常我们都需要对攻击目标进行信息搜集,而端口扫描就是信息搜集中至关重要的一个步骤.通过端口扫描我们可以了解到目标主机都开放了哪些服务,甚至能根据服务猜测可能存在某些漏洞. TCP端口扫描一般分为以下几种类型: TCP connect扫描:也称为全连接扫描,这种方式直接连接到目标端口,完成了TCP三次握手的过程,这种方式扫描结果比较准确,但速度比较慢而且可轻易被目标系统检测到. TCP SYN扫描:也称为半开放扫描,这种方式将发送一个SYN包,启动一个TCP会话,并等待目标响应

  • Python实现简易端口扫描器代码实例

    在网上的一些资料的基础上自己又添了些新内容,算是Python socket编程练手吧. #coding=utf-8 import socket import time import sys import struct import threading from threading import Thread,activeCount results=[] def portScanner(ip,port): server = (ip,port) sockfd = socket.socket(sock

  • 实例探究Python以并发方式编写高性能端口扫描器的方法

    关于端口扫描器 端口扫描工具(Port Scanner)指用于探测服务器或主机开放端口情况的工具.常被计算机管理员用于确认安全策略,同时被攻击者用于识别目标主机上的可运作的网络服务. 端口扫描定义是客户端向一定范围的服务器端口发送对应请求,以此确认可使用的端口.虽然其本身并不是恶意的网络活动,但也是网络攻击者探测目标主机服务,以利用该服务的已知漏洞的重要手段.端口扫描的主要用途仍然只是确认远程机器某个服务的可用性. 扫描多个主机以获取特定的某个端口被称为端口清扫(Portsweep),以此获取特

  • 用Python编写一个高效的端口扫描器的方法

    PyPortScanner python多线程端口扫描器. 输出示例: Github 此端口扫描器的源码,文档及详细调用方法见Github PythonPortScanner by Yaokai. 背景 有时候,在进行网络相关的研究的时候,我们需要执行一些有目的的参数测量.而端口扫描就是其中比较普遍也比较重要的一项.所谓的端口扫描,就是指通过TCP握手或者别的方式来判别一个给定主机上的某些端口是否处理开放,或者说监听的状态.现有的使用比较广泛的端口扫描工具是nmap.毋庸置疑,nmap是一款非常

  • 基于Python编写一个简单的端口扫描器

    目录 1.需要的库 2.获取一个 host 地址 3.循环所有的端口 4.完整脚本 端口扫描是非常实用的,不止用在信息安全方面,日常的运维也用得到.这方面的工具也不要太多,搞过 CTF 的朋友会告诉你有多少端口扫描工具,那为什么还要用 Python 再自己实现一遍?这个问题就像饭店里的菜已经很好吃了,为什么还要自己烧菜一样,主要还是为了适合自己的口味,添加自己需要的个性功能. 今天我们将用 20 行代码编写一个简单的端口扫描器.让我们开始吧! 1.需要的库 都是标准库,因此内网环境也不影响: i

  • python 3.6.7实现端口扫描器

    本文实例为大家分享了python 3.6.7端口扫描器的具体代码,供大家参考,具体内容如下 环境:python 3.6.7 # -*- coding: utf-8 -*- import socket import threading import argparse lock = threading.Lock() openNum = 0 threads = [] def portscan(ip, port): global openNum try: s = socket.socket(socket

  • 利用Python脚本写端口扫描器socket,python-nmap

    目录 Socket模块编写 扫描给定主机是否开放了指定的端口 python-nmap模块编写 扫描给定ip或给定网段内指定端口是否开放 前言: 一个用python写的简单的端口扫描器,python环境为 3.7.0,windows系统 Socket模块编写 扫描给定主机是否开放了指定的端口 TCP连接扫描是利用TCP的三次握手来确定主机的端口是否开放.确定主机端口开放之后,给端口发送消息,接收端口返回的消息,然后判断该端口运行的服务. 使用时,-H 参数可以提供主机的域名或者ip地址,-p/-P

  • python编写简单端口扫描器

    本文实例为大家分享了python编写简单端口扫描器的具体代码,供大家参考,具体内容如下 直接放代码 此代码只支持扫描域名,要扫描IP请自己修改 from socket import * from threading import Thread import optparse Port = [80,21,23,22,25,110,443,1080,3306,3389,1521,1433] Server = ['HTTP','FTP','TELNET','SSH','SMTP','POP3','HT

  • 利用Python实现端口扫描器的全过程

    目录 socket概念 socket基本用法 创建tcp套接字 创建udp套接字 socket内建方法 实现端口扫描 总结 socket概念 socket又称套接字,可以看做是不同主机之间的进程进⾏双向通信的端点,简单的说就是通信的两⽅的⼀种约定,⽤套接字中的相关函数来完成通信过程,发出网络请求或者应答网络请求. socket起源于Unix,⽽Unix/Linux基本哲学之⼀就是"⼀切皆⽂件",对于⽂件⽤"打开"."读写"."关闭&qu

  • Python实现端口扫描器的示例代码

    目录 socket概念 socket基本用法 创建tcp套接字 实现端口扫描 socket概念 socket又称套接字,可以看做是不同主机之间的进程进⾏双向通信的端点,简单的说就是通信的两⽅的⼀种约定,⽤套接字中的相关函数来完成通信过程,发出网络请求或者应答网络请求. socket起源于Unix,⽽Unix/Linux基本哲学之⼀就是"⼀切皆⽂件",对于⽂件⽤"打开"."读写"."关闭"模式来操作.而socket就是该模式的⼀

  • Python写安全小工具之TCP全连接端口扫描器

    目录 一个简单的端口扫描器 多线程版本 前言: 通过端口扫描我们可以知道目标主机都开放了哪些服务,下面通过TCP connect来实现一个TCP全连接端口扫描器. 一个简单的端口扫描器 #!/usr/bin/python3 # -*- coding: utf-8 -*- from socket import * def portScanner(host,port): try: s = socket(AF_INET,SOCK_STREAM) s.connect((host,port)) print

随机推荐