在 Debian(以及其它 Linux 发行版)里,strings 是一个命令行工具,用来从一个二进制文件、库文件或非文本文件中提取可打印的字符串。
下面从「安装 → 基本用法 → 常见参数 → 实际例子」给你讲清楚。
strings 属于 binutils 工具集,常用于:
.so、可执行文件中是否包含敏感信息一般系统已经自带,如果没有:
sudo apt update
sudo apt install binutils
验证:
strings --version
strings 文件名
例如:
strings /bin/ls
会输出 ls 二进制中所有可打印字符串。
默认是 4 个字符,可改:
strings -n 6 文件名
只显示长度 ≥ 6 的字符串。
strings -t x 文件名 # 十六进制偏移
strings -t d 文件名 # 十进制偏移
例子:
strings -t x /bin/ls
输出类似:
1f4 /lib64/ld-linux-x86-64.so.2
strings -e s 文件名
s:7-bit ASCIIb:16-bitl:32-bitcat 文件 | strings
strings 文件 | grep -i password
或:
strings -n 6 文件 | grep http
strings app | grep -i token
strings -n 5 unknown.bin
strings -t x challenge | grep flag
strings 只看可打印字符,不能还原逻辑如果你愿意,可以告诉我:
我可以直接给你一条“对症下药”的命令。