在 Ubuntu(以及大多数 Linux 系统)中,strings 是一个命令行工具,主要用途是:
从二进制文件(可执行文件、库、core dump 等)中提取“可打印的字符串”
strings 能干什么?(常见用途)比如查看一个可执行文件里有没有:
strings /bin/ls
可能看到类似:
Usage: %s [OPTION]... [FILE]...
https://www.gnu.org/
常用于:
strings suspicious_binary
可以帮你判断:
程序崩溃后:
strings core
可能看到:
strings /lib/x86_64-linux-gnu/libc.so.6
strings 提取的是什么?它默认提取:
不会提取:
strings -n 8 binary
strings -t x binary
strings -e l binary # 16-bit little-endian Unicode
| 场景 | 示例 |
|---|---|
| 快速分析程序 | strings app |
| 安全/逆向 | 查找 IP、URL |
| 调试 | core dump 分析 |
| 取证 | 检查是否泄露信息 |
| 学习 | 看程序里“藏了什么” |
⚠️ strings 不是反编译工具
⚠️ 不能用于加密/混淆程序
Ubuntu 的
strings就是:从二进制文件里“抠出人类能看懂的字符串”,常用于分析、调试和安全审计。
如果你愿意,我可以:
strings 实战示例grep 使用objdump / readelf 的区别