跳至主要内容

CVE-2026-119117 - 在适用于 Java 的 Amazon Kinesis Producer Library 中,敏感信息被插入日志文件和进程参数列表

公告 ID: 2026-159-AWS
范围:AWS
内容类型:重要提示(需要注意)
发布日期: 2026 年 10 月 30 日下午 11:00(太平洋夏令时)

描述:

Kinesis Producer Library(KPL)是一个开源 Java 库,用于以高吞吐量向 Amazon Kinesis Data Streams 写入数据。KPL 是以客户的 AWS 账户在客户应用程序内部运行的客户端库,使用客户的凭证。

我们发布了 CVE-2026-119117。在 1.0.8 版本之前的适用于 Java 的 Amazon Kinesis Producer Library 中,如果将该库的日志记录器配置为 DEBUG 日志级别,则将敏感信息插入日志文件可能会允许本地用户获取该库为应用程序解析的 AWS 凭证。此外,受影响版本的库还会将这些凭证作为命令行参数传递给原生子进程,本地用户可以从进程参数列表中读取这些凭证。

为解决此问题,用户应升级至 1.0.8 或更高版本,轮换所有长期 IAM 用户密钥,在必要时撤销活跃的角色会话,并限制或脱敏受影响版本所写入的日志数据。使用 0.x 版本的用户应迁移至 software.amazon.kinesis:amazon-kinesis-producer 1.0.8 或更高版本。

受影响的版本:

  • com.amazonaws:amazon-kinesis-producer <= 0.15.12
  • oftware.amazon.kinesis:amazon-kinesis-producer < 1.0.8

解决方案:

此问题已在适用于 Java 的 Amazon Kinesis Producer Library(KPL)版本 1.0.8 中得到解决。版本 0.x 和 1.x 用户应升级至 1.0.8 或更高版本。

临时措施:

升级至 1.0.8 或更高版本是唯一彻底的修复方法。无法立即升级的用户可以通过以下措施来降低风险:

要阻止将凭证写入日志,请确保进程守护程序日志记录器未配置为 DEBUG 日志级别或更低级别。在日志配置中,将 software.amazon.kinesis.producer.Daemon(针对 1.x 版本)或 com.amazonaws.services.kinesis.producer.Daemon(针对 0.x 版本)明确设置为 INFO 或更高级别,这样,即使根日志记录器设置为 DEBUG,这些组件的日志级别仍会保持在 DEBUG 之上。KPL 自身的 LogLevel 设置不会影响进程守护程序日志记录器。作为第二层防护,可在日志管道中添加筛选条件,丢弃或脱敏以“Starting Native Process”开头的日志消息;由于这些值经过十六进制编码,常规的密钥扫描工具可能无法检测到它们。

在受影响的版本中,没有任何配置能够将凭证从原生进程的参数列表中移除。要限制可读取凭证的用户范围,请确保在没有不可信本地账户的主机或容器中运行生产者。

轮换长期密钥,在必要时撤销活跃角色会话,并脱敏或删除受影响的日志。我们建议使用短期 IAM 角色凭证,而非长期访问密钥;同时,应将角色权限限制在生产者所需的最小范围内,例如仅授予针对特定数据流和命名空间 Amazon 资源名称(ARN)的 kinesis:PutRecords 和 cloudwatch:PutMetricData 权限。

上述措施仅能防止未来发生凭证泄露;对于已经写入日志的凭证,仍需执行前述补救措施。

参考:

致谢:

感谢 Keeper Security 的 Justin Capella 通过协调披露流程就此问题与我们合作。


如有任何安全问题或疑虑,请发送电子邮件至 aws-security@amazon.com。