# 隐写方法论坑与边界 ## 检测坑 - **熵误报**:压缩数据/随机填充天然高熵,熵特征单独出现时只是线索——与结构异常合并判断([[decision-tree]] 分级表) - **JPEG 有损混淆**:LSB 类隐写基本只适用于 PNG/BMP(无损);JPEG 重压缩会破坏位平面——先确认格式再选方法,别在 JPEG 上浪费时间做 LSB - **工具版本差异**:zsteg/steghide 版本间通道枚举默认值不同(如 b1 位序、alpha 通道是否默认扫)——换版本/加参数重扫是常见修复 - **签名伪造**:文件头正常不代表整体正常(附加数据可伪装成注释块/元数据)——按结构逐段核对(pngcheck 查 IEND 位置、EXIF 段长度) - **未检出 ≠ 不存在**:隐写可藏在非常规顺序/新型载体/多载体分片中——「未检出」必须带已用方法清单 ## 提取坑 - **顺序组合爆炸**:行序 × 位序 × 通道 × 位平面组合多——先按工具默认试,再枚举常见组合(zsteg -E 各变体),最后脚本全枚举 - **隐写前压缩**:嵌入前 deflate/gzip 的明文提取出来是乱码——提取物先查压缩头(zlib `78 9C`、gzip `1F 8B`、bzip2 `42 5A 68`),常见于 CTF - **隐写前加密**:加密载荷无密钥不可提取——查题目/场景的密钥线索(密码提示、同批文件);无则标注,不硬破解 - **多载体重叠**:同一文件多个隐写层/多文件分片——每层提取物独立验证,分片按特征(文件尾偏移/序号/内容连续性)拼接 - **嵌入损坏**:部分写入/载体处理导致提取数据损坏——容忍损坏(magic 部分匹配、可读片段),修复载体后再提取 ## 载体坑 - **载体损坏**:隐写写入破坏文件结构(坏 PNG/异常 EXIF)——先修复(pngcheck 定位损坏处)或按位提取不依赖结构 - **EXIF 干扰**:EXIF 段内的注释/缩略图可能被误报为附加数据——用 exiftool 列清元数据段,区分「合法元数据」与「附加载荷」 - **压缩载体**:ZIP/RAR 内文件的未用空间与 CRC 域是隐写点——先解包对比原始大小/校验(binwalk 扫描容器内偏移) - **JPEG DCT 域**:JPEG 隐写在 DCT 系数里,位平面工具无效——用 outguess 类工具或 DCT 系数统计(JPEG 隐写检测需重压缩分析,超出基础流程时标注) ## 使用注意 - 取证场景:授权范围(载体/数据类别)先行;产物 sha256 存档([[re-triage]] 初勘 + [[re-analyze/analysis-contract]] 交付) - CTF 场景:按题目提示缩小范围(载体类型/顺序暗示/密钥提示),别全量枚举耗时 - 本技能覆盖文件类载体(图片/音频/文件冗余区/未分配空间);网络协议/流量侧隐写不在本技能([[re-netcap]] / [[re-proto-rev]] 场景评估)