Ausnahme gefangen: SSL certificate problem: certificate is not yet valid ๐Ÿ“Œ Improving software supply chain security with tamper-proof builds

๐Ÿ  Team IT Security News

TSecurity.de ist eine Online-Plattform, die sich auf die Bereitstellung von Informationen,alle 15 Minuten neuste Nachrichten, Bildungsressourcen und Dienstleistungen rund um das Thema IT-Sicherheit spezialisiert hat.
Ob es sich um aktuelle Nachrichten, Fachartikel, Blogbeitrรคge, Webinare, Tutorials, oder Tipps & Tricks handelt, TSecurity.de bietet seinen Nutzern einen umfassenden รœberblick รผber die wichtigsten Aspekte der IT-Sicherheit in einer sich stรคndig verรคndernden digitalen Welt.

16.12.2023 - TIP: Wer den Cookie Consent Banner akzeptiert, kann z.B. von Englisch nach Deutsch รผbersetzen, erst Englisch auswรคhlen dann wieder Deutsch!

Google Android Playstore Download Button fรผr Team IT Security



๐Ÿ“š Improving software supply chain security with tamper-proof builds


๐Ÿ’ก Newskategorie: IT Security Nachrichten
๐Ÿ”— Quelle: security.googleblog.com


Many of the recent high-profile software attacks that have alarmed open-source users globally were consequences of supply chain integrity vulnerabilities: attackers gained control of a build server to use malicious source files, inject malicious artifacts into a compromised build platform, and bypass trusted builders to upload malicious artifacts.

Each of these attacks could have been prevented if there were a way to detect that the delivered artifacts diverged from the expected origin of the software. But until now, generating verifiable information that described where, when, and how software artifacts were produced (information known as provenance) was difficult. This information allows users to trace artifacts verifiably back to the source and develop risk-based policies around what they consume. Currently, provenance generation is not widely supported, and solutions that do exist may require migrating build processes to services like Tekton Chains.

This blog post describes a new method of generating non-forgeable provenance using GitHub Actions workflows for isolation and Sigstoreโ€™s signing tools for authenticity. Using this approach, projects building on GitHub runners can achieve SLSA 3 (the third of four progressive SLSA โ€œlevelsโ€), which affirms to consumers that your artifacts are authentic and trustworthy.

Provenance


