ESP是栈顶指针 Extended Stack Pointer
EBP是基址指针 Extend Base Pointer
ESP就是一直指向栈顶的指针,而EBP只是用于存取某时刻的栈顶指针,以方便对栈的操作
使用__stdcall的话,调用侧从右往左压栈函数参数,但不退栈,需要函数退栈
使用__cdecl的话,调用侧从右往左压栈函数参数,并且在调用后,调用侧主动执行退栈...
分类:
其他好文 时间:
2015-04-15 09:37:30
阅读次数:
153
1、debug版int main(){011752E0 push ebp 011752E1 mov ebp,esp 011752E3 sub esp,0C0h 011752E9 push ebx 011752EA push...
分类:
编程语言 时间:
2015-04-07 11:35:57
阅读次数:
305
《链接、装载与库》里的一个错误:关于调用栈按照原文中描述做了一个PPT:每次执行push指令时,esp都会减4(因为栈是向低地址增长的),每次pop时esp都会加4。指令:push a指令:push b指令: 1.把main方法当前指令的下一条指定地址(即return address))push.....
分类:
其他好文 时间:
2015-04-06 23:15:40
阅读次数:
231
虽然逆向涉及的知识比较多,但是如果把应用限定在CTF题目之类的话,我们这里对经常用到的一些基础知识做一个总结。 思路来源:Blue-lotus&信协集训&c++安全编码&0day安全&Google stack frame 的基本概念 ebp 的作用是? ebp和esp是栈的顶端、底端的标志 ebp ...
分类:
其他好文 时间:
2015-04-05 21:44:45
阅读次数:
407
最近新买了个固态硬盘,先装了个Win 7系统,现在装的系统和以前装系统唯一的区别是引导不是以前的MBR,而是最新看似是个趋势的GPT+UEFI方式。
win 7 装完啦,还是和以往的一样装 Ubantu (Ubantu 12.04),ubantu 引导磁盘扇区选择的是装win7是的那个引导磁盘(ESP分区的那个盘);
ubantu 安装先是断网安装,安装到一半是抛出错误说GRUB 啥啥...
笔记比较零碎
只附上反汇编了。。。有待日后编辑完善
1: #include
2:
3: int main()
4: {
00401330 push ebp
00401331 mov ebp,esp
00401333 sub esp,6Ch
00401336 push ebx
004013...
分类:
其他好文 时间:
2015-04-04 15:16:43
阅读次数:
137
跳转
jmp label
call addresss
调用函数先将eip入栈,eip指向函数的地址
esp直接使用栈中的数据
push pop引用堆栈中的数据
程序通常把esp复制到ebp在使用ebp获取call指令之前传递给栈的信息。
function_label:
pushl %ebp
movl %esp , %ebp
...
分类:
其他好文 时间:
2015-04-04 09:21:54
阅读次数:
213
航模遥控,价格要几百。电动门射频遥控。NRF24L01蓝牙Wifi模块ESP
分类:
其他好文 时间:
2015-03-30 22:48:47
阅读次数:
173
父进程fork出子进程: fork经过系统调用,来到了sys_fork,详细过程请参考Linux内核源代码情景分析-系统调用。asmlinkage int sys_fork(struct pt_regs regs)
{
return do_fork(SIGCHLD, regs.esp, ®s, 0);
}int do_fork(unsigned long clone_flags, u...
分类:
系统相关 时间:
2015-03-20 09:21:14
阅读次数:
396
关于MBR、GPT、ESP、MSR、EFI、UEFI和WIN8中SECURE BOOT的基础知识:1.MBR分区表:Master Boot Record,即硬盘主引导记录分区表,只支持容量在 2.1TB 以下的硬盘,超过2.1TB的硬盘只能管理2.1TB,最多只支持4个主分区或三个主分区和一个扩展分...
分类:
其他好文 时间:
2015-03-10 09:01:03
阅读次数:
1590