thinkphp5.0.X反序列化利用链审计

前言 看完了thinkphp5.1.X反序列化利用链,现在来看thinkphp5.0.X反序列化利用链,难度的话要比上一个要高一些,这才好玩233,总呆在舒适区也没啥意思。 0x01 安装compose一把梭 composer create-project topthink/think=5.0.14 tp5.0.14 环境: PHP-7.0.12-NTS + Apache 在5.1版本中我们pop链的出口是Request类的__call方法,可以直接调用,但是在5.0中 $hook[$met
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

RabbitMQ学习(二):RabbitMQ的基本概念

RabbitMQ相关概念 RabbitMQ是一个Erlang开发的AMQP(Advanced Message Queuing Protocol,高级消息队列协议)的开源实现。是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在。 主要特征 可靠性:持久化、传输确认、发布确认等机制来保证可靠性。 扩展性:支持动态扩展集群中的节点 高可用:队列可在集群中设置镜像,部分节点出现问题仍然可用 多协议:AMQP协议、STOMP、MOT
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

Pytest系列(6) - conftest.py的详细讲解

如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 什么是conftest.py 可以理解成一个专门存放fixture的配置文件 实际开发场景 多个测试用例文件(test_*.py)的所有用例都需要用登录功能来作为前置操作,那就不能把登录功能写到某个用例文件中去了 如何解决上述场景问题? conftest.py的出现,就是为了解决上述问题,单独管理一些全局的fixture conf
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

数据科学实战(一):统计推断、探索性数据分析和数据科学工作流程

1.前言 在你打算成为一名数据科学家时,以下技能是必须首先具备的:统计学、线性代数和一些编程技能。 同时你还需要发展以下技能:数据预处理、数据再加工、数据建模、编码、可视化和有效沟通,这些技能往往是相辅相成的 1.1 统计推断 从现实世界到数据,再由数据到现实世界的流程就是统计推断的领域。 更准确地说,统计推断这门学科主要关注如何从随机过程产生的数据中提取信息,它是流程、方法和理论的统一。 1.2 总体和样本 在统计推断中,总体并不特指人口,它指的是一组特定的对象或单位 如果我们可以度量和提取
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

python之模块分类

模块的分类 (1)标准库(内置模块) python自带的模块,例如:time,datetime python中常用的时间的表示方式:格式化后的字符串,时间戳,元组 #Author:Anliu import time,datetime print(time.time()) #获取时间戳 print(time.localtime()) #本地时间 UTC+8,元组的形式呈现 time.sleep(2) #程序停2秒 print(time.gmtime()) #UTC时间,元组的
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

选课系统初见

选课系统: # coding:utf-8 from db import db_handler # 父类 class Base: # 保存数据(对象)方法 def save_obj(self): db_handler.save(self) # 查看数据(对象)方法 @classmethod def select_obj(cls, obj_name): obj = db_handler.select(cls, obj_n
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

十大排序之桶排序

public class RadixSort { public static void mai
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

打擂和选择排序

首先介绍一种打擂的思想。 擂台上有变量a,变量b与a打擂台,b比a大(或小)则b留在擂台上。 不妨把擂台看成一个变量。此后每个数都与变量中的数比较,符合的留在变量中。 选择排序的逻辑与冒泡类似,只不过把最值存放在变量中,每一次比较都可能会改变变量的值。 import java.util.Arrays; public class Demo02 { public static void main(String[] args) { int a[]={10,2,88,92,7
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

将文字拆成拼音得到首字母(返回多音字)

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Text.RegularExpressions; namespace PinYin { class Pinyin { /// <summary> /// 在指定的字符串列表CnStr中检索符合拼音索引字符串 /// </summa
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

tensorflow笔记1_入门案例

这是官网的一个入门案例,识别手写数1-9。 加载mnist数据集 import tensorflow as tf minist=tf.keras.datasets.mnist (x_train,y_train),(x_test,y_test)=minist.load_data() 然后会报一个错误 load_data是去谷歌的服务器上下载数据,所以不能开学上网的话貌似是连不上的。 可以去网上找一个mnist.npz下载到本地。 然后改写为 path='C:/Users/.../Document
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

ActiveMQ学习第一篇:Hello-ActiveMQ

ActiveMQ简介 ActiveMQ是什么 ActiveMQ是Apache推出的一款开源的,完全支持JMS1.1和J2EE1.4规范的JMS Provider实现的消息中间件(Message Oriented Middleware,MOM) ActiveMQ能干什么 最主要的功能就是:实现JMS Provider,用来帮助实现高可用、高性能、可伸缩、异步、解耦、易用和安全的企业级面向消息服务中间件的系统. 消息中间件的特点: 消息异步接受,类似手机短信的行为,消息发送者不需要等待消息接受者的
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

第二次作业:最大连续子数组和(最大子段和)

作业公共信息区 从本次作业开始请所有同学将下面表格放在作业开始部分居中显示 博客信息 沈阳航空航天大学计算机学院2020软件工程作业 作业要求 https://edu.cnblogs.com/campus/sau/Computer1701-1705/homework/10583 课程目标 熟悉一个“高质量”软件的开发过程 作业目标 单元测试练习 最大连续子数组和(最大子段和) 背景 问题: 给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

给自己一个目标

给自己一个目标 emmmmm... 看了一个篇文章,现在三流大学学软件工程,以后该怎么规划自己的职业生涯? 看到最后 是这么说的: 你应该给自己一个目标,是出国。是考研,还是做项目。 每一个目标都前途无量,关键在于你的努力 想到自己接本后,毕业就过了人生 100 年的1/4了,满脸苦涩 对于长远目标 毫无思绪。 自己在假期干过 4 个月 的搬砖工 主搬 WX 小程序的砖 插入一个小片段 这 4 个月的一些总结: 认识到了一个团队的必要性 和 团队里不同人物会产生的多种影响力。 还有员工之间的情
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

python入行028(封装)

1 引入    面向对象编程有三大特性:封装、继承、多态,其中最重要的一个特性就是封装。封装指的就是把数据与功能都整合到一起,听起来是不是很熟悉, 没错,我们之前所说的”整合“二字其实就是封装的通俗说法。除此之外,针对封装到对象或者类中的属性,我们还可以严格控制对它们的访问,分两步实 现:隐藏与开放接口。 2 隐藏属性   Python的Class机制采用双下划线开头的方式将属性隐藏起来(设置成私有的),但其实这仅仅只是一种变形操作,类中所有双下滑线开头的属性都 会在类定义阶段、检测语法时自动
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

老爹的网课

企业网课培训课程 第一节 第二节 第三节 第四节 第五节 第六节 第七节 第八节 第九节
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

data数据复杂时怎么setData

_getGoodsData(type) { const page = this.data.goods[type].page + 1 getGoodsData(type, page).then(res => { const list = res.data.data.list const oldList = this.data.goods[type].list oldList.push(...list) //不用伪数组的话会变成一个二维数组
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

十大排序之归并排序

// TODO 归并排序public class MergeSort { public sta
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

软件工程第二次

一.题目要求 ###题目(1):最大连续子数组和(最大子段和) ###背景 ###问题: 给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整数均为负数时定义子段###和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+…+a[j]},1<=i<=j<=n ###例如,当(a[1],a[2],a[3],a[4],a[5],a[6])=(-2,11,-4,13,-5,-2)时
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

MySQL 分组查询-GROUP BY

分组查询语法 select 分组函数,列 from 表名 【where】 筛选条件 -- where的位置可以放在group by的前面或者后面,两者有不同含义 group by 分组的列表 【having】筛选条件 【order by】 --如果使用到排序,order by语句基本在最后 where的使用特点:1, 数据源 位置 关键字 分组前筛选 来源于‘from’表中 group by前 where 分组后筛选 来源于分组函数计算过结果集 group by后 having 2,group
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0

线索二叉树的线索化及遍历

摘要 定义和数据结构 线索化 遍历 定义和数据结构 定义 结点结构中含有线索的的二叉树称为线索二叉树。 若结点有左子树,则其lchild域指示其左子,否则令lchild域指示其前驱;若结点有右子树,则其rchild域指示其右子,否则令rchild域指示其后继。 为了避免混淆,需要增加两个标志域LTag和RTag,标志域为0表示结点后接指针,标志位为1表示结点后接线索。 数据结构 typedef struct BiThrNode { ElemType data; struct B
分类: 其他 发布时间: 04-08 23:01 阅读次数: 0