随笔分类 -  binary hacks

binary hacks读数笔记(堆、栈 VMA的分布)
摘要:一、首先看一个简单的程序: gcc -static SectionMapping.c -o SectionMapping.elf/usr/bin/ld: cannot find -lcyum install glibc-static 查看一下静态链接之后,SectionMapping.elf的段分布 阅读全文

posted @ 2019-04-20 14:49 wsw_seu 阅读(376) 评论(0) 推荐(0) 编辑

binary hacks读数笔记(共享库)
摘要:共享库从文件结构上来讲,与共享对象没什么区别。Linux下,共享库就是普通的ELF共享对象。 1、共享库命名: libname.so.x.y.z :其中最前面使用前缀lib,中间是库的名字和后缀“so”。最后三个数字组成的是版本号。其中,“x”表示主版本号,“y”表示次版本号,"z"表示发布版本号。 阅读全文

posted @ 2019-04-04 16:43 wsw_seu 阅读(176) 评论(0) 推荐(0) 编辑

内嵌汇编简介(转)
摘要:as语法:——————宏 像C语言一样,as也支持宏。但是,汇编程序中所包含的头文件不能包含C语言中的函数,数据结构等内容,而只能定义常量,汇编指令等汇编器认识的内容。 宏的存在说明as在编译时存在预处理这一步骤,但是需要注意,如果所写的汇编代码中包含宏指令的话,则一定要将源文件的后缀名使用大写的S 阅读全文

posted @ 2019-04-03 17:16 wsw_seu 阅读(641) 评论(0) 推荐(0) 编辑

binary hacks读数笔记(dlopen、dlsym、dlerror、dlclose)
摘要:1、dlopen是一个强大的库函数。该函数将打开一个动态库,并把它装入内存。该函数主要用来加载库中的符号,这些符号在编译的时候是不知道的。比如 Apache Web 服务器利用这个函数在运行过程中加载模块,这为它提供了额外的能力。一个配置文件控制了加载模块的过程。这种机制使得在系统中添加或者删除一个 阅读全文

posted @ 2019-04-03 16:24 wsw_seu 阅读(848) 评论(0) 推荐(0) 编辑

binary hacks读数笔记(readelf基本命令)
摘要:一、首先对readelf常用的参数进行简单说明: readelf命令是Linux下的分析ELF文件的命令,这个命令在分析ELF文件格式时非常有用,下面以ELF格式可执行文件test为例详细介绍: 1、readelf -v 显示版本 2、readelf -h 显示帮助 3、readelf -a tes 阅读全文

posted @ 2019-04-01 16:55 wsw_seu 阅读(546) 评论(0) 推荐(0) 编辑

binary hacks读数笔记(装载)
摘要:1、地址空间 在linux系统中,每个进程拥有自己独立的虚拟地址空间,这个虚拟地址空间的大小是由计算机硬件决定的,具体地说,是由CPU的位数决定的。比如,32位硬件平台决定的虚拟地址空间大小:0——232-1。即0x00000000——0xFFFFFFFF。 在linux系统中,整个4GB内存空间被 阅读全文

posted @ 2019-04-01 10:21 wsw_seu 阅读(237) 评论(0) 推荐(0) 编辑

binary hacks读数笔记(ld 链接讲解 二)
摘要:这块将介绍一下ld链接命令的具体使用。ld的作用:ld是GNU binutils工具集中的一个,是众多Linkers(链接器)的一种。完成的功能自然也就是链接器的基本功能:把各种目标文件和库文件链接起来,并重定向它们的数据,完成符号解析。链接其实主要就是完成四个方面的工作:storage alloc 阅读全文

posted @ 2019-03-30 16:14 wsw_seu 阅读(694) 评论(0) 推荐(0) 编辑

binary hacks读数笔记(ld 链接讲解 一)
摘要:首先我们先看两段代码: a.c b.c gcc -c a.c b.c 得到a.o 与b.o 1、查看a.o: 2、查看b.o: 3、链接之前,VMA与LMA都是0,即目标文件的虚拟空间地址与装载地址都无效。经过链接ld过程,才会给链接文件分配虚拟地址空间。 ld a.o b.o -e main -o 阅读全文

posted @ 2019-03-29 17:30 wsw_seu 阅读(263) 评论(0) 推荐(0) 编辑

binary hacks读数笔记(nm命令)
摘要:nm命令(names):输出包含三个部分:1 符号值。默认显示十六进制,也可以指定; 2 符号类型。小写表示是本地符号,大写表示全局符号(external); 3 符号名称。 例如:nm SimpleSection.o 阅读全文

posted @ 2019-03-29 10:44 wsw_seu 阅读(174) 评论(0) 推荐(0) 编辑

binary hacks读数笔记(readelf命令)
摘要:可以用readelf命令来查看elf文件内容,跟objdump相比,这个命令更详细。 1、 readelf -h SimpleSection.o 2、readelf -S 查看段表结构 4、查看段表字符串表内容 od --skip-bytes 0x000003b8 --read-bytes 0x61 阅读全文

posted @ 2019-03-29 10:39 wsw_seu 阅读(430) 评论(0) 推荐(0) 编辑

binary hacks读数笔记(objdump命令)
摘要:一、首先看一下几个常用参数的基本含义: objdump命令是Linux下的反汇编目标文件或者可执行文件的命令,它还有其他作用,下面以ELF格式可执行文件test为例详细介绍: 1、objdump -f test 显示test的文件头信息 2、objdump -d test 反汇编test中的需要执行 阅读全文

posted @ 2019-03-26 15:37 wsw_seu 阅读(405) 评论(0) 推荐(0) 编辑

binary hacks读数笔记(od命令)
摘要:Linux od命令用于输出文件内容。 od指令会读取所给予的文件的内容,并将其内容以八进制字码呈现出来 -t<输出格式>或--format=<输出格式> 设置输出格式。 实例 创建 tmp 文件: 使用 od 命令: 使用单字节八进制解释进行输出,注意最左侧一列表示距离最开始的偏移量 使用ASCI 阅读全文

posted @ 2019-03-24 22:49 wsw_seu 阅读(252) 评论(0) 推荐(0) 编辑

binary hacks读数笔记(file命令与magic file)
摘要:file命令的作用是用于检验文件的类型,并打印至终端。file命令检验文件类型按以下顺序来完成: 检验文件系统(Filesystem)中支持的文件类型文件系统支持的文件类型指的是通过ls -l中第一个字符表示的文件类型:-(regular):正规文件(包括文本文件(ASCII)(会打印text),可 阅读全文

posted @ 2019-03-24 22:13 wsw_seu 阅读(251) 评论(0) 推荐(0) 编辑

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8
点击右上角即可分享
微信分享提示