浮点数是表示实数的一种方法. 它的思想类似于科学计数法, 即将数字写成 $x = (-1)^S M \cdot 2^E$ 的形式. 那么需要记录 符号 $S$, 尾数 $M$ 和指数或阶(码) $E$.
IEEE 754 浮点数表示
Pwn ret2text in x86
原理
ret2text 的意思是返回到特定代码段.
程序被装载后, 在(虚拟)内存中是这样的:

调用一个函数的时候, 内存中栈上的数据是这样排列的:

其中, 返回地址 指的是函数执行完成之后, 要执行的下一条指令的地址.
可以看到, 栈是从高位向低位增长的, 而数组是从低位向高位填充的. 也就是说, 如果 数组越界 不加处理, 我们可以 覆盖掉返回地址, 从而控制程序的运行.
然而, 在开启了 栈不可执行保护 的程序中, 我们不能够在栈中写入 shellcode, 覆盖掉返回地址一般来说是程序代码段中的内容.
x86 汇编指令
咕
call 指令先 push 下一个命令的地址(返回地址), 再 jmp.
leave 是恢复上一个栈桢, ret 是 pop eip.
Ubuntu 安装 rizin
向来对 “安装教程” 没啥好感, 安装这个简单得不得了的事还要教程? 官网没有 installation? 直到我 rizin 装了很久…
记一次 Ubuntu 磁盘空间消失
某天晚上, 我正在冲浪, 突然系统提示我磁盘空间没了. 我寻思这咋可能. 明明不久前我还刚删了一堆东西. 然后 df 一下, 好家伙, 真没了.
目标文件的 ELF 结构
记录目标文件 ELF 结构的学习和实验
概率论与数理统计记忆公式和知识点理解
背就完事了!




