00

先看结论

  • TNEF 是一种邮件封装格式,用于打包富文本邮件信息和附件,正确显示内部内容需要支持 TNEF 的邮件客户端或解码工具。
  • 先在 Outlook 等支持 TNEF 的邮件客户端中打开原邮件。如果手中只有保存下来的 winmail.dat,可用明确支持 TNEF 的解码工具查看内容并提取原始附件。Windows 和 Mac 用户应确认所选客户端是否支持 TNEF;手机用户应先检查邮件应用的支持情况,无法显示内部附件时,可请发送者关闭 TNEF 后以普通附件重发。Thunderbird 官方帮助介绍了 LookOut 插件,但该插件不由 Thunderbird 提供或支持,未来兼容性也没有保证。
  • 对来历不明的 winmail.dat 保持谨慎。CERT/CC 曾记录旧版 Outlook 和 Exchange 的 TNEF 解码缓冲区溢出漏洞,但这不代表所有当前实现仍有该历史漏洞。Microsoft 规范特别提醒谨慎处理 attRecipTable 和 attFrom,以防地址或身份欺骗,因此解析出的身份字段不能作为可信身份凭据。Microsoft 还指出,winmail.dat 可能包含发送者的 PST 文件路径和登录名,但明确说明密码信息不会因此暴露。
01

TNEF 文件:打开 winmail.dat 并提取邮件附件

TNEF 全称为 Transport Neutral Encapsulation Format,由 Microsoft 开发,Outlook 和 Exchange 支持该格式。邮件中的二进制封装附件通常名为 winmail.dat。TNEF 流包含消息级和附件级属性,可携带字体、颜色、OLE 嵌入对象、Office 文档、普通附件,以及投票按钮、会议请求等 Outlook 功能信息。流开头的字节为 78 9F 3E 22;仅凭 DAT 扩展名不能认定文件就是 TNEF。IANA 注册的媒体类型为 application/vnd.ms-tnef,Microsoft 还记录了实际邮件中使用的 application/ms-tnef。

先把原文件留着

想取得文档时,应先解码 TNEF 并提取原始附件,而不是把 winmail.dat 直接当成 PDF 或 Word 文档。后续转换取决于提取出的实际文件格式。发送者更改邮件格式或关闭 TNEF 时需考虑信息损失:纯文本会丢失格式、图片和链接,关闭 TNEF 后投票按钮等功能可能不可用。普通文件附件本身不要求使用 TNEF。

02

怎么打开

先在 Outlook 等支持 TNEF 的邮件客户端中打开原邮件。如果手中只有保存下来的 winmail.dat,可用明确支持 TNEF 的解码工具查看内容并提取原始附件。Windows 和 Mac 用户应确认所选客户端是否支持 TNEF;手机用户应先检查邮件应用的支持情况,无法显示内部附件时,可请发送者关闭 TNEF 后以普通附件重发。Thunderbird 官方帮助介绍了 LookOut 插件,但该插件不由 Thunderbird 提供或支持,未来兼容性也没有保证。

只想看看内容

先在 Outlook 等支持 TNEF 的邮件客户端中打开原邮件。如果手中只有保存下来的 winmail.dat,可用明确支持 TNEF 的解码工具查看内容并提取原始附件。Windows 和 Mac 用户应确认所选客户端是否支持 TNEF;手机用户应先检查邮件应用的支持情况,无法显示内部附件时,可请发送者关闭 TNEF 后以普通附件重发。Thunderbird 官方帮助介绍了 LookOut 插件,但该插件不由 Thunderbird 提供或支持,未来兼容性也没有保证。

要发给别人

想取得文档时,应先解码 TNEF 并提取原始附件,而不是把 winmail.dat 直接当成 PDF 或 Word 文档。后续转换取决于提取出的实际文件格式。发送者更改邮件格式或关闭 TNEF 时需考虑信息损失:纯文本会丢失格式、图片和链接,关闭 TNEF 后投票按钮等功能可能不可用。普通文件附件本身不要求使用 TNEF。

03

文件安全

对来历不明的 winmail.dat 保持谨慎。CERT/CC 曾记录旧版 Outlook 和 Exchange 的 TNEF 解码缓冲区溢出漏洞,但这不代表所有当前实现仍有该历史漏洞。Microsoft 规范特别提醒谨慎处理 attRecipTable 和 attFrom,以防地址或身份欺骗,因此解析出的身份字段不能作为可信身份凭据。Microsoft 还指出,winmail.dat 可能包含发送者的 PST 文件路径和登录名,但明确说明密码信息不会因此暴露。

