培训记录(三)
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即可