许多文件格式,除了呈现内容,如显示拍摄照片的JPEG,还可以包含元数据。这些隐藏的信息在OSINT调查和渗透测试中可能是无价的。让我们看看一些案例和提取这些表面上隐藏信息的有用工具。
未清除照片中的元数据
过去,知名社交网络不会清除用户发布在个人资料中的照片元数据的时代已经过去了。提取未删除的GPS坐标可能构成严重的隐私侵犯,例如揭示用户的家庭住址。尽管社交网络现在会删除照片中的元数据,但许多其他性质的应用程序往往不会这样做。在测试过程中关注这一方面非常重要,以保护被测软件的用户不受类似于德国电视记者的遭遇。她在网上发布了这样一张照片:
好奇的互联网用户下载了这张照片并检查了它的元数据。除了经典的信息外,它还包含更多内容。在裁剪上述框架时,图形程序保留了原始照片的缩略图,显示了更广的框架 – 透露了太多信息。
FOCA – 文件中的批量元数据检测
从照片中提取GPS坐标或隐藏的缩略图只是“隐私侵犯”。然而,检查文件的元数据,我们可能会发现一些信息,这些信息在渗透测试中可能会有显著帮助。手动搜索这些文件并检查它们可能需要很多时间。FOCA(指纹组织收集档案)工具可以自动化这个过程。对于给定的域名,FOCA会搜索Microsoft Office、Open Office或PDF等文件,然后提取它们的元数据。
文件的元数据本身可能包含创建该文件的用户登录名。这些信息可以用于尝试使用该用户的账户登录被测应用程序。
那里可能找到的其他重要数据是关于创建文件所用软件的信息及其版本。结果可能表明,所揭示的软件容易受到某种类型的攻击,只需利用现成的漏洞程序即可进一步渗透系统。
除了软件信息,有时文件还会留下有关操作系统版本的注释。这样的提及也大大简化了渗透测试。毕竟,我们现在知道该为哪个系统编译我们的恶意代码片段。
在文件的元数据中还可以找到的另一件有趣的事情是关于打印机网络位置的信息。这可以帮助攻击者映射网络基础设施并攻击打印机本身。
工具可从GitHub下载 – https://github.com/ElevenPaths/FO CA
ExifTool Scanner – 渗透测试中的自动化工具
虽然前面讨论的工具作为独立的文件扫描器工作,搜索已被搜索引擎索引的内容,但它不会在手动侦察中帮助我们。毕竟,文件通常是按需生成的,形式为一次性下载访问。在这里,名为ExifTool Scanner的Burp Suite插件提供了帮助。它将被动地监视包含元数据的文件流量并为我们提取有用的信息。在一次审核中,被测试的应用程序留下了有关动态生成PDF工具的信息及其运行的系统版本。
工具可在BApp Store和GitHub上找到 – https://github.com/portswigger/exiftool-scanner
有趣 – 删除元数据可能是危险的
2021年,GitLab支付了20,000美元,发现了一个漏洞,由于删除元数据导致在服务器上远程执行代码。只需将以下代码放入图像的元数据中:
(metadata
(Copyright "\
" . qx{echo vakzz >/tmp/vakzz} . \
" b ") )
ExifTool的漏洞版本在exiftool/lib/Image/ExifTool/DjVu.pm的第31行进行验证,负责删除使用$(Perl变量)或@(Perl数组)的属性,以确保安全。这是因为该内容随后在第34行的eval函数中使用,将内容作为代码执行。要触发漏洞函数,需要创建一个带有注释的有效DjVu文件,注释包含的负载将被eval函数作为Perl代码执行。
关于此漏洞的更多信息,请阅读: A Case Study on CVE-2021-22204: ExifTool RCE.