![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
book
文章平均质量分 89
Angelki
相信自己一定可以的!
展开
-
读书笔记--《程序员的自我修养》第3章:目标文件里有什么(1)
3.1、目标文件的格式 1、目标文件从结构上讲,它是已经编译后的可执行文件格式,只是还没有经过链接的过程,其中可能有些符号或有些地址还没有调整。其实它本身就是按照可执行文件格式存储的。 2、现在PC平台流行的可执行文件格式主要是windows下的PE和Linux下的ELF,他们都是COFF格式的变种。Windows的.obj和Linux的.o文件都是目标文件。其他不太常见的可执行文件格式有In...原创 2018-09-11 17:26:38 · 237 阅读 · 0 评论 -
0day 第10章 --栈中的保护机制:GS
实验环境: winxp sp3 、vs2010 10.1 GS的保护原理 看图就明白了 在vs2010中可通过以下选项选择是否开启GS,默认开启: 以下情况不会进行GS保护: (1) 函数不包含缓冲区 (2) 函数被定义为具有变量参数列表 (3) 函数使用无保护的关键字标记 (4) 函数在第一个语句中包含内嵌汇编代码 (5)缓冲区不是8字节类型且大小小于等于4个字节 针对(3)和(5)...原创 2018-10-11 09:59:58 · 771 阅读 · 5 评论 -
读书笔记--《程序员的自我修养》第2章:编译和链接
一、从源码到可执行文件的过程 分为4个步骤:预处理(prepressing)、编译(compilation)、汇编(assembly)和链接(linking)。如图所示 1、预编译 (1)首先,源代码文件和相关的头文件,会被预编译器预编译为一个.i文件。 对于C++程序来说,它的源代码文件的扩展名可能是.cpp或.cxx,头文件的扩展名可能是.hpp,而预编译后的文件扩展名是.ii。 ...原创 2018-09-11 10:28:32 · 1595 阅读 · 2 评论 -
读书笔记--《程序员的自我修养》第4章:静态链接(1)
本章以 如何将a.c文件与b.c文件链接成一个可执行文件 来探讨如何进行静态链接 其中a.c和b.c文件如下: a.c文件 extern int shared; int main() { int a = 100; swap(&a,&shared); } b.c文件 int shared = 1; void swap(int* a, int* b) ...原创 2018-09-14 12:40:42 · 556 阅读 · 0 评论 -
《恶意代码分析实战》--第三章:动态基础分析
一、虚拟网络环境配置 配置环境:服务器端kali2.0 客户端win7 1、配置inetsim kali自带inetsim,因此只需配置就可以了(但是好像不配置也是可以的……) 配置链接:http://www.cnblogs.com/hyq20135317/p/5515675.html 2、安装ApateDNS 一开始在x...原创 2018-09-13 20:26:44 · 404 阅读 · 0 评论 -
读书笔记--《程序员的自我修养》第一章:简介
一、计算机软件体系结构 二、操作系统和CPU 1、操作系统的功能:提供抽象的接口,管理硬件资源。 2、充分利用CPU的方法 (1)多道程序利用 编写一个监控程序,当程序暂时无法使用CPU时,监控程序就把另外的正在等待CPU资源的程序启动,充分利用CPU。 缺点:程序调度策略太粗糙 (2)分时系统 每个程序运行一段时间后都主动让出CPU给其他程序,使得一段时间内每个程序都有机会运行一...原创 2018-09-10 18:15:32 · 295 阅读 · 0 评论 -
《恶意代码分析实战》--第一章:静态分析基础技术
**请参考大神的链接:https://blog.csdn.net/baidu_41108490/article/details/80298973#commentBox Lab1-1 这里我只是记录我的学习过程** 2、用PEtools打开,查看日期 .exe .dll 发现.exe和.dll两个文件的编译时间只相差了19秒 4,用dependency walker工具打开 ...原创 2018-09-13 20:25:36 · 1964 阅读 · 0 评论 -
读书笔记--《程序员的自我修养》第3章:目标文件里有什么(3)
3.5 链接的接口–符号 在链接中,我们将函数名和变量统称为符号,函数名和变量名就是符号名。 每一个目标文件都有一个符号表,里面记录了目标文件中所有用到的符号。 每一个符号都有一个对应的值,叫做符号值。对于变量和函数来说,符号值就是地址。 符号分为5类。 **(1)本目标文件中定义的全局符号。可以被其他目标文件引用。如fun1、main、global_init_var (2)不在本目标...原创 2018-09-12 13:44:39 · 305 阅读 · 0 评论 -
读书笔记--《程序员的自我修养》第3章:目标文件里有什么(2)
3.4 ELF文件结构描述 ELF文件结构如图所示: ELF目标文件格式最前面是ELF文件头,它包含了描述整个文件的基本属性,如ELF文件版本、目标机器型号、程序入口地址等。接着是ELF文件各个段。 其中ELF文件中与段有关的重要结构是段表。该表描述了ELF文件包含的所有段的信息,如每个段的段名、段长、在文件中的偏移、读写权限及段的其他属性。 3.4.1 文件头 输入命令:$read...原创 2018-09-11 17:54:15 · 257 阅读 · 0 评论 -
0day 第11章--11.6节:利用加载模块之外的地址绕过SafeSEH
实验环境:winxp sp3 vs2010 总结一下入的坑: (1) 变量zero的位置必须在strcpy()的后面,不然strcpy之后会将zero的值覆盖掉,导致zero不为0,触发不了异常。 void test(char * input) { char str[200]; strcpy(str,input); int zero=0; __try{ zero = 1/zer...原创 2018-10-10 22:34:30 · 188 阅读 · 0 评论