这几种情况先别打开

来路不明、文件名带两个后缀,或者内容和扩展名对不上——先停下来核对。

04

转换格式

想取得文档时,应先解码 TNEF 并提取原始附件,而不是把 winmail.dat 直接当成 PDF 或 Word 文档。后续转换取决于提取出的实际文件格式。发送者更改邮件格式或关闭 TNEF 时需考虑信息损失:纯文本会丢失格式、图片和链接,关闭 TNEF 后投票按钮等功能可能不可用。普通文件附件本身不要求使用 TNEF。

转换之前

先复制一份原文件再转换,转完对照看看画质、元数据和排版有没有变。

05

常见问题

TNEF 是什么邮件格式,winmail.dat 用来做什么?

TNEF 是 Microsoft 用于封装富文本邮件信息和附件的格式,可保留投票按钮、会议请求等 Outlook 功能信息。winmail.dat 通常是这类二进制封装附件的文件名,并不表示内部只有一种文档。

Windows 怎么打开 winmail.dat 文件并提取里面的附件?

先在 Outlook 等支持 TNEF 的客户端中打开原邮件。若只有保存的 winmail.dat 文件,可使用明确支持 TNEF 的解码工具查看封装内容,再提取原始附件。

Mac 怎么打开 winmail.dat 文件?

先确认 Mac 上的邮件客户端是否支持 TNEF,并尝试打开原邮件。若仍只显示 winmail.dat,可使用 TNEF 解码工具,或请发送者以普通附件形式重发文件。

手机怎么打开 winmail.dat 文件?

先检查手机邮件应用是否支持 TNEF。如果无法显示内部文件,可请发送者关闭 TNEF 后以普通附件重发,或改在装有 TNEF 兼容客户端的电脑上打开原邮件。

Outlook 发送的附件为什么变成 DAT 文件,收到 winmail.dat 却打不开?

Outlook 可能把附件和富文本信息一起封装为 TNEF。收件客户端不支持该格式时,可能只显示纯文本正文和 winmail.dat,无法直接呈现内部附件;这本身不能证明原始附件已经损坏。

发送文件时,用 TNEF(winmail.dat)还是普通附件?

普通文件附件不需要 TNEF,可避免让收件人为读取封装内容另行解码。TNEF 能携带额外的 Outlook 格式与功能信息;如果需要投票按钮等功能,关闭 TNEF 可能造成损失。

winmail.dat 怎么转 PDF,转换后会丢失哪些信息?

先解码 TNEF 并提取内部文件;里面可能已经有 PDF,否则需按提取出的文档格式另行转换。若将邮件改为纯文本,会丢失格式、图片和链接;关闭 TNEF 还可能使投票按钮等 Outlook 功能不可用。

TNEF 附件有哪些安全风险,winmail.dat 能放心打开吗?

旧版 Outlook 和 Exchange 曾有 TNEF 解码漏洞,但不能据此认定所有当前实现仍然受影响。身份字段也可能被伪造。对未知来源附件应谨慎,成功解码并不能证明发送者身份或内部文件可信。

如何让 Outlook 不再发送 winmail.dat?

请发送者在适用的 Outlook 或 Exchange 设置中更改发送邮件的格式,或关闭 TNEF;具体设置入口取决于使用环境。普通附件不依赖 TNEF,但关闭后可能丢失投票按钮等 Outlook 专有信息。

Thunderbird 怎么查看 TNEF 附件和 winmail.dat?

Thunderbird 官方帮助介绍了 LookOut 插件,可解码 winmail.dat 并显示原始附件。不过,该插件不由 Thunderbird 提供或支持,未来版本的兼容性没有保证。

winmail.dat 是否会泄露发送者的登录名或其他隐私信息?

有这种可能。Microsoft 指出,winmail.dat 可能包含发送者的 PST 文件路径和登录名,收件人可用二进制或文本编辑器查看这些信息;同一说明明确指出密码信息不会因此暴露。

06

相关格式

资料来源

Microsoft:How message format affects email messages · 格式开发者官方技术支持

Microsoft:[MS-OXTNEF] Transport Neutral Encapsulation Format (TNEF) Data Algorithm · 格式开发者官方规范

IANA Media Types · 互联网媒体类型注册机构

Thunderbird Help:What is the winmail.dat attachment? · 邮件客户端官方帮助

CERT/CC VU#252146:Microsoft Outlook and Microsoft Exchange TNEF decoding buffer overflow · CERT/CC 漏洞协调机构