温馨提示×

怎么提取Ubuntu Strings

小樊
43
2026-08-31 06:13:36
栏目: 智能运维

在 Ubuntu(以及大多数 Linux 发行版)中,提取 strings(可打印字符串) 通常指的是从 二进制文件、内存或磁盘镜像 中提取可读的文本字符串。下面按常见场景给你介绍几种方法。


一、使用 strings 命令(最常用)

1️⃣ 基本用法

strings filename

示例:

strings /bin/ls

2️⃣ 指定最小字符串长度

默认是 4 个字符,你可以修改:

strings -n 6 filename

3️⃣ 显示字符串在文件中的偏移

strings -t x filename   # 十六进制
strings -t d filename   # 十进制

示例:

strings -t x /bin/ls

4️⃣ 只提取特定节区(ELF 文件)

strings -e l filename   # 16-bit little-endian UTF-16
strings -e b filename   # 16-bit big-endian

二、从 ELF 可执行文件中提取字符串(进阶)

1️⃣ 查看 ELF 段信息

readelf -p .rodata filename

只提取 .rodata 段中的字符串,非常常见。


2️⃣ 使用 objdump

objdump -s -j .rodata filename

三、从内存或进程提取字符串

1️⃣ 从运行中的进程

cat /proc/PID/maps

然后:

gdb -p PID

或:

strings /proc/PID/mem

(需要 root)


2️⃣ 从内存 dump 提取

strings mem_dump.bin

四、从磁盘镜像提取字符串

strings disk.img > strings.txt

常用于:

  • 取证分析
  • 固件分析
  • 崩溃恢复

五、结合 grep 过滤

strings filename | grep -i password
strings filename | grep -E "http|https"

六、Ubuntu 安装 strings

strings 属于 binutils

sudo apt update
sudo apt install binutils

七、常见用途总结

场景 命令
分析二进制 strings binary
搜索敏感信息 strings file | grep password
固件分析 strings firmware.bin
取证 strings disk.img
ELF 分析 readelf -p .rodata

如果你有 具体场景(比如:
✅ 想找 Ubuntu 系统字符串
✅ 分析某个程序
✅ 做逆向 / 安全分析
✅ 从日志或内存提取)

告诉我,我可以给你更精确的命令示例。

0