Linux strings
命令在安全领域是一个简单但强大的工具,主要用于从二进制文件中提取可打印字符串。以下是它在安全领域的典型应用场景及示例说明:
bash
strings malware.bin | grep -E 'http://|https://|.onion'
grep
可快速定位敏感信息(如 password
、key
等关键词)。bash
strings /bin/ls | grep -i 'libc'
core dump
或 Volatility
工具生成的镜像)中提取明文密码、会话ID等。bash
strings memory.dump > strings.txt
grep -A 5 -B 5 'admin' strings.txt
bash
strings firmware.img | grep -i 'root:'
admin:admin
)。bash
strings unknown_file | head -n 20
#!/bin/bash
或 ELF
,可快速识别文件类型。strcpy
、system
)。bash
strings vulnerable_program | grep -E 'strcpy|gets|system'
bash
strings /var/log/binary.log | grep 'error'
strings
默认仅提取ASCII,Unicode需加 -e l
选项。
bash
strings -e l binary.exe
grep
、awk
过滤。radare2
、Ghidra
)。bash
strings binary | sort | uniq -c | sort -nr
xxd
、binwalk
):
bash
binwalk -e firmware.img && strings _firmware.img.extracted/* | grep 'key'
通过灵活运用 strings
,安全研究人员可以快速获取关键信息,缩短分析时间。