- Notifications
You must be signed in to change notification settings - Fork0
Macaron is an extensible supply-chain security analysis framework from Oracle Labs that supports a wide range of build systems and CI/CD services. It can be used to prevent supply chain attacks or check conformance to frameworks, such as SLSA.
License
AnshulDadhwal/macaron
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Macaron is a supply chain security analysis tool fromOracle Labs, which focuses on the build integrity of an artifact and the artifact dependencies. It is based on theSupply chain Levels for Software Artifacts (SLSA) specification, which aims at preventing some of the software supply chain attacks as the systems get more complex, especially with respect to the use of open-source third-party code in applications. Attacks include stealing credentials, injecting malicious code etc., and it is critical to have security assurance on the third-party code to guarantee that the integrity of the code has not been compromised.
Macaron usesSLSA requirements specifications to define concrete rules for protecting software integrity that can be checked for compliance requirements automatically. Macaron provides a customizable checker platform that makes it easy to define checks that depend on each other. This is particularly useful for implementing checks for SLSA levels. In addition, Macaron also checks a user-specified policy for a software component to detect unexpected behavior in the build process. We currently support the following build tools:
- Maven and Gradle Java build systems
- Pip or Poetry package managers for Python
- npm and Yarn for JavaScript
- Go
- Docker
For the full list of supported technologies, such as CI services, registries, and provenance types seethis page. Macaron is a work-in-progress project. We plan to support more build systems and technologies in the future.
- To learn how to download and run Macaron, see our documentationhere.
- Check out ourtutorials to see how Macaron can detect software supply chain issues.
- You can also watchthis demo to learn more about Macaron.
This project welcomes contributions from the community. Before submitting a pull request, pleasereview our contribution guide.
After cloning a repository, Macaron parses the CI configuration files and bash scripts that are triggered by the CI, creates call graphs and other intermediate representations as abstractions. Using such abstractions, Macaron implements concrete checks to gather facts and metadata based on a security specification.
To learn how to define your own checks, see the steps in thechecks documentation.
- Behnaz Hassanshahi, Trong Nhan Mai, Alistair Michael, Benjamin Selwyn-Smith, Sophie Bates, and Padmanabhan Krishnan:Macaron: A Logic-based Framework for Software Supply Chain Security Assurance. SCORED 2023. Best paper award 🏆
@inproceedings{10.1145/3605770.3625213, author = {Hassanshahi, Behnaz and Mai, Trong Nhan and Michael, Alistair and Selwyn-Smith, Benjamin and Bates, Sophie and Krishnan, Padmanabhan}, title = {Macaron: A Logic-Based Framework for Software Supply Chain Security Assurance}, year = {2023}, isbn = {9798400702631}, publisher = {Association for Computing Machinery}, url = {https://doi.org/10.1145/3605770.3625213}, doi = {10.1145/3605770.3625213}, booktitle = {Proceedings of the 2023 Workshop on Software Supply Chain Offensive Research and Ecosystem Defenses}, pages = {29–37}, series = {SCORED'23}}
We have integratedSLSA provenance generation for our Docker image and release artifacts. However, due to a strict policy regarding the use of third-party GitHub Actions, we cannot generate the provenances in this repository yet untilthis issue is resolved.
Please consult thesecurity guide for our responsible security vulnerability disclosure process.
Copyright (c) 2022, 2024 Oracle and/or its affiliates.Macaron is licensed under theUniversal Permissive License (UPL), Version 1.0.
About
Macaron is an extensible supply-chain security analysis framework from Oracle Labs that supports a wide range of build systems and CI/CD services. It can be used to prevent supply chain attacks or check conformance to frameworks, such as SLSA.
Resources
License
Security policy
Stars
Watchers
Forks
Packages0
Languages
- Python88.5%
- HTML6.9%
- Shell2.5%
- Makefile1.1%
- Go0.7%
- CUE0.2%
- Dockerfile0.1%