温馨提示×

Ubuntu Strings 如何操作

小樊
41
2026-08-05 06:50:46
栏目: 智能运维

stringsUbuntu / Linux 中一个非常常用的命令行工具,用来从一个二进制文件(或任意文件)中提取可打印的字符串。下面从安装、基本用法、常见场景、参数说明几个方面给你讲清楚。


一、什么是 strings

strings 的作用是:

从文件中提取 长度 ≥ N(默认 4)的连续可打印字符序列

常用于:

  • 分析二进制程序
  • 查看程序中是否包含敏感信息(路径、URL、密码提示等)
  • 逆向工程 / 安全分析
  • 调试程序

二、安装 strings(Ubuntu)

在 Ubuntu 中,strings 属于 binutils 包,一般系统已自带

检查是否已安装

strings --version

如果未安装

sudo apt update
sudo apt install binutils

三、基本用法

1️⃣ 从二进制文件中提取字符串

strings test.bin

2️⃣ 从 ELF 可执行文件中提取

strings /bin/ls

四、常用参数详解

-n:指定最小字符串长度(默认 4)

strings -n 6 test.bin

-e:指定字符编码

常见选项:

  • s:7-bit ASCII(默认)
  • l:16-bit little-endian
  • b:16-bit big-endian
  • S:UTF-8(较新版本支持)

示例:

strings -e l test.bin

-t:显示字符串偏移地址

以十六进制显示

strings -t x test.bin

以八进制显示

strings -t o test.bin

以十进制显示

strings -t d test.bin

-f:显示文件名

strings -f *.bin

输出示例:

a.bin: main
a.bin: /usr/lib

结合 grep 使用(非常常见)

strings test.bin | grep password
strings test.bin | grep -i url

五、实战示例

✅ 查看可执行文件中是否包含路径

strings /usr/bin/python3 | grep "/"

✅ 分析可疑程序

strings suspicious.bin | less

✅ 从 core dump 或内存文件中找线索

strings core | grep "error"

六、与 objdump / xxd 的区别

工具 用途
strings 提取可读字符串
objdump 反汇编二进制
xxd 十六进制查看

七、注意事项

⚠️ strings 不能解密、不能还原源码
⚠️ 字符串可能被混淆或加密
⚠️ 敏感信息(如密钥)即使存在也不代表可被直接使用


八、总结常用命令速查

strings file
strings -n 6 file
strings -t x file
strings file | grep keyword
strings -f *.bin

如果你有具体文件类型(如 .so、ELF、二进制日志、固件、内存 dump)或具体目标(找密码、找接口、逆向分析),可以告诉我,我可以给你更针对性的 strings 使用方案。

0