python3 切换下载源
pip默认的是源是国外的,网络不好的话,等死个人,还经常中断。所以最好切换成国内的源 1 更改默认的下载源 pip config set global.index-url https://mirrors.aliyun.com/pypi/simple
我用的是阿里云的。速度各方面都不错
2 临时变更下载源 pip install xxxx -i https://mirrors.aliyun.com/pypi/simple
3 国内常用的源 阿里:https://mirrors.aliyu
浅谈php反序列化漏洞
关于php的反序列化漏洞要先说到序列化和反序列化的两个函数,即: serialize() 和unserialize()。 简单的理解: 序列化就是将一个对象变成字符串 反序列化是将字符串恢复成对象 这样做的意义是为了将一个对象通过可保存的字节方式存储起来,同时就可以将序列化字节存储到数据库或者文本当中,当需要的时候再通过反序列化获取 。 另外我们提一下 2016 年的 CVE-2016-7124 绕过 __weakup 漏洞,感兴趣的同学可以自己去查一下,简单来说, 就是当成员属性数⽬⼤于实际
2019牛客暑期多校训练营(第四场)C.sequence(单调栈+线段树)
题面 题意: 找到一个区间\([l,r]\)使得\(min(a_{l...r}) \cdot sum(b_{l...r})\)最大。 思路 先用单调栈预处理出\(a_i\)作为最小值的区间,然后对于每一个\(a_i\),如果是\(a_i<0\),就要查询\(b\)在\([l,r]\)内并且包含\(i\)的最小连续子段和,反之查询最大子段和。我们对\(b\)数组的前缀数组建一棵线段树,如果要查最小子段和,就是\(min(pre_{i...r})-max(pre_{l...i-1})\)反之即为\
嘶吼CTF easy calc
进入之后可以看到我们需要输入一个计算式来得到答案,burpsuite进行抓包之后发现页面来自于calc.php 我们直接访问calc.php页面 发现源代码泄露 可以看到当我们没有输入num值的时候就会显示源代码,否则对输入的num进行eval命令执行,在命令执行之前有黑名单过滤。 我们需要绕过黑名单进行命令执行。 虽然是这样,但是ls不在黑名单执行里面,所以我们先ls一下 返回了403界面。 这里很可能是因为有waf设备保护着输入的参数,这里我们利用php的特性,使用php字符串解析绕过WA
对主席树的理解以及使用
引入 一个长度为\(n\)的数组,有\(m\)次查询,每次查询区间\([l,r]\)内第\(k\)小的元素。 如果使用暴力,肯定不可以 使用线段树?可是我只会查询区间最值啊。 那么我们把问题再次简化一下,查询\([1,n]\)第\(k\)小的元素,要求使用线段树来实现。 权值线段树 为了解决这个问题,我们引入一个名词:权值线段树。那么权值线段树是如何解决上面那个问题的呢? 首先,我们对数组进行离散化处理,离散成为\([1,n]\),然后我们建一颗线段树,线段树的节点存放的即为对应区间的数的个数
LSB隐写加密MISC
没有做过LSB隐写加密的题目,在buuoj上面做到了就记录一下,估计后面很长的时间都会在这个平台上面训练自己的MISC和WEB,是很好的平台,把很多比赛的原题和安恒的周赛的复现了。 题目是MISC里面的 前面的zip隐写就不说了,压缩包注释里面的东西可见之后就可以拿到压缩包密码,接着我们获得了一张女神的照片。 看师傅们的博客知道了这里是LSB隐写加密,github上面有LSB解密的脚本。 https://github.com/livz/cloacked-pixel 我们下载到本地之后,运行的时
2019牛客暑期多校D.Big Integer
题面 题意: 定义\(A(n)\)为\(n\)个1构成的数字,如\(A(3)=111\),计算有多少对\((i,j)\)使得\(A(i^j) \% p = 0\)。 思路: 通过枚举发现是有上面的等式是有循环节的,而且循环节是\(p-1\)的因子,因此暴力枚举计算出循环节\(d\),接下来就是求有多少对\(i^j \% d=0\)。 将\(d\)进行质因子分解,得 \[ d={p_1}^{q_1} \cdot {p_2}^{q_2} \cdot {p_3}^{q_3} ...{p_k}^{q_
HDU6627 equation
题目链接 题意: 两个长度为\(n\)的数组\(a\)和\(b\)和一个正整数\(C\),计算有多少个\(x\)满足: \[ \sum_{i=1}^n|a_i \cdot x+b_i|=C \] 思路: 该函数为分段函数,每段的转折点为\(-\frac{b_i}{a_i}\),先把转折点排序,计最开始的函数值为\(x \cdot suma + sumb\),每过一段,就会有一个\(|a_i \cdot x+b_i|\)由\(a_i \cdot x+b_i\)变为\(-a_i \cdot x -
今日推荐
周排行