Offensive research of systems and processes related to developing and deploying code.
A curated list of unique and useful CI/CD attack techniques.
- (The) Postman Carries Lots of Secrets
- All the Small Things: Azure CLI Leakage and Problematic Usage Patterns
- Anyone can Access Deleted and Private Repository Data on GitHub - As long as it's part of a fork network.
- Beyond S3: Exposed Resources on AWS - Public EBS, RDS, AMI and ElasticSearch clusters exposed to the internet.
- CloudQuarry: Digging for secrets in public AMIs
- Employee Personal GitHub Repos Expose Internal Azure and Red Hat Secrets
- Fortune 500 at Risk: 250M Artifacts Exposed via Misconfigured Registries - Misconfigured public registries with software artifacts containing sensitive proprietary code and secrets.
- GitLab Secrets - A tool that can reveal deleted GitLab commits that potentially contain sensitive information and are not accessible via the public Git history.
- Hidden GitHub Commits and How to Reveal Them - A tool that can reveal deleted GitHub commits that potentially contain sensitive information and are not accessible via the public Git history.
- Holes in Your Bitbucket: Why Your CI/CD Pipeline Is Leaking Secrets
- Millions of Secrets Exposed via Web Application Frontends
- Publicly Exposed AWS Document DB Snapshots
- Thousands of images on Docker Hub leak auth secrets, private keys
- ActionsTOCTOU (Time Of Check to Time Of Use) - A tool to monitor for an approval event and then quickly replace a file in the PR head with a local file specified as a parameter.
- AWS Targeted by a Package Backfill Attack - Scan commit history for internal packages to execute dependency confusion.
- Can you trust ChatGPT's package recommendations? - Exploit generative AI platforms' tendency to generate non-existent coding libraries to execute Dependecy Confusion.
- Can You Trust Your VSCode Extensions? - Impersonate popular VSCode extensions and trick unknowing developers into downloading them.
- Deep dive into Visual Studio Code extension security vulnerabilities
- Dependency Confusion: How I Hacked Into Apple, Microsoft and Dozens of Other Companies
- Dependency Confusions in Docker and remote pwning of your infra
- Erosion of Trust: Unmasking Supply Chain Vulnerabilities in the Terraform Registry - Terraform modules are not protected by the Dependency Lock File, consequently, a seemingly harmless module could potentially introduce malicious code.
- Fixing typos and breaching microsoft's perimeter - Bypass GitHub workflow approval requirement by becoming a contributor.
- GitHub Dataset Research Reveals Millions Potentially Vulnerable to RepoJacking
- Gitloker attacks abuse GitHub notifications to push malicious OAuth apps
- Hacking GitHub AWS integrations again - Attacking misconfigured pipelines that use OIDC.
- How I hacked into Google's internal corporate assets - More ways to find dependencies in code for Dependency Confusion.
- How to completely own an airline in 3 easy steps - Misconfigured CI system accessible from the internet.
- Introducing MavenGate: a supply chain attack method for Java and Android applications - Many public and popular libraries that have long been abandoned are still being used in huge projects. Access to projects can be hijacked through domain name purchases.
- Keeping your GitHub Actions and workflows secure Part 1: Preventing pwn requests - Combining pull_request_target workflow trigger with an explicit checkout of an untrusted PR may lead to repository compromise.
- Keeping your GitHub Actions and workflows secure Part 2: Untrusted input - GitHub Actions command injection.
- Malicious code analysis: Abusing SAST (mis)configurations to hack CI systems
- PPE — Poisoned Pipeline Execution
- Security alert: social engineering campaign targets technology industry employees - Phishing GitHub users to download and execute repositories.
- The Monsters in Your Build Cache – GitHub Actions Cache Poisoning
- Thousands of npm accounts use email addresses with expired domains - Maintainer Email hijacking.
- Understanding typosquatting methods - for a secure supply chain
- Vulnerable GitHub Actions Workflows Part 1: Privilege Escalation Inside Your CI/CD Pipeline - GitHub Actions workflow_run PE.
- What the fork? Imposter commits in GitHub Actions and CI/CD
- WordPress Plugin Confusion: How an update can get you pwned
- From Self-Hosted GitHub Runner to Self-Hosted Backdoor
- Hacking Terraform State for Privilege Escalation
- Hijacking GitHub runners to compromise the organization - Registering a GitHub runner with the ubuntu-latest tag grants access to jobs originally designated for GitHub-provisioned runners.
- How We Discovered Vulnerabilities in CI/CD Pipelines of Popular Open-Source Projects - Extracting all repository and organization secrets in GitHub Actions.
- Invisible Ghost: Alarming Vulnerability in GitHub Copilot - Using hidden Unicode characters to manipulate GitHub Copilot's suggestions.
- Leaking Secrets From GitHub Actions: Reading Files And Environment Variables, Intercepting Network/Process Communication, Dumping Memory
- Living off the pipeline - Inventory how development tools (typically CLIs), have lesser-known RCE-By-Design features.
- Registering self-hosted CircleCI runner - Can be used to steal secrets of job executed on the malicious runner.
- The GitHub Actions Worm: Compromising GitHub Repositories Through the Actions Dependency Tree
- #redteam tip: want to discretely extract credentials from a CI/CD pipeline? - Draft pull requests won't alert repository contributors, but will still trigger pipelines.
- Abusing Repository Webhooks to Access Internal CI/CD Systems at Scale
- Bypassing required reviews using GitHub Actions
- Forging signed commits on GitHub
- GitHub comments abused to push malware via Microsoft repo URLs - Hidden GitHub comment link.
- How a Single Vulnerability Can Bring Down the JavaScript Ecosystem - Cache poisoning attack on the NPM registry rendering packages unavailable.
- One Supply Chain Attack to Rule Them All – Poisoning GitHub's Runner Images
- PR sneaking - Methods of sneaking malicious code into GitHub pull requests.
- StarJacking – Making Your New Open Source Package Popular in a Snap
- The massive bug at the heart of the npm ecosystem - NPM Manifest Confusion.
- Trojan Source - Rather than inserting logical bugs, adversaries can attack the encoding of source code files to inject vulnerabilities.
- Unpinnable Actions: How Malicious Code Can Sneak into Your GitHub Actions Workflows
- Why npm lockfiles can be a security blindspot for injecting malicious modules
- Working as unexpected - Creating a GitHub branch that matches a branch protection rule pattern with a workflow file that triggers on push to gain access to environment secrets.
- Zuckerpunch - Abusing Self Hosted GitHub Runners at Facebook - Hide commits in a GitHub PR.
- ADOKit - Azure DevOps Services Attack Toolkit.
- Gato - GitHub Attack Toolkit.
- GH Archive - A project to record the public GitHub timeline, archive it, and make it easily accessible for further analysis.
- GHTorrent Project - A queryable offline mirror of the GitHub API data. Tutorial.
- git-dumper - Dump Git repository from a website.
- GitFive - OSINT tool to investigate GitHub profiles.
- Grep.app - Search GitHub using regex.
- Jenkins Attack Framework
- Nord Stream - A tool to extract secrets stored inside CI/CD environments.
- pwn_jenkins - Notes about attacking Jenkins servers.
- Secrets Patterns Database - The largest open-source database for detecting secrets, API keys, passwords, tokens, and more.
- Sourcegraph - A web-based code search and navigation tool for public repositories.
- Token-Spray - Automate token validation using Nuclei.