strings
命令在安全分析中的应用场景strings
命令是Linux系统中一个简单但功能强大的工具,用于从二进制文件中提取可打印的字符串。在安全分析领域,它有着广泛的应用场景。
strings [选项] 文件名
常用选项:
- -a
或 --all
:扫描整个文件(默认只扫描初始化数据段)
- -n <长度>
:设置最小字符串长度(默认4)
- -t <格式>
:显示字符串在文件中的偏移量(d=十进制,o=八进制,x=十六进制)
strcpy
、system
等)strings -n 8 suspicious_binary | grep -E 'http://|https://'
strings binary_file | grep -i password
strings -t x malware_sample > strings_output.txt
strings -n 6 memory.dmp | grep -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'
strings
只是初步分析工具,需要结合其他工具(如file
、objdump
、strace
等)进行深入分析strings
rabin2
(来自radare2工具集)floss
(FireEye Labs Obfuscated String Solver)binwalk
(用于固件分析)xxd
或 hexdump
(十六进制查看)strings
命令因其简单易用,仍然是安全分析人员工具箱中的基础工具之一。