-
在之前的博客中,我们介绍了延迟绑定机制 。我们知道在linux中是利用_dl_runtime_resolve(link_map_obj, reloc_index)来对动态链接的函数进行重定位的,如果我们可以控制相应的参数及其对应地址内容,就可以控制解...
-
在x64中,在 64 位程序中,函数的前 6 个参数是通过寄存器传递的,但是大多数时候,我们很难找到每一个寄存器对应的gadgets。这时,我们就要开始考虑通过调用__libc_csu_init函数来实现传递参数的效果,这种实现方式,称为 ret2c...
-
ret2syscall 即控制程序执行系统调用来获取 shell。当发现没有system可以直接调用,并且发现通过函数泄露地址去猜libc也不太适用,没法泄露和计算libc的加载基地址的时候,就要使用ret2syscall。
一、ret2syscal...
-
在上一篇博客,我们介绍了栈溢出基本原理。 通过劫持返回地址,可以使程序转去执行我们构造好的system函数,进而执行攻击。但如果没有直接的后门,且没有直接发现system函数该怎么办呢?我们需要知道:system 函数属于 libc,而 libc.s...
-
在函数调用过程中,栈(Stack)扮演着重要的角色。它在内存中用于管理函数调用的相关信息,包括参数传递、返回地址和局部变量等。栈的主要作用:
保存参数:当一个函数被调用时,函数的参数会被压入栈中。这样做的目的是为了将函数调用所需的参数传递给被调用...
-
使用Hexo + GitHub 搭建博客具有以下好处
1、简单易用:Hexo是一个基于Node.js的静态网站生成器,它简化了博客搭建和部署的流程。通过Hexo,可以使用Markdown编写文章,并自动生成静态HTML页面。
2、速度快:Hexo生...