标签:csdn 工作 复杂 共享库 malloc 虚拟 class 大小 避免
(1)计算机提供不同层次的抽象表示,来隐藏实际实现的复杂性
(2)程序员必须知道编译系统是如何工作的原因:
(3)运行hello程序
(4)并发是一个通用的概念,指一个同时具有多个活动的系统;并行指的是用并发使一个系统运行的更快
(5)意识到高速缓存的存在,可以利用高速缓存将程序的性能提高一个数量级。
(6)虚拟内存为每个进程提供一个假象,即每个进程都在独占的使用主存。每个进程看到的是一致的存储器,称为虚拟地址空间。进程的虚拟地址空间从下往上(从小到大)依次放的是:
缓冲区溢出错误如何造成免安全漏洞?
参考缓冲区溢出攻击原理分析,结合学习过的栈帧变化,知道了缓冲区溢出攻击会通过某种方式修改eip的值,让其指向恶意代码。当buf变量发生溢出时会往高地址空间覆盖,先是覆盖本函数的其它局部变量,然后是调用函数的ebp,再次是eip,最后是调用函数的栈空间。如果读取的文件内容覆盖掉eip,就可以修改程序的执行路径(传入一个超长的带有shellcode的字符缓冲,覆盖栈中的EIP值,这样当函数执行完成返回后就会返回到有shellcode的地方,执行恶意代码)。
标签:csdn 工作 复杂 共享库 malloc 虚拟 class 大小 避免
原文地址:http://www.cnblogs.com/Jspo/p/7898976.html