在 Debian(以及一般 Linux)环境下,strings 是一个非常基础但有用的安全审计工具,用于从二进制文件、内存镜像或固件中提取可打印字符串,帮助分析程序行为、查找敏感信息或可疑特征。
下面从用途、使用方法、实战场景、注意事项四个方面说明如何用 strings 做安全审计。
strings 可以帮你发现:
⚠️ 注意:strings 只能看“明文”,无法分析加密逻辑本身。
strings /usr/bin/xxx
strings -n 8 binary_file
strings -t x binary_file
或
strings -t d binary_file
strings core_dump
strings suspicious_bin | less
重点看:
/bin/shwget, curlbash -i192.168.x.x, http://password=, token=strings app | grep -iE "password|token|secret|key"
strings malware.elf | grep -iE "reverse|shell|nc|/dev/tcp"
dpkg -L nginx | xargs strings 2>/dev/null | grep -i version
strings binary | grep -iE "http|ftp|ssh"
配合:
fileobjdumpreadelfstraceltracestrings -e l binary
strings -e b binary
readelf -S binary
strings -a binary
strings bin | grep -iE "bind shell|reverse shell|/dev/tcp"
❌ strings 不能:
✅ 最佳用法:
strings 做“线索发现”,再结合逆向/动态分析
file unknown_bin
strings -n 6 unknown_bin | less
strings unknown_bin | grep -iE "http|pass|sh"
strace -f ./unknown_bin
如果你愿意,我可以:
strings vs binwalk / radare2你可以告诉我你是系统安全 / 渗透测试 / 合规审计哪个方向。