培训记录(三)

2016年现状, 服务器数量

google 、亚马逊、微软100w台、facebook 60w台、腾讯50w台

 

gdb调试寄存器、栈

1.info frame1   infofram2 查看栈溢出

栈溢出的原因: 递归

2.寄存器 $rdi, $rsi, $rdx, $rcx, $r8, $r9 对应函数前6个参数, 超过6个的参数,从第7个开始入栈

   $rax 函数返回值

  利用寄存器变量,可以调被优化后的变量、函数返回值

3.利用汇编代码, 查看eax ebx 等,寄存器变量

4. 栈开启新一段帧时,会先压入上一帧的栈底地址,代码地址,共16个字节, 所以利用当前栈的esp-16, 可以得到当前帧的开始地址. 

   利用它可以确认栈改写发生在哪一个帧内.

 

linux下使用eclipse c++开发

1.windows上安装xming

2.linux上安装eclipse

3.securecrt 打开 x11消息转发

4.linux上启动eclipse即可

 

posted @ 2016-03-23 14:15  JinleiZhang  阅读(135)  评论(0编辑  收藏  举报