摘要: 在使用gdb调试程序的时候,有时候需要设定多个断点,重复执行某些操作,而这些操作写起来比较麻烦,这个时候就应该想起来用gdb命令脚本了,它能够很好的完成这些工作。以设置多个断点为例,我写的命令脚本为---------------------------------------------------#filename: .gdbinit#gdb will read it when startingfile test_gdbscriptset args hellob mainb foor---------------------------------------------------有两种方 阅读全文
posted @ 2013-07-04 17:50 only_eVonne 阅读(1697) 评论(0) 推荐(0) 编辑
摘要: 以堆栈溢出为代表的缓冲区溢出已成为最为普遍的安全漏洞。由此引发的安全问题比比皆是。早在 1988 年,美国康奈尔大学的计算机科学系研究生莫里斯 (Morris) 利用 UNIX fingered 程序的溢出漏洞,写了一段恶意程序并传播到其他机器上,结果造成 6000 台 Internet 上的服务器瘫痪,占当时总数的 10%。各种操作系统上出现的溢出漏洞也数不胜数。为了尽可能避免缓冲区溢出漏洞被攻击者利用,现今的编译器设计者已经开始在编译器层面上对堆栈进行保护。现在已经有了好几种编译器堆栈保护的实现,其中最著名的是 StackGuard 和 Stack-smashing Protectio.. 阅读全文
posted @ 2013-07-04 17:09 only_eVonne 阅读(567) 评论(0) 推荐(0) 编辑
摘要: 使用gdbserver远程调试 1.默认crosstool交叉编译器没有自带gdbserver,需要自行编译 到GNU官方FTP下载,目前最新版的是gdb-6.7.1下载地址:http://ftp.gnu.org/gnu/gdb/ 注:若已有gdbserver,可以直接跳到步骤4 2.编译gdbserver编译GDB源码时只需要编译出gdbserver就可以了,交叉编译器自带arm-linux-gdb(client端)可以使用。gdb-6.7.1# cd gdb-6.7.1/gdb/gdbserver/#./configure --host=arm-linux --prefix=/work.. 阅读全文
posted @ 2013-07-04 11:38 only_eVonne 阅读(1471) 评论(0) 推荐(0) 编辑