【转帖】Linux查看二进制文件:一招制敌(linux二进制查看文件)

linux,查看,二进制,文件,一招 · 浏览次数 : 0

小编点评

**二进制文件查看工具介绍** **1. file 命令** - 用于确定文件类型。 - 显示文件的类型为 ELF 64-bit LSB executable。 **2. hexdump 命令** - 将文件的二进制数据以十六进制格式输出。 - 可以帮助人们更好地理解二进制文件的结构。 **3. strings 命令** - 可用于在二进制文件中查找ASCII字符串。 - 可以帮助我们找到字面上的秘密,如二进制文件中的字符串。 **4. objdump 命令** - 解析目标文件、可执行文件、动态链接库等二进制文件。 - 可以查看文件的目标代码、符号表、重定位表等信息。 - 可以帮助我们了解程序的内部结构和工作原理。

正文

https://www.dbs724.com/146055.html

 

一招制敌:学会Linux查看二进制文件

 

在Linux操作系统中,二进制文件是一种常见的文件类型。如果你想深入了解一个二进制文件,可能需要查看其内容。但是,二进制文件是一种机器可读的文件,可能很难直接理解,因此需要特殊的工具来解析和查看。本文将介绍一些Linux下的工具,帮助你查看二进制文件。

 

1. file命令

 

file命令可以用来确定一个文件的类型,包括二进制文件、纯文本文件、图像文件等等。在Linux中,file命令是一个很有用的工具,用来辅助文件分类和归档。

 

例如,输入命令file /bin/bash可以获知bash的类型:

 

$ file /bin/bash
/bin/bash: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=66d6244d15847e7c0e39d7dbe4c4b19d177361d9, stripped

 

可以看到这是一个ELF 64-bit LSB的可执行文件。

 

2. hexdump命令

 

hexdump命令可以将文件的二进制数据以十六进制格式输出。这样可以帮助人们更好地理解二进制文件的结构。

 

例如,输入命令hexdump -C /bin/bash可以输出bash的十六进制数据:

 

$ hexdump -C /bin/bash | head -n 5
00000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 |.ELF............|
00000010 03 00 3e 00 01 00 00 00 e8 6a 40 00 00 00 00 00 |..>......j@.....|
00000020 40 00 00 00 00 00 00 00 00 40 00 00 00 00 00 00 |@........@......|
00000030 00 00 00 00 40 00 38 00 09 00 40 00 1b 00 1a 00 |....@.8...@.....|
00000040 06 00 00 00 05 00 00 00 40 00 00 00 00 00 00 00 |........@.......|

 

可以看到bash二进制文件中的数据是以十六进制格式展现的。

 

3. Strings命令

 

Strings命令可用于在二进制文件中查找ASCII字符串。该命令可以帮助我们找到字面上的秘密——二进制文件中的字符串。在某些情况下,这些字符串可能透露出相关的信息。

 

例如,输入命令strings /bin/bash可以输出bash文件中所有的ASCII字符串:

 

$ strings /bin/bash | head -n 5
/lib64/ld-linux-x86-64.so.2
libc.so.6
setlocale
bindtextdomain
__ctype_get_mb_cur_max

 

我们可以看到输出的内容就是ASCII字符串。

 

4. Objdump命令

 

Objdump是一个强大的工具,可以解析目标文件、可执行文件、动态链接库等二进制文件。它可以查看文件的目标代码、符号表、重定位表、代码段、数据段等信息。

 

例如,输入命令objdump -d /bin/bash可以查看bash中的汇编代码:

 

$ objdump -d /bin/bash
/bin/bash: file format elf64-x86-64

Disassembly of section .init:

0000000000400c48 :
400c48: 48 83 ec 08 sub $0x8,%rsp
400c4c: 48 8b 05 f9 2e 2c 00 mov 0x2c2ef9(%rip),%rax # 6cf148

 

可以看到输出了bash中的汇编代码,这样就有助于理解程序的内部结构和工作原理。

 

总结

 

本文介绍了Linux下的四个二进制文件查看工具:file、hexdump、strings、objdump。这些工具可以帮助你更好地理解和分析二进制文件,从而更好地理解程序的内部结构和工作原理。谨记此招,以便在需要时取得更好的效果。

与【转帖】Linux查看二进制文件:一招制敌(linux二进制查看文件)相似的内容:

【转帖】Linux查看二进制文件:一招制敌(linux二进制查看文件)

https://www.dbs724.com/146055.html 一招制敌:学会Linux查看二进制文件 在Linux操作系统中,二进制文件是一种常见的文件类型。如果你想深入了解一个二进制文件,可能需要查看其内容。但是,二进制文件是一种机器可读的文件,可能很难直接理解,因此需要特殊的工具来解析和

[转帖]Linux修改文件句柄数及vm.max_map_count、stack size的大小

文章目录 一、修改文件句柄数`1.1.查看当前大小``1.2.临时修改``1.3.永久修改` 二、修改max user processes进程数`2.1.临时修改``2.1.永久修改` 三、调整vm.max_map_count的大小`报错“max virtual memory areas vm.ma

[转帖]linux查询bash行,Linux入门11-bash常见特性及文本查看命令

https://blog.csdn.net/weixin_30847063/article/details/117008175 Linux的基本命令都存放在/bin中,里面是命令的二进制文件。下面对常用命令进行讲解。 du :查看文件或者目录的大小。常用格式:du -h 文件名/目录。常用选项-h:

[转帖]Linux 调优篇:虚拟化调优(hugepage 大页内存)* 叁

一. 大页(HugePages)概念 Hugepage的引入二. hugepages相关概念三.Regular Pages 与 HugePages a、Regular Pages b、Huge Pages四. hugepage 优点五.调优方法 5.1 在Host侧查看各个numa节点上的大页分配情

【转帖】Linux 调优篇:虚拟化调优(hugepage 大页内存)* 叁

一. 大页(HugePages)概念 Hugepage的引入二. hugepages相关概念三.Regular Pages 与 HugePages a、Regular Pages b、Huge Pages四. hugepage 优点五.调优方法 5.1 在Host侧查看各个numa节点上的大页分配情

[转帖]Linux命令之ulimit命令

一、命令简介 ulimit是一个计算机命令,用于shell启动进程所占用的资源,可用于修改系统资源限制。使用ulimit命令用于临时修改资源限制,如果需要永久修改需要将设置写入配置文件/etc/security/limits.conf。 二、使用示例 1、查看当前资源限制设置 [root@test1

[转帖]修改jmeter内存配置(win&mac&linux)

目录 一、背景: 二、win环境下修改jmeter内存 三、mac&linux环境下修改jmeter内存 四、验证内存是否修改成功 一、背景: 在进行大数据、高并发压测的过程性,有时会遇上JMeter卡死现象,使得测试无法进行,查看日志显示:java.lang.OutOfMemoryError: J

[转帖]Linux 调优篇 :虚拟化调优(irqbalance 网卡中断绑定)* 贰

一.网络流量上不去二.中断绑定 2.1 关闭中断平衡守护进程 2.2 脱离中断平衡守护进程 2.3 手动设置中断的CPU亲和性三. 总结 一.网络流量上不去 在Linux的网络调优方面,如果你发现网络流量上不去,那么有一个方面需要去查一下: 网卡处理网络请求的中断是否被绑定到单个CPU(或者说跟处理

【转帖】Linux 调优篇 :虚拟化调优(irqbalance 网卡中断绑定)* 贰

一.网络流量上不去二.中断绑定 2.1 关闭中断平衡守护进程 2.2 脱离中断平衡守护进程 2.3 手动设置中断的CPU亲和性三. 总结 一.网络流量上不去 在Linux的网络调优方面,如果你发现网络流量上不去,那么有一个方面需要去查一下: 网卡处理网络请求的中断是否被绑定到单个CPU(或者说跟处理

[转帖]Linux运维比较常用的一些脚本

目录 一、根据PID过滤进程所有信息 二、根据进程名过滤进程信息 三、根据用户名查询该用户的相关信息 四、加固系统的一些配置 五:实现磁盘分区的 六、使用一整块硬盘创建逻辑卷 七、将一块硬盘分区,然后分区设置为虚拟卷 一、根据PID过滤进程所有信息 #! /bin/bash# Author:谢公子#