如何利用Ubuntu Strings进行个性化设置
导读:Ubuntu strings个性化设置指南 一 概念澄清 strings 是 GNU binutils 中的命令行工具,用于从二进制文件中提取可打印字符串,常用于逆向工程、日志定位、固件分析等场景。它并非系统主题或界面设置工具,因此“个性...
Ubuntu strings个性化设置指南
一 概念澄清
- strings 是 GNU binutils 中的命令行工具,用于从二进制文件中提取可打印字符串,常用于逆向工程、日志定位、固件分析等场景。它并非系统主题或界面设置工具,因此“个性化”主要体现在你如何定制它的提取规则与输出格式。默认最小长度为4个字符,常见输出包含偏移量 + 字符串;可用选项控制长度、编码、输出格式等。
二 常用个性化选项与示例
- 控制最小长度:使用 -n,例如只提取长度≥6的字符串
- 示例:
strings -n 6 your_binary
- 示例:
- 指定输出格式:使用 -t,支持 x(十六进制偏移)、d(十进制偏移)、o(八进制偏移);默认同时打印偏移与字符串
- 示例:
strings -t x your_binary(偏移以十六进制显示)
- 示例:
- 指定字符编码:使用 -e,如 s(7-bit ASCII)、b(8-bit byte)、l(16-bit little-endian)、B(16-bit big-endian)、utf-8 等
- 示例:
strings -e utf-8 your_binary
- 示例:
- 仅打印偏移:使用 -o(便于后续脚本处理)
- 示例:
strings -o your_binary
- 示例:
- 组合示例:提取长度≥8、以十六进制偏移显示、UTF-8 编码的字符串
- 示例:
strings -n 8 -t x -e utf-8 your_binary
- 示例:
- 查看版本与帮助:
strings -V、man strings以上选项可组合使用,以满足不同的“个性化”输出需求。
三 进阶个性化 管道与脚本加工
- 去重并统计出现次数(保留首次出现的顺序)
- 示例:
strings -n 6 your_binary | awk '!seen[$0]++' | sort | uniq -c | sort -nr
- 示例:
- 过滤包含关键字的字符串(区分大小写)
- 示例:
strings -n 6 your_binary | grep -i "password"
- 示例:
- 高亮并分页查看
- 示例:
strings -n 6 your_binary | grep -i "token" | less -R
- 示例:
- 导出到文件并附加元信息
- 示例:
{ echo "=== strings @ $(date) ==="; strings -n 6 your_binary; } > strings_report.txt
- 示例:
- 批量处理多个文件(按文件前缀归类)
- 示例:
for f in app*.bin; do strings -n 6 "$f" > "strings_${ f%.bin} .txt"; done
- 示例:
- 与逆向/分析工具联动
- 示例:
strings -n 6 your_binary | sort -u | xargs -I{ } sh -c 'objdump -s -j .rodata | grep -F "{ } " || echo NotInRO'
- 示例:
四 常见问题与排查
- 提取结果“乱码”或不完整:用 -e utf-8 / -e l / -e B 指定正确编码或宽字符顺序,再试;必要时先确认文件是否为文本或特定编码的二进制。
- 输出太多难以阅读:提高最小长度(如 -n 8 或 -n 10),或结合 grep / awk / sort / uniq 做二次筛选与统计。
- 只想看偏移或只要字符串:要偏移用 -o;只要字符串可直接管道到
grep/sed,或使用-t x仅输出偏移配合后续处理。 - 需要更“可视化”的结果:将结果导入
less -R(保留高亮)、或生成 HTML/CSV 报表供团队审阅(例如... | sort | uniq -c | sort -nr | column -t)。
备注与小贴士
- strings 仅“读取”二进制内容,不会对文件做任何修改;请放心在只读副本或备份上实验。
- 若你实际想做的是“系统界面个性化”(主题、图标、字体等),那是 GNOME Tweaks / 主题与外观 的范畴,并非 strings 工具的职责。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何利用Ubuntu Strings进行个性化设置
本文地址: https://pptw.com/jishu/747649.html
