strings 命令其实不是 Debian 专有的,它是 GNU binutils 中的一个工具,在 Debian(以及 Ubuntu、CentOS 等)里都能用。下面我从是什么、怎么装、怎么用、常见场景、学习路径几个方面给你讲清楚。
strings 用来从二进制文件中提取可打印的字符串(比如函数名、路径、错误信息、配置项等)。
常用于:
一般系统自带,如果没有:
sudo apt update
sudo apt install binutils
检查是否安装成功:
strings --version
strings /bin/ls
strings -n 6 /bin/ls
(默认是 4)
strings -t x /bin/ls
-t x:十六进制-t d:十进制-t o:八进制strings ./program | grep -E "http|192\.168"
strings ./program | grep -i "error"
strings /lib/x86_64-linux-gnu/libc.so.6
strings core.dump | less
strings -e l file # 16-bit little endian
strings -e B file # 32-bit big endian
strings -a file
-a:扫描整个文件(不跳过某些段)
ls、cat)跑 stringsgrep 找关键词strings 和 objdump -sreadelf❌ strings 能“反编译”程序
✅ 不能,只能看到字符串
❌ strings 能看到所有逻辑
✅ 只能看到“写死在二进制里的文字”
如果你愿意,我可以:
你现在是学习运维、逆向,还是安全?