2作者: Eikon8 个月前
证书透明度系统可以保护您免受恶意 HTTPS 证书的侵害。当 CT 日志拥有可预测的私钥时,整个 Web PKI 安全模型就会崩溃。 这将危及该日志签署的每一个证书——过去、现在和未来。 我报告了 Google Chrome 信任的证书透明度基础设施中的安全漏洞。他们将其驳回为“不是漏洞”,未经同意就公开了我的私人报告,然后在几个小时后默默地实施了我的修复方案。 发现: 在基准测试过程中,我使用了 echo " " > seed.bin (32 个空格)。Sunlight 接受了这一点,并为 CT 日志生成了有效但可预测的私钥。没有警告,没有错误。 为什么这很重要: 1. 操作员正确运行:cat /dev/urandom > seed.bin 2. 文件系统损坏,用空值/空格填充种子(发生在生产环境中) 3. Sunlight 从损坏的种子中默默地生成可预测的密钥 4. CT 日志“正常”运行——有效的签名,没有错误 5. 任何知道损坏的人都可以重新创建私钥 如果没有校验和,即使是完美的操作员也会被默默地攻破。这是保护 HTTPS 证书的 PKI 基础设施。 这并非假设——文件系统损坏在生产系统中很常见。断电、内核崩溃和存储故障经常会导致部分写入和空字节。 谷歌的回应: - “不是漏洞”:https://groups.google.com/a/chromium.org/g/ct-policy/c/qboz9s8b9j8/m/B6JXa2q1BAAJ - 未经同意就发布了我的私人安全报告 - 几个小时后实施了我的确切修复方案 - https://github.com/FiloSottile/sunlight/commit/f62f9084016c4c377d3855471720d7d0cdea3663 - https://github.com/FiloSottile/sunlight/commit/32cc3ea2524e89f93febb967683c6467753f484d - 禁止我指出矛盾:https://groups.google.com/g/certificate-transparency/c/u8SsXgSFbz4/m/14ePyeCrBAAJ 额外漏洞: 他们使用 User-Agent 字符串进行身份验证。任何人都可以伪造这些标头来绕过速率限制并压垮服务: - https://github.com/FiloSottile/sunlight/blob/main/cmd/skylight/skylight.go#L176 - https://github.com/FiloSottile/sunlight/blob/main/cmd/skylight/skylight.go#L148 这是生产代码,今天被 Google Chrome 信任 (https://www.gstatic.com/ct/log_list/v3/all_logs_list.json) 请参阅“sunlight”日志。 导致我被禁的电子邮件就在这里 https://groups.google.com/g/certificate-transparency/c/u8SsXgSFbz4/m/14ePyeCrBAAJ - 请您自己判断它是否违反了任何合理的行为准则。 还有其他人因为负责任的安全披露而遭到报复吗?我们如何修复一个报告漏洞会被禁止而问题却被悄悄修补的系统?
1作者: christensen1438 个月前
今天有个供应商要求我们提供 Kubernetes 集群的日志。除了 DataDog,我们没有运行任何日志聚合工具(没有 fluentd/fluentbit),所以我需要从三个命名空间中的 30 多个部署中获取日志。 与其手动为每个部署运行 kubectl logs,我构建了这个 Python CLI,它可以一次性从命名空间中收集所有部署的日志。它按日期和命名空间组织日志,并行运行收集,并处理常见的 k8s 边缘情况(每个部署有多个 Pod、Pod 失败等)。 用法很简单:klogger collect -n production 没什么了不起的,但它为我节省了数小时的手动工作,并且可能对遇到类似情况的其他人有所帮助。它基本上是一个 kubectl 包装器,擅长一件事——在您需要时批量收集日志。 GitHub: <a href="https://github.com/christensen143/klogger">https://github.com/christensen143/klogger</a>
2作者: AmjdAlhashede8 个月前
我开发了 RingtoneSmartKit——一个开源的 Kotlin 库,用于以简单可靠的方式管理 Android 铃声。<p>它支持: - 设置系统铃声:闹钟、通知和来电 - 为联系人分配自定义铃声 - 直接处理来自 assets 或内容 URI 的音频 - 无需 Context 或 Activity——使集成在应用程序的任何地方都更容易<p>目标是提供一个干净、可重用的铃声处理解决方案,而不依赖于混乱的平台代码。<p>欢迎反馈、测试和建议!