SLSA ("Supply-chain Levels for Software Artifactsโ€) is a framework to help improve the integrity of your project throughout its development cycle, allowing consumers to trace the final piece of software you release all the way back to the source. Achieving a high SLSA level helps to improve the trust that your artifacts are what you say they are.

This blog post focuses on build provenance, which gives users important information about the build: who performed the release process? Was the build artifact protected against malicious tampering? Source provenance describes how the source code was protected, which weโ€™ll cover in future blog posts, so stay tuned.

Go prototype to generate non-forgeable build provenance


To create tamperless evidence of the build and allow consumer verification, you need to:
  1. Isolate the provenance generation from the build process;
  2. Isolate against maintainers interfering in the workflow;
  3. Provide a mechanism to identify the builder during provenance verification.

The full isolation described in the first two points allows consumers to trust that the provenance was faithfully recorded; entities that provide this guarantee are called trusted builders.

Our Go prototype solves all three challenges. It also includes running the build inside the trusted builder, which provides a strong guarantee that the build achieves SLSA 3โ€™s ephemeral and isolated requirement.

How does it work?

The following steps create the trusted builder that is necessary to generate provenance in isolation from the build and maintainerโ€™s interference.

Step One: Create a reusable workflow on GitHub runners

Leveraging GitHubโ€™s reusable workflows provides the isolation mechanism from both maintainersโ€™ caller workflows and from the build process. Within the workflow, Github Actions creates fresh instances of virtual machines (VMs), called runners, for each job. These separate VMs give the necessary isolation for a trusted builder, so that different VMs compile the project and generate and sign the SLSA provenance (see diagram below).

Running the workflow on GitHub-hosted runners gives the guarantee that the code run is in fact the intended workflow, which self-hosted runners do not. This prototype relies on GitHub to run the exact code defined in the workflow.

The reusable workflow also protects against possible interference from maintainers, who could otherwise try to define the workflow in a way that interferes with the builder. The only way to interact with a reusable workflow is through the input parameters it exposes to the calling workflow, which stops maintainers from altering information via environment variables, steps, services and defaults.

To protect against the possibility of one job (e.g. the build step) tampering with the other artifacts used by another job (the provenance step), this approach uses a trusted channel to protect the integrity of the data. We use job outputs to send hashes (due to size limitations) and then use the hashes to verify the binary received via the untrusted artifact registry.

Step 2: Use OpenID Connect (OIDC) to prove the identity of the workflow to an external service (Sigstore)

OpenID Connect (OIDC) is a standard used across the web for identity providers (e.g., Google) to attest to the identity of a user for a third party. GitHub now supports OIDC in their workflows. Each time a workflow is run, a runner can mint a unique JWT token from GitHubโ€™s OIDC provider. The token contains verifiable information of the workflow identity, including the caller repository, commit hash, trigger, and the current (reuseable) workflow path and reference.

Using OIDC, the workflow proves its identity to Sigstore's Fulcio root Certificate Authority, which acts as an external verification service. Fulcio signs a short-lived certificate attesting to an ephemeral signing key generated in the runner and tying it to the workload identity. A record of signing the provenance is kept in Sigstoreโ€™s transparency log Rekor. Users can use the signing certificate as a trust anchor to verify that the provenance was authenticated and non-forgeable; it must have been created inside the trusted builder.

Verification


The consumer can verify the artifact and its signed provenance with these steps:
  1. Look up the corresponding Rekor log entry and verify the signature;
  2. Verify the trusted builder identity by extracting it from the signing certificate;
  3. Check that the provenance information matches the expected source and build.
See an example in action in the official repository.

Performing these steps guarantees to the consumer that the binary was produced in the trusted builder at a given commit hash attested to in the provenance. They can trust that the information in the provenance was non-forgeable, allowing them to trust the build โ€œrecipeโ€ and trace their artifact verifiably back to the source.

Extra Bonus: Keyless signing

One extra benefit of this method is that maintainers donโ€™t need to manage or distribute cryptographic keys for signing, avoiding the notoriously difficult problem of key management. The OIDC protocol requires no hardcoded, long-term secrets be stored in GitHub's secrets, which sidesteps the potential problem of key mismanagement invalidating the SLSA provenance. Consumers simply use OIDC to verify that the binary artifact was built from a trusted builder that produced the expected provenance.

Next Steps

Utilizing the SLSA framework is a proven way for ensuring software supply-chain integrity at scale. This prototype shows that achieving high SLSA levels is easier than ever thanks to the newest features of popular CI/CD systems and open-source tooling. Increased adoption of tamper-safe (SLSA 3+) build services will contribute to a stronger open-source ecosystem and help close one easily exploited gap in the current supply chain.

We encourage testing and adoption and welcome any improvements to the project. Please share feedback, comments and suggestions at slsa-github-generator-go and slsa-verifier project repositories. We will officially release v1 in a few weeks!

In follow-up posts, we will demonstrate adding non-forgeable source provenance attesting to secure repository settings, and showcase the same techniques for other build toolchains and package managers, etc. Stay tuned!
...



๐Ÿ“Œ Improving Software Supply Chain Security


๐Ÿ“ˆ 37.38 Punkte

๐Ÿ“Œ Attack inception: Compromised supply chain within a supply chain poses new risks


๐Ÿ“ˆ 36.39 Punkte

๐Ÿ“Œ Crossword Cybersecurity Supply Chain Cyber practice improves supply chain resilience for organizations


๐Ÿ“ˆ 36.39 Punkte

๐Ÿ“Œ AWS Supply Chain helps businesses optimize supply chain processes


๐Ÿ“ˆ 36.39 Punkte

๐Ÿ“Œ An earlier supply chain attack led to the 3CX supply chain attack, Mandiant says


๐Ÿ“ˆ 36.39 Punkte

๐Ÿ“Œ Improving Software Supply Chain Cybersecurity


๐Ÿ“ˆ 35.46 Punkte

๐Ÿ“Œ chain-bench: auditing your software supply chain stack for security compliance


๐Ÿ“ˆ 33.44 Punkte

๐Ÿ“Œ 4 Best Practices for Improving Your Organizationโ€™s Supply Chain Security


๐Ÿ“ˆ 33.04 Punkte

๐Ÿ“Œ Integrating Software Supply Chains and DevOps: Tips for Effectively Reconciling Supply Chain Management and DevOps


๐Ÿ“ˆ 31.74 Punkte

๐Ÿ“Œ Improving supply chain performance


๐Ÿ“ˆ 31.12 Punkte

๐Ÿ“Œ MICROCHIPS Act aims at improving tech supply chain


๐Ÿ“ˆ 31.12 Punkte

๐Ÿ“Œ Schadcode auf PyPI: Supply-Chain-Angriff auf PyTorch Nightly Builds


๐Ÿ“ˆ 29.5 Punkte

๐Ÿ“Œ Schadcode auf PyPI: Supply-Chain-Angriff auf PyTorch Nightly Builds


๐Ÿ“ˆ 29.5 Punkte

๐Ÿ“Œ Why Reduce Software Supply Chain Risks with Intelligent Software Security


๐Ÿ“ˆ 28.79 Punkte

๐Ÿ“Œ Software bill of materials: a critical component of software supply chain security


๐Ÿ“ˆ 28.79 Punkte

๐Ÿ“Œ Aqua Security Collaborates With Center for Internet Security to Create Guide for Software Supply Chain Security


๐Ÿ“ˆ 28.29 Punkte

๐Ÿ“Œ Hackers tamper with exploit chain to drop Agent Tesla, circumvent antivirus solutions


๐Ÿ“ˆ 27.39 Punkte

๐Ÿ“Œ How the Secure Software Factory Reference Architecture protects the software supply chain


๐Ÿ“ˆ 26.87 Punkte

๐Ÿ“Œ What is Software Supply Chain Risk Management and Why Should We (as an Org That Uses Software) Care?


๐Ÿ“ˆ 26.87 Punkte

๐Ÿ“Œ Tanium Software Bill of Materials identifies software supply-chain vulnerabilities


๐Ÿ“ˆ 26.87 Punkte

๐Ÿ“Œ GitLab enhances Security and Governance solution to strengthen software supply chain security


๐Ÿ“ˆ 26.37 Punkte

๐Ÿ“Œ Security-Automatisierung in der Software Supply Chain


๐Ÿ“ˆ 24.45 Punkte

๐Ÿ“Œ Trojanized Security Software Hits South Korea Users in Supply-Chain Attack


๐Ÿ“ˆ 24.45 Punkte

๐Ÿ“Œ Hacked Security Software Used in Novel South Korean Supply-Chain Attack


๐Ÿ“ˆ 24.45 Punkte

๐Ÿ“Œ Supply chain attacks are on the rise: Check your software build pipeline security


๐Ÿ“ˆ 24.45 Punkte

๐Ÿ“Œ Open-source security: Google has a new plan to stop software supply chain attacks


๐Ÿ“ˆ 24.45 Punkte

๐Ÿ“Œ Slim.AI introduces beta software supply chain container security as a service


๐Ÿ“ˆ 24.45 Punkte

๐Ÿ“Œ Phylum Releases a Free Community Edition to Make Software Supply Chain Security More Accessible


๐Ÿ“ˆ 24.45 Punkte

๐Ÿ“Œ Software Supply Chain Chalks Up a Security Win With New Crypto Effort


๐Ÿ“ˆ 24.45 Punkte

๐Ÿ“Œ Tailor security training to developers to tackle software supply chain risks


๐Ÿ“ˆ 24.45 Punkte

๐Ÿ“Œ What Is Software Supply Chain Security?


๐Ÿ“ˆ 24.45 Punkte

๐Ÿ“Œ GrammaTech CodeSentry Named Editor's Choice Winner for Software Supply Chain Security in Global InfoSec Awards at RSA Conference 2022


๐Ÿ“ˆ 24.45 Punkte

๐Ÿ“Œ Boards, CEOs demand software supply chain security improvements


๐Ÿ“ˆ 24.45 Punkte

๐Ÿ“Œ Software supply chain security fixes gain prominence at RSA


๐Ÿ“ˆ 24.45 Punkte











matomo