一、实验要求 以fork和execve系统调用为例分析中断上下文的切换 分析execve系统调用中断上下文的特殊之处 分析fork子进程启动执行时进程上下文的特殊之处 以系统调用作为特殊的中断,结合中断上下文切换和进程上下文切换分析Linux系统的一般执行过程 二、实验过程 fork系统调用 for ...
分类:
系统相关 时间:
2020-07-05 22:48:37
阅读次数:
71
load initialize 方法的区别1.调用的方式 - load 根据函数地址调用 - initialize 通过objc_msgsend调用 2.调用时刻 - load runtime 加载类,分类的时候调用(只会调用1次) - initialize 是类第一次接受消息的时候调用,每个类只会 ...
分类:
其他好文 时间:
2020-07-03 19:47:25
阅读次数:
55
https://www.cnblogs.com/theseventhson/p/13194646.html 分享了shellcode 的基本原理,核心思路是动态获取GetProcAddress和LoadLibrary函数地址,再通过这两个函数获取其他windows dll提供的函数地址;需要注意的是 ...
指针与函数 指针作为函数的参数 1,效果:在函数的内部可以通过这个参数指针去修改实参变量的值 2,当函数的返回值有多个的时候 3,地址传递 4,如果函数的参数是一个指针,函数希望传递给调用者一个信息,函数内部只会去取指针指向变量的值,并不能修改指针指向变量的值 指针作为函数的返回值 1,指针当然可以 ...
分类:
编程语言 时间:
2020-06-13 19:35:08
阅读次数:
64
简介 分为inline hook 和 iat hook inline HOOK 修改api前5个字节 为 jmp 地址(偏移) 计算公式为(地址):我们函数地址 - 当前地址(api地址)-5 inline HOOK 代码 #include <iostream> #include<Windows.h ...
PWN之ROP系列 基础ROP 32位 ROP 题目来源 PlaidCTF 2013: ropasaurusrex 检查 开了NX,所以用ROP。 看代码 简单的栈溢出。使用 函数泄露一个libc函数的地址,进而泄露libc,计算 函数地址和 字符串地址,然后构造 去getshell。 exp PS ...
分类:
其他好文 时间:
2020-04-27 15:12:09
阅读次数:
108
步骤: 加载函数所在的模块,获取要Hook的函数地址 根据要hook函数的原型创建自己的函数 计算偏移 = 自己创建的函数的地址 - 要Hook的函数地址 - 5,第一个字节为0xE9,构成无条件跳转指令 修改目标页属性,是其可读可写可执行 将前面构造的无条件跳转写入Hook函数地址处,大小为5字节 ...
分类:
其他好文 时间:
2020-04-22 14:50:24
阅读次数:
64
嵌入式编程中,如何使用复杂指针?1.说明在C语言编程中,指针是最容易出错的地方,尤其是在很多指针同时出现的时候,看的眼花缭乱的,本文从嵌入式中常用的复杂角度进行分析,彻底搞清楚C语言中的容易弄错的指针使用问题。2.函数指针与指针函数在C语言中,函数是有他的地址,同理,函数有也有他的地址,如果如果我们把函数的地址赋值给函数指针,那么我们就可以间接的通过函数指针调用函数地址了。函数指针的定义如下:数据
分类:
其他好文 时间:
2020-04-17 15:46:59
阅读次数:
75
题目分析 下载文件后首先使用checksec检查文件保护机制 使用ida查看伪代码 思路明确,让dword_60106C == 1853186401即可输出flag 信息收集 偏移量 sub_400686函数地址 编写脚本 本地测试 靶机测试 ...
分类:
其他好文 时间:
2020-04-03 20:27:11
阅读次数:
202
处理冲突的几种方法: 一、 开放定址法 Hi=(H(key) + di) MOD m i=1,2,...k(k<=m-1)其中H(key)为哈希函数;m为哈希表表长;di为增量序列。 开放定址法根据步长不同可以分为3种: 1)线性探查法(Linear Probing):di=1,2,3,...,m- ...
分类:
其他好文 时间:
2020-03-28 13:05:59
阅读次数:
60