Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
external_libexif_AOSP10_r33_CVE-2020-0198 — 用于解析、编辑和保存EXIF元数据的C库,重点解决AOSP10中的CVE-2020-0198问题。 | Kitploit
工具/GitHubGitHub/trinadh465/external_libexif_aosp10_r33_cve-2020-0198
静态分析漏洞分析代码分析漏洞利用模糊测试二进制分析
GitHubtrinadh465/external_libexif_aosp10_r33_cve-2020-0198

external_libexif_AOSP10_r33_CVE-2020-0198

用于解析、编辑和保存EXIF元数据的C库,重点解决AOSP10中的CVE-2020-0198问题。

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
2204年前尚未审核

libexif -------

简介

libexif 是一个用于解析、编辑和保存 EXIF 数据的库。它旨在取代命令行工具和图形界面(GUI)程序中大量重复的实现。

功能特性

libexif 支持 EXIF 数据的解析、编辑和保存。此外,它还支持 gettext。EXIF 标准 2.1(以及 2.2 中的大部分)中描述的所有 EXIF 标签均受支持。来自佳能(Canon)、卡西欧(Casio)、爱普生(Epson)、富士(Fuji)、尼康(Nikon)、奥林巴斯(Olympus)、宾得(Pentax)和三洋(Sanyo)相机的许多厂商备注(maker notes)也得到支持。

依赖要求

libexif 使用纯 C 语言编写,不需要任何额外的库。如果可用,将使用 GNU gettext 进行语言翻译。

局限性

libexif 只能处理部分厂商备注(maker notes),而且处理得也不算好。还有更多工作要做。请注意,libmnote 已合并到 libexif 中——不再需要单独使用。

使用方法

我们已使用 doxygen 对 libexif API 进行了文档化,并将在 http://libexif.sourceforge.net/api/ 上提供相关结果。

test 目录中的简短测试程序演示了如何从零开始创建有效的 EXIF 数据、如何保存 EXIF 数据以及如何从内存中的数据加载 EXIF 数据。contrib/examples/ 目录中还提供了一些简单的示例程序。如果您对如何使用 libexif 有任何疑问,请随时通过 [email protected] 与我们联系。

要将 libexif 链接到您自己的软件包中,我们建议使用 pkgconfig 工具(参见 http://www.freedesktop.org/wiki/Software/pkg-config/ 为方便起见,libexif 既提供了 libexif-uninstalled.pc,也会安装 libexif.pc。

前端程序

目前,我知道有以下 libexif 前端程序:

  • exif:一个用于显示 JPEG 文件中 EXIF 信息的小型命令行工具 (http://www.sourceforge.net/projects/libexif)。
  • gexif:一个用于编辑 EXIF 数据的 GTK+ 前端 (http://www.sourceforge.net/projects/libexif)。
  • gphoto2:libgphoto2 的命令行前端,libgphoto2 是一个用于访问各种数码相机的库(http://www.gphoto.org)。
  • gtkam:libgphoto2 的 GTK+ 前端(http://www.gphoto.org)。
  • thirdeye:eComStation 的数字照片整理器和驱动程序 (http://ecomstation.ru/thirdeye)。
  • digikam:KDE 的数字照片管理应用程序 (http://www.digikam.org/)

如果您希望将程序迁移到 libexif 或为其添加 EXIF 支持,请随时联系作者。

相关库

我知道有以下使用 libexif 或受其启发的库:

  • libexif-gtk:帮助在 GTK 程序中显示 EXIF 标签的控件库(属于 libexif 项目的一部分)
  • pel:PHP 代码(http://pel.sourceforge.net)

构建

要让 libexif 成功构建,具体操作取决于您的环境。从源代码 tar 包构建通常需要执行以下命令:

./configure make sudo make install

从 CVS 中的源代码构建时,通常需要执行类似以下的操作:

gettextize mv po/Makevars.template po/Makevars aclocal -I auto-m4 -I m4m autoheader libtoolize --force automake --add-missing autoconf ./configure make

或者,通常只需要:

autoreconf -i ./configure make

除了标准参数外,configure 还接受几个 libexif 特有的参数:

--disable-docs To disable producing any documentation --enable-internal-docs Build internal code docs if Doxygen available --enable-ship-binaries To include Windows DLLs in 'make dist'

某些特殊应用可以在配置时通过在 CPPFLAGS 环境变量中设置以下一个或两个宏来减小 libexif 二进制文件的大小。每个宏都会从二进制文件中移除特定类型的文本字符串和常量。需要访问特定的、已知的 EXIF 标签并事先知道其数据含义的应用不需要这些字符串,移除它们可以节省大量空间。

-DNO_VERBOSE_TAG_STRINGS Names and descriptions of EXIF tags, debug messages, mandatory EXIF fields (disabling auto-tag-fixup) -DNO_VERBOSE_TAG_DATA Names of enumerated tag data contents

国际化

libexif 的翻译由志愿者独立完成,他们要么直接参与 libexif 项目,要么通过两个翻译协调网站之一进行,即 Translation Project http://translationproject.org/domain/libexif.html 和 Launchpad https://translations.edge.launchpad.net/ubuntu/precise/+source/libexif/+pots/libexif-12。任何由 Translation Project 协调的语言翻译更新都必须通过其网站进行,但所有其他语言既可以通过 Launchpad(推荐)更新,也可以直接将更新发送到 libexif 开发者邮件列表。截至撰写本文时,以下语言必须通过 Translation Project 更新:cs da de es fr it ja nl pl sk sv uk vi

如果您有兴趣将 libexif 翻译成新的语言,我们建议您加入上述某个翻译小组,并利用他们已构建的辅助系统。在 Translation Project 中,libexif 不需要翻译免责声明;进行翻译即表示您默认同意在与 libexif 其余部分相同的许可条款(LGPL)下提供该翻译。

作者

libexif 最初由 Curtis Galloway [email protected] 编写。由于最初的设计不支持编辑和保存,Lutz Mueller [email protected] 从头重写了 libexif。此后,又有许多人向 libexif 做出贡献。

相关链接

如果您想进一步了解 EXIF 相关信息,以下链接或许值得一看。

  • http://drewnoakes.com/code/exif:Java 中的元数据提取框架
  • http://www.exif.org:关于 EXIF 标准的信息。
  • http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/index.html:看起来像是 Perl 版的 libexif。似乎支持大量的 MakerNotes。
下载工具