一、利用目的
在二进制程序调用iconv这个glibc函数时,或是在PHP从一个字符集转换到另一个字符集调用iconv这个API时,其中当编码转换为ISO-2022-CN-EXT时,iconv有可能会产生缓冲区溢出
二、利用方式
以从UTF-8转义到ISO-2022-CN-EXT为例。要触发此漏洞,我们需要迫使iconv()在输出缓冲区结束前发出一个转义序列。为此,我们可以使用诸如“劄...
一、mips架构概述
1.寄存器
寄存器
别名
用途
$0
$zero
常量0
$1
$at
保留给汇编器(Assembler
Temporary)。在汇编过程中用于一些临时计算,程序员不应直接使用。
$2-$3
\(v0-\)v1
用于存储函数的返回值。
$4-$7
\(a0-\)a3
...
引入
在栈溢出漏洞中,程序没有控制或错误控制输入的大小导致了该漏洞的产生。那我们很自然会想到能不能用try
throw
catch的异常机制来捕获栈溢出行为,从而能更直观的获取错误信息,也在一定程度上避免了一些奇怪的错误产生。但在c++的异常处理实现中,如果我们放任输入数据超过缓冲区大小,冀以异常机制来捕获栈溢出,结果将不尽如人意,甚至还会导致canary保护机制的绕过。
原理&am...
由于最近要打几场awd,一个一个漏洞改过来感觉有点麻烦,所以想到了上沙箱,但是一般好像比赛会禁止上通防,这里想试试看自己通过系统调用写一个沙箱出来,看看能不能瞒天过海。
一、c代码实现沙箱
不是很清楚沙箱具体用到的系统调用,所以先让gpt生成了一段正常用c语言实现的沙箱代码。
1234567891011121314151617181920212223242526272829303132...