RSS Trail of Bits 博客 笔记

RSS Trail of Bits 博客

blog.trailofbits.com 是 Trail of Bits 的官方博客,这是一家提供渗透测试、安全编码和软件安全评估等服务的网络安全公司。博客似乎专注于分享与网络安全相关的知识和见解,文章和帖子涵盖了软件安全、威胁建模、漏洞分析和安全编码实践等多种主题。网站的设计简洁、整洁,布局直接,使用户可以轻松浏览和找到特定的文章或感兴趣的主题。网站上有一个搜索功能,允许用户快速找到特定的文章或主题。此外,文章还按主题分类,使用户可以轻松浏览相关内容。博客还特邀了网络安全领域的专家撰写客座博文,为网站提供了多样化的视角和见解。总之,Trail of Bits 博客似乎是一个有价值的资源,为那些想了解更多关于网络安全的人和想了解该领域最新发展和趋势的人。

笔记线程

该公司发布了 Mewt,一个开源的变异测试引擎,用于识别测试套件中的漏洞,现已将其扩展以支持 DAML,即用于 Canton Network 应用程序的语言。Mewt 读取 DAML 代码,生成变异体,并将其通过现有测试套件运行,以统计存活变异体的数量。该数量反映了测试套件的检查程度,相较于传统的代码覆盖率报告,能提供更准确的测试有效性度量。代码覆盖率报告可能具有误导性,因为它仅表明代码是否被执行,而无法判断若代码未按预期工作,测试是否会失败。相反,变异测试通过破坏代码并检查测试是否失败来对测试进行评级,从而提供更全面的测试有效性度量。Mewt 对 DAML 的支持包括两种针对授权原语的新变异,而授权原语是 DAML 合约中常见的漏洞来源。该工具可轻松集成到现有工作流中,其输出能清晰指出缺失且需要编写的测试。通过使用 Mewt,开发人员可确保其测试全面且有效,降低代码中漏洞和错误的风险。公司计划继续改进 Mewt,包括增加更多变异类型,并提升其检测等价变异体的能力(即不影响代码行为的变更)。总体而言,Mewt 为开发人员提供了一个强大的工具,以提升测试的质量与有效性;其对 DAML 的支持是确保 Canton Network 应用程序可靠性与安全性的关键一步。使用 Mewt 有助于开发人员在开发早期识别并修复漏洞,从而降低交付高质量软件所需的总体成本和时间。
研究人员发现,某些 RSA 私钥的比特位严重偏向 0,这种特性可被检测并导致快速分解。与 badkeys 项目的 Hanno Böck 合作,他们发现了数百个具有此特性的唯一密钥,并分析历史数据以追踪该问题的演变。这些密钥中 0 比特的分布模式往往高度结构化,从而使得能够开发基于多项式的密码分析技术以利用该模式。研究人员识别出两类具有重复 0 比特块的 RSA 模数模式,其中一种模式尚未得到解释,另一种则归因于旧版 CompleteFTP 文件传输软件中大整数代码的类型不匹配。CompleteFTP 的漏洞还生成了易受攻击的短袖 DSA 密钥;研究人员通过互联网扫描恢复了 603 个唯一的 RSA 私钥和 74 个 DSA 密钥。badkeys 项目是一个开源服务,用于检查公钥是否存在已知漏洞;通过对真实世界密钥数据集的搜索,研究人员发现了大量在野外存在且具有上述模式的密钥。研究人员逆向工程了 CompleteFTP 的漏洞,发现其根源在于 limbs 的大小与随机数生成器(RNG)输出大小之间的不匹配。在 CompleteFTP 团队发布了一个自动检查易受攻击密钥并在需要时提示用户重新生成密钥的更新后,该漏洞已被遏制。研究人员还开发了一种通过将整数表示为多项式来进行整数分解的技术,该技术可用于分解一般的 RSA 模数。这些漏洞的发现凸显了实践研究的重要性,以及持续监控密码学实现以识别和解决潜在弱点的需求。
CdXz5zHNQW_iFKnuRveAb.webp
CdXz5zHNQW_sN7fPOqey7.webp
Trailmark 是一个新的开源库,能够将源代码转换为可查询的调用图。该图表示函数、类及其关系,并包含语义元数据。Claude 技能可以通过 Python API 直接与该图交互。传统的安全分析通常依赖发现列表,但攻击者以图的方式思考,这使得防御者处于劣势。Trailmark 旨在为 Claude 等 AI 模型提供基于图的推理能力。变异测试是一种通过引入微小代码变更来评估测试质量的方法,会产生大量存活的变异体。这些变异体的扁平列表无法区分等价变异体、死代码或真正具有意义的变异体。Trailmark 使 Claude 能够根据安全相关性对这些变异体进行分诊,例如从不可信输入的可到达性角度进行分析。该库分三个阶段处理代码:使用 tree-sitter 进行解析以生成抽象语法树(AST),索引到高性能图中,并查询调用者、被调用者和攻击面等信息。Trailmark 支持十七种编程语言,并提供八个预构建的 Claude Code 技能。这些技能可协助完成变异体分诊、测试向量生成和协议图绘制等任务。例如,"genotoxic"技能利用图分析对存活变异体进行分类;"vector-forge"技能则生成测试向量以填补已识别的覆盖率缺口。Trailmark 还集成了静态分析器和审计工具的发现结果,并将其映射到代码图上。在加密库的内部使用中,我们发现等价变异体在测试充分的代码中往往占多数,而扁平列表会遗漏这一细节。图分析还揭示了架构瓶颈,例如 libhydrogen 中单个置换原语影响了所有加密操作。对于缺乏标准化测试向量的新颖构造,变异测试通过识别测试未能约束代码行为的位置而证明其价值。在各种代码库中,出现了常见模式:算术模块具有较大的爆炸半径,编解码器解析器是模糊测试的理想目标,而基于属性的测试往往稀疏。最终,Trailmark 作为连接不同分析工具的纽带,使更针对性的安全评估成为可能。