简单说:strings 可以“找到”一些隐藏字段,但前提是这些字段以明文形式存在于文件里。它不能“发现逻辑上的隐藏字段”,只能把二进制里的可打印字符串提取出来。
strings 能做什么strings 会扫描文件(可执行文件、so、配置文件、dump、镜像等),把连续的可打印字符序列打印出来。
常见能发现的“隐藏字段”包括:
例如:
strings binary | grep -i password
strings app.so | grep -i secret
strings 不能做什么以下情况它基本没用:
strings -n 6 file # 最小长度 6
strings -e l file # 16-bit little endian
strings -e b file # 16-bit big endian
strings -a file # 扫描整个文件
配合:
strings file | less
strings file | grep -E "user|pass|key|token"
strings 是找“明文隐藏字段”的第一道工具,但不是万能的。
如果是安全分析,通常还要结合 objdump、gdb、strace、ltrace、radare2 / ghidra 等。
如果你有具体场景(比如 ELF、APK、固件、数据库),可以告诉我,我给你更针对性的方法。