吾爱测试
这个作者很懒,什么都没留下…
展开
-
python读取csv文件并进行端口扫描源码
# python读取csv文件并进行端口扫描源码import csvimport socketfrom concurrent.futures.thread import ThreadPoolExecutorimport redef csv_reader(filename): ip_list = [] f = csv.reader(open(filename, 'r')) for i in f: if i[8] not in ip_list:原创 2021-09-21 13:41:58 · 147 阅读 · 0 评论 -
基于python的域名爆破程序
基于python的域名爆破程序一 、 任务情况任务标题: 编写DNS枚举程序1.1 任务目标编写一个可以进行DNS枚举的程序1.2 任务描述在做信息收集时,多级域名的收集可以提升攻击面,多级域名的收集方式包括两种,一种是通过搜索引擎,也就是爬虫的方式,另外一种就是通过DNS暴力枚举的方式。DNS暴力枚举的过程中会存在域名泛解析的问题,所以需要做判断然后进行优化1.3 报告要求1、理解DNS协议的原理,理解DNS解析的全过程2、使用DNS暴力枚举的方式实现多级域名的收集3、收集一些dns原创 2021-09-01 21:34:44 · 456 阅读 · 0 评论 -
基于python的FTP暴力破解程序
基于python的FTP暴力破解程序任务标题:FTP暴力破解程序任务目标编写一个针对ftp服务器进行暴力破解的程序任务描述ftp是一个文件传输协议,用来文件共享,fto通常存在匿名访问和弱口令的问题,通过编写ftp暴力破解的程序可以理解爆破的原理,实现自动化的渗透。报告要求1、理解ftp协议的原理2、编写ftp暴力破解程序,收集常用字典3、通过zoomeye搜集若干ftp服务器,尝试爆破扩展任务尝试使用多线程来提升爆破的效率运行截图程序描述1.基于多线程进行FTP暴力破解2原创 2021-07-26 23:36:18 · 414 阅读 · 0 评论 -
使用协程进行端口扫描
使用协程进行端口扫描运行截图(一)设计目的在快速扫描的同时提高准确性并减少资源消耗2. 解决端口扫描效率低下的问题3. 减少多线程或多进程扫描的资源消耗4. 解决SYN等半连接扫描结果不准确的问题5. 图形化界面(二)量化效率及比较扫描模式端口数耗时协程模式6553515-20s多线程+SYN扫描(1000个线程)102420-25s(三)代码和功能详解1.代码拆分(1)核心代码部分执行一个端口扫描 函数 task异步调用(协程) 函数原创 2021-07-21 23:31:20 · 188 阅读 · 0 评论 -
Shiro反序列化漏洞利用笔记
Shiro反序列化漏洞利用笔记Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理。目前在Java web应用安全框架中,最热门的产品有Spring Security和Shiro,二者在核心功能上几乎差不多,但Shiro更加轻量级,使用简单、上手更快、学习成本低,所以Shiro的使用量一直高于Spring Security。产品用户量之高,一旦爆发漏洞波及范围相当广泛,研究相关漏洞是很有必要的。一、Shiro反序列化漏洞1.1 安全框架Apache S原创 2020-12-11 01:04:08 · 635 阅读 · 3 评论 -
生成器
def func():print('第一次')yield 1 # 能返回多次值# print('第2次')yield 2 # 能返回多次值# print('第3次')yield 3 # 能返回多次值# print('第4次')yield 4 # 能返回多次值# print('第5次')yield 5 # 能返回多次值g = func()print(g)#生成器就是迭代器g.iter()res = g.next()print(res)def my_range(sta原创 2020-11-02 23:59:08 · 633 阅读 · 0 评论 -
迭代器
while True:‘’‘每一次重复与上次有关联’’’count = 0while count<5:print(count)count+=12 为什么要有迭代器迭代器是用来迭代去之的工具,而涉及到把多个值循环取出来的类型有:列表 字符串 元组 集合 文件l = ['egon','liu','alex']i = 0while i < len(l): print(l[i]) i+=1上述迭代取值的方式值适用于索引的数据类型:列表 字符串 元组为了解决基于原创 2020-11-02 23:11:59 · 73 阅读 · 0 评论 -
有参装饰器
from functools import wrapsimport timedef index(x,y,z): #被装饰对象# time.sleep(3)print(‘index %s %s %s’ %(x,y,z))def outter(func):@wraps(func) #把func的属性赋值给wrapperdef wrapper(*args,**kwargs):res = func(*args,**kwargs)return res#手动将原函数的属性赋值给wrapper函数原创 2020-11-02 21:38:23 · 121 阅读 · 0 评论 -
文件处理
10、文件处理目录:一 引入二 文件操作的基本流程2.1 基本流程2.2 资源回收与with上下文管理2.3 指定操作文本文件的字符编码三 文件的操作模式3.1 控制文件读写操作的模式3.1.1 案例一:r 模式的使用3.1.2 案例二:w 模式的使用3.1.3 案例三:a 模式的使用3.1.4 案例四:+ 模式的使用(了解)3.2 控制文件读写内容的模式3.2.1 案例一:t 模式的使用3.2.2 案例二: b 模式的使用原创 2020-10-28 22:06:50 · 84 阅读 · 0 评论 -
字符编码
9、字符编码目录:引子知识储备三大核心部件文本编辑器读取文件内容的流程python解释器执行文件的流程总结字符编码介绍什么是字符编码字符编码的发展史阶段一:一家独大阶段二:诸侯割据、天下大乱阶段三:分久必合编码与解码utf-8的由来字符编码的应用4.1 文本编辑器nodpad++存取文本文件4.2 python解释器执行文件的前两个阶段4.3 python解释器执行文件的第三个阶段4.4 字符串encode原创 2020-10-28 22:05:38 · 647 阅读 · 0 评论 -
基本数据类型及内置方法
8、基本数据类型及内置方法目录:引子数字类型int与float定义类型转换使用字符串定义类型转换使用优先掌握的操作需要掌握的操作了解操作列表定义类型转换使用优先掌握的操作了解操作元组作用定义方法类型转换使用字典定义类型转换使用优先掌握的操作需要掌握的操作集合作用定义类型转换使用关系运算原创 2020-10-28 22:04:18 · 100 阅读 · 0 评论 -
流程控制
7、Python语法入门之流程控制目录:引子分支结构什么是分支结构为什么要用分支结构如何使用分支结构if 语法if 应用案例循环结构什么是循环结构为什么要用循环结构如何使用循环结构while循环语法while循环应用案例for 循环语法for 循环应用案例视频链接一 引子:流程控制即控制流程,具体指控制程序的执行流程,而程序的执行流程分为三种结构:顺序结构(之前我们写的代码都是顺序结构)、分支结原创 2020-10-28 22:02:45 · 118 阅读 · 0 评论 -
用户交互、运算符
6、Python语法入门之与用户交互、运算符目录一 程序与用户交互1.1 什么是与用户交互?1.2 为什么要与用户交互?1.3 如何与用户交互1.3.1 输入input1.3.2 输出print1.3.3 输出之格式化输出什么是格式化输出为什么要格式化输出?如何格式化输出?二 基本运算符2.1 算术运算符2.2 比较运算符2.3 赋值运算符2.3.1 增量赋值2.3.2 链原创 2020-10-28 22:01:33 · 90 阅读 · 0 评论 -
Python垃圾回收机制
5、Python语法入门之垃圾回收机制目录:一 引入二、什么是垃圾回收机制?三、为什么要用垃圾回收机制?四、理解GC原理需要储备的知识4.1、堆区与栈区4.2 直接引用与间接引用五、垃圾回收机制原理分析5.1、引用计数5.2、引用计数的问题与解决方案5.2.1 问题一:循环引用5.2.2 解决方案:标记-清除5.2.3 问题二:效率问题5.2.4 解决方案:分代回收一 引入解释器在执行到定义变量的语法时,会申请内存空间来原创 2020-10-28 22:00:03 · 149 阅读 · 0 评论 -
Python基本数据类型
4、Python语法入门之基本数据类型目录一 引子二 数字类型2.1 int整型2.1.1 作用2.1.2 定义2.2 float浮点型2.2.1 作用2.2.2 定义2.3 数字类型的使用三 字符串类型str3.1 作用3.2 定义3.3 使用四 列表list4.1 作用4.2 定义4.3 使用五 字典 dict5.1 作用5.2 定义5.3 使用六 布尔bool6.1原创 2020-10-28 21:58:34 · 123 阅读 · 0 评论 -
Python语法入门之变量
3、Python语法入门之变量目录一 引入二 变量1、什么是变量?2、为什么要有变量?3、怎么使用变量 (先定义、后调用)3.1 变量的定义与使用3.2 变量名的命名规范3.3 变量名的命名风格3.4 变量值的三大特性三 常量1、什么是常量?2、为什么要有常量?3、怎么使用常量?四 视频链接一 引入我们学习python语言是为了控制计算机、让计算机能够像人一样去工作,所以在python这门语言中,所有语法存在的意义都是原创 2020-10-28 21:56:56 · 64 阅读 · 0 评论 -
Python介绍
2、编程语言与Python介绍目录:一 引子二 编程语言分类2.1 机器语言2.2 汇编语言2.3 高级语言2.3.1 编译型 (如C语言)2.3.2 解释型 (如Python)2.4 总结三 python介绍3.1 Python解释器的发展史3.2 Python解释器有哪些种类?四 安装Cpython解释器4.1、下载python解释器4.2、安装python解释器4.3、测试安装是否成功五 第一个pyt原创 2020-10-28 21:52:59 · 121 阅读 · 0 评论 -
计算机核心基础
1、计算机核心基础目录一 引子:1.1 什么是语言?什么是编程语言?为何要有编程语言?1.2 什么是编程?为什么要编程?二 计算机组成原理2.1 什么是计算机?2.2 为什么要用计算机?2.3 计算机的五大组成部分三 操作系统概述3.1 操作系统的由来3.2 系统软件与应用软件3.3 计算机系统三层结构四 视频链接一 引子:接下来一段时间,我们的目标的是:学会使用python这门编程语言来编写ATM+购物车程序,那么问题来了:1.1原创 2020-10-28 21:42:58 · 100 阅读 · 0 评论