温馨提示×

linux strings可查隐藏文本吗

小樊
50
2026-09-11 09:47:51
栏目: 智能运维

简短回答:strings 可以查看文件中“以可打印字符形式存在的隐藏文本”,但不能发现真正“加密”或“隐蔽得很好”的隐藏信息。

下面详细说一下。


一、什么是 strings

strings 是 Linux 下常用命令,用来从二进制文件、可执行文件、镜像、日志等中提取“可打印字符串”(默认长度 ≥ 4)。

例如:

strings test.bin

二、strings 能查到的“隐藏文本”

以下情况通常能查到

1️⃣ 嵌入在二进制中的明文

比如:

  • 程序中写死的密码、URL、路径
  • 病毒/木马中的 C2 地址
  • 图片/PDF 中未压缩的文本

✅ 很容易被 strings 发现


2️⃣ 被“简单隐藏”的文本

例如:

  • 注释掉的代码
  • base64(仍然是明文)
  • 明文分段存储

✅ 也能查到(base64 本身可见)


3️⃣ 文件末尾/空闲区域文本

比如:

  • 文件尾部追加数据
  • 未使用的磁盘块(需配合 dd + strings

✅ 有可能发现


三、strings 查不到的“隐藏文本”

以下情况基本查不到

❌ 加密内容

AES / RSA / XOR(密钥)

→ 输出是乱码


❌ 隐写术(Steganography)

如:

  • 图片 LSB 隐藏
  • 音频/视频载体

strings 看不到真实内容


❌ 高度压缩数据

  • gzip / zlib / protobuf

→ 字符串被压缩


❌ 自定义编码

比如:

  • 位移编码
  • 非标准字符映射

→ 不可读


四、增强 strings 使用技巧

1️⃣ 降低最小长度

strings -n 2 file

2️⃣ 查看所有字符(包括非ASCII)

strings -e l file

3️⃣ 结合 grep

strings file | grep -i password

4️⃣ 对磁盘/分区

strings /dev/sda | less

五、总结一句话

strings 是查“明文隐藏”的神器,但不是隐写或加密的克星。

如果你有具体场景(比如:

  • 查恶意程序
  • 查图片里的隐藏信息
  • 查配置文件是否藏密码)
    我可以给你更针对性的命令。

0