吾爱测试
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
python读取csv文件并进行端口扫描源码
# python读取csv文件并进行端口扫描源码 import csv import socket from concurrent.futures.thread import ThreadPoolExecutor import re def 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 · 217 阅读 · 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 · 562 阅读 · 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 · 512 阅读 · 0 评论 -
使用协程进行端口扫描
使用协程进行端口扫描 运行截图 (一)设计目的 在快速扫描的同时提高准确性并减少资源消耗 2. 解决端口扫描效率低下的问题 3. 减少多线程或多进程扫描的资源消耗 4. 解决SYN等半连接扫描结果不准确的问题 5. 图形化界面 (二)量化效率及比较 扫描模式端口数耗时协程模式6553515-20s多线程+SYN扫描(1000个线程)102420-25s (三)代码和功能详解 1.代码拆分 (1)核心代码部分 执行一个端口扫描 函数 task 异步调用(协程) 函数原创 2021-07-21 23:31:20 · 279 阅读 · 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 · 763 阅读 · 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 · 678 阅读 · 0 评论 -
迭代器
while True: ‘’‘每一次重复与上次有关联’’’ count = 0 while count<5: print(count) count+=1 2 为什么要有迭代器 迭代器是用来迭代去之的工具,而涉及到把多个值循环取出来的类型有: 列表 字符串 元组 集合 文件 l = ['egon','liu','alex'] i = 0 while i < len(l): print(l[i]) i+=1 上述迭代取值的方式值适用于索引的数据类型:列表 字符串 元组 为了解决基于原创 2020-11-02 23:11:59 · 154 阅读 · 0 评论 -
有参装饰器
from functools import wraps import time def index(x,y,z): #被装饰对象 # time.sleep(3) print(‘index %s %s %s’ %(x,y,z)) def outter(func): @wraps(func) #把func的属性赋值给wrapper def wrapper(*args,**kwargs): res = func(*args,**kwargs) return res #手动将原函数的属性赋值给wrapper函数原创 2020-11-02 21:38:23 · 188 阅读 · 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 · 130 阅读 · 0 评论 -
字符编码
9、字符编码 目录: 引子 知识储备 三大核心部件 文本编辑器读取文件内容的流程 python解释器执行文件的流程 总结 字符编码介绍 什么是字符编码 字符编码的发展史 阶段一:一家独大 阶段二:诸侯割据、天下大乱 阶段三:分久必合 编码与解码 utf-8的由来 字符编码的应用 4.1 文本编辑器nodpad++存取文本文件 4.2 python解释器执行文件的前两个阶段 4.3 python解释器执行文件的第三个阶段 4.4 字符串encode原创 2020-10-28 22:05:38 · 715 阅读 · 0 评论 -
基本数据类型及内置方法
8、基本数据类型及内置方法 目录: 引子 数字类型int与float 定义 类型转换 使用 字符串 定义 类型转换 使用 优先掌握的操作 需要掌握的操作 了解操作 列表 定义 类型转换 使用 优先掌握的操作 了解操作 元组 作用 定义方法 类型转换 使用 字典 定义 类型转换 使用 优先掌握的操作 需要掌握的操作 集合 作用 定义 类型转换 使用 关系运算原创 2020-10-28 22:04:18 · 162 阅读 · 0 评论 -
流程控制
7、Python语法入门之流程控制 目录: 引子 分支结构 什么是分支结构 为什么要用分支结构 如何使用分支结构 if 语法 if 应用案例 循环结构 什么是循环结构 为什么要用循环结构 如何使用循环结构 while循环语法 while循环应用案例 for 循环语法 for 循环应用案例 视频链接 一 引子: 流程控制即控制流程,具体指控制程序的执行流程,而程序的执行流程分为三种结构:顺序结构(之前我们写的代码都是顺序结构)、分支结原创 2020-10-28 22:02:45 · 181 阅读 · 0 评论 -
用户交互、运算符
6、Python语法入门之与用户交互、运算符 目录 一 程序与用户交互 1.1 什么是与用户交互? 1.2 为什么要与用户交互? 1.3 如何与用户交互 1.3.1 输入input 1.3.2 输出print 1.3.3 输出之格式化输出 什么是格式化输出 为什么要格式化输出? 如何格式化输出? 二 基本运算符 2.1 算术运算符 2.2 比较运算符 2.3 赋值运算符 2.3.1 增量赋值 2.3.2 链原创 2020-10-28 22:01:33 · 138 阅读 · 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 · 229 阅读 · 0 评论 -
Python基本数据类型
4、Python语法入门之基本数据类型 目录 一 引子 二 数字类型 2.1 int整型 2.1.1 作用 2.1.2 定义 2.2 float浮点型 2.2.1 作用 2.2.2 定义 2.3 数字类型的使用 三 字符串类型str 3.1 作用 3.2 定义 3.3 使用 四 列表list 4.1 作用 4.2 定义 4.3 使用 五 字典 dict 5.1 作用 5.2 定义 5.3 使用 六 布尔bool 6.1原创 2020-10-28 21:58:34 · 204 阅读 · 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 · 135 阅读 · 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 · 173 阅读 · 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 · 156 阅读 · 0 评论