Trail of Bits Blog
Trail of Bits examined how Microsoft integrated Copilot into Windows 11 and found the side pane is a view into Microsoft Edge running Bing AI inside an msedge.exe process, with no local AI model and all queries processed on remote servers. Copilot can run...
Trail of Bits Blog
Trail of Bits found that the Ethereum ABI specification permits zero-sized types, letting a payload of 8 on-disk bytes deserialize to 2^32 elements and exhaust memory in eth_abi (Python), ethabi (Rust), alloy-rs 0.4.2, and ethereumjs-abi 0.6.8. At the time...
Trail of Bits Blog
Trail of Bits describes signal tagging, a Circom feature introduced in version 2.1.0 that lets developers specify and enforce preconditions and postconditions on templates at compile time without adding constraints. The post lays out four usage rules and...
Trail of Bits Blog
Trail of Bits describes security assessments it conducted through the Open Source Technology Improvement Fund (OSTIF) on open-source projects including the Linux kernel release signing process, CloudEvents, curl/libcurl, KEDA, Mosquitto, Jetty, and JKube,...
OT / ICS & Critical Infrastructure
Trail of Bits Blog
Trail of Bits lays out a seven-step plan for adopting Semgrep, a static analysis tool that finds bugs and code patterns across more than 30 languages and is distinguished by built-in rules and easy custom rule creation. The plan runs from checking...
Trail of Bits Blog
Trail of Bits describes its work as a member of the Open Technology Fund's Red Team Lab, including 2019 security and usability improvements to Warehouse, the codebase behind PyPI, which as of 2024 hosts over 500,000 projects and 750,000 maintainers and...
Trail of Bits Blog
Trail of Bits disclosed LeftoverLocals, a vulnerability that allows recovery of data from GPU local memory created by another process on Apple, Qualcomm, AMD, and Imagination GPUs. The researchers state it impacts the security posture of GPU applications...
Trail of Bits Blog
Trail of Bits disclosed LeftoverLocals, a vulnerability that allows recovery of data from GPU local memory created by another process on Apple, Qualcomm, AMD, and Imagination GPUs. The firm states the flaw affects the security posture of GPU applications...
Endpoint & Network Security
Trail of Bits Blog
Trail of Bits disclosed LeftoverLocals (CVE-2023-4969), a vulnerability that lets one process recover data from GPU local memory written by another process on Apple, Qualcomm, AMD, and Imagination GPUs. The researchers built a proof of concept that listens...
Vulnerabilities & Patching
Trail of Bits Blog
Trail of Bits published 30 custom Semgrep rules for Ansible playbooks, Java and Kotlin code, shell scripts, and Docker Compose configuration files, created and used to audit for common security vulnerabilities in those technologies. The rules target issues...
Trail of Bits Blog
DARPA opened registration for its AI Cyber Challenge and released a request for comments containing a sample challenge problem and the scoring methodology. Competing teams must build fully automated cyber reasoning systems that find and patch...
Vulnerabilities & Patching
Trail of Bits Blog
Trail of Bits spent eight months working with the Python Cryptographic Authority to build cryptography-x509-verification, a pure-Rust implementation of the X.509 path validation algorithm, released in Cryptography's 42.0.0 series at roughly 2,500 lines of...
Trail of Bits Blog
Trail of Bits ported Intel's SGX SDK to Nixpkgs so SGX enclaves can be built reproducibly with the Nix package manager, letting anyone verify that an enclave's MRENCLAVE hash matches its claimed source code. The post notes that existing builds for...
Trail of Bits Blog
Trail of Bits released DIFFER, an open-source differential testing tool that runs an original program against transformed variants with the same seed inputs and compares outputs to find bugs and soundness violations. In a study with GrammaTech, DIFFER...
Trail of Bits Blog
Trail of Bits engineers attended the 37th Chaos Communication Congress (37C3) in Hamburg, where they ran two binary exploitation sessions on Pwndbg and Pwntools and attended talks on LibAFL fuzzing, side-channel attacks on Intel SGX used to break UHD...
Trail of Bits Blog
Trail of Bits combined Cosmos SDK's high-level blockchain simulator, which runs purely random transactions, with Go's native smart fuzzing by replacing the simulator's random number source with a deterministic arraySource fed by fuzzer input. Running this...
Trail of Bits Blog
Trail of Bits released BTIGhidra, a Ghidra extension that infers type information from binaries using inter-procedural analysis that propagates and resolves type constraints between functions. The tool uses flow-sensitive data-flow analyses from FKIE-CAD's...
Trail of Bits Blog
Trail of Bits added a fuzzing chapter to its Testing Handbook, covering how to install and use libFuzzer, AFL++, and cargo-fuzz for C/C++ and Rust projects. The chapter addresses the lack of a uniform fuzzing setup across CMake, Autotools, and plain...
Trail of Bits Blog
Trail of Bits researcher Yarden Shafir documented that symbolic links created through Windows Subsystem for Linux cannot be followed by Windows, an issue she encountered while using WSL for daily work. Her other published research covers Windows Copilot,...
Endpoint & Network Security
Trail of Bits Blog
Symlinks created inside Windows Subsystem for Linux cannot be followed by Windows, which opens them as 0 KB files and fails with an STATUS_IO_REPARSE_TAG_NOT_HANDLED error because it does not recognize the "LX symlink" tag. Windows symlinks and junctions...
Trail of Bits Blog
Trail of Bits published a guide to AWS cryptography services, splitting them into back-end services such as KMS and CloudHSM and client-side tools such as the AWS Encryption SDK, the AWS Database Encryption SDK, and the S3 Encryption Client. The post notes...
Trail of Bits Blog
Trail of Bits researchers examined AWS Nitro Enclaves and found that the hashes of the pre-compiled init executable and NSM driver shipped with nitro-cli 1.2.2 differ from those built from the aws-nitro-enclaves-sdk-bootstrap source, while the kernel...
Trail of Bits Blog
Trail of Bits disclosed a denial-of-service vulnerability in the Pedersen distributed key generation phase of threshold signature implementations based on the Frost, DMZ21, GG20, and GG18 protocols, which lets a single malicious participant raise the...
Trail of Bits Blog
Trail of Bits used Google's Atheris coverage-guided fuzzer, built on libFuzzer and Clang, to fuzz the cbor2 Python library's optional C extension and found multiple memory corruption bugs, including a NULL pointer dereference in a Py_DECREF call in...
Endpoint & Network Security
Trail of Bits Blog
Trail of Bits' Circomspect, a static analysis tool for Circom zero-knowledge circuits, is now integrated into the Sindri command-line interface. Sindri CEO Stasia Carson said the CLI aims to offer a unified cross-framework interface for static analysis,...
Trail of Bits Blog
The US Army's PEO IEW&S issued an RFI on automating production of an AI bill of materials as part of Project Linchpin, which aims to build an operational pipeline for deploying AI/ML to intelligence, cyber, and electronic warfare systems. Trail of Bits'...
AI Security
Trail of Bits Blog
Trail of Bits was hired by the Open Source Technology Improvement Fund (OSTIF) near the end of 2022 to perform a security assessment of the cURL command-line utility and its libcurl library. The engagement covered a code review, a threat model, and...
Supply Chain & AppSec
Trail of Bits Blog
Trail of Bits researchers reviewing Arbitrum Nitro and contracts integrating with it found that retryable tickets, which carry calls from the Ethereum base chain to the rollup, are expected to execute in submission order but are not guaranteed to. Because...
Trail of Bits Blog
Trail of Bits was hired by OSTIF at the end of 2022 to assess cURL and libcurl, including an effort to improve the project's fuzzing code in the curl-fuzzer repository that OSS-Fuzz has run since July 1, 2017. By setting libcurl options such as...
Supply Chain & AppSec
Trail of Bits Blog
Trail of Bits added new features to Fickling, its decompiler, static analyzer, and bytecode rewriter for Python pickle files, including a PyTorch module and a Polyglot module that identifies multiple PyTorch file formats. The tool produces JSON output...
Detection & Response