Safeguard
Security Guides•

How do you audit a mobile CI/CD pipeline? Twelve questions

Twelve plain questions to audit a mobile build and release pipeline: signing keys, store credentials, caches, runners, dependencies and approvals.

Safeguard Security Team
4 min read

Audit a mobile pipeline by asking twelve questions about where signing keys live, who can release, what untrusted code can reach, and which inputs are pinned. If you can answer each with a file, a setting or a log, you have a defensible pipeline. If you answer from memory, you have a risk.

The twelve questions

#QuestionWhat good looks like
1Where does each signing key live?One secret store, no copies on laptops or in repos
2Who can read it?A short, reviewed list
3Can pull request builds see signing or store credentials?No
4Is production release behind a tag or manual job with approval?Yes
5Do branch builds and release builds use different credentials?Yes, with narrower rights on branch builds
6Which store credential type is used?A scoped API key or service account, not a person's password
7What do caches contain, and who can write them?Downloads only, written by trusted jobs
8Are build tools and dependencies pinned and reviewed?Lockfiles committed, updates reviewed
9Are Gradle or package checksums verified?Yes, failing the build on mismatch
10Do self-hosted runners clean up after each job?Keychains and profiles deleted, ideally ephemeral
11Could a secret appear in a log?Debug off, nothing printed, rotation plan exists
12Can you tell what built a given release?Commit, lockfile hash and lane recorded

How to gather evidence

For each question, note where the answer is stored: a pipeline file, a settings screen, a policy. Take dated screenshots or exports, and put them in one folder. That folder is your audit trail, and it also helps when a customer sends a security questionnaire. Be careful to describe only what is true today.

Reading the answers

Questions 3, 4 and 5 deal with blast radius: what a hijacked branch build can do. Questions 1, 2 and 6 are about the credentials themselves. Questions 7, 8 and 9 cover what flows into the build. Questions 10 to 12 cover the machine and the record.

If you can only fix three things this quarter, fix 3, 5 and 7. Keeping untrusted code away from credentials and caches is the highest return step in most pipelines.

What the platforms back up

The vendor documentation supports several of these. The hosted CI guidance says anyone with write access reads all repository secrets, warns against sensitive data in cache paths, and says self-hosted runners can be persistently compromised. The fastlane docs recommend read-only signing on CI and release triggers by tag or manual job. Google Play's permission model separates testing-track and production rights. For details, see posts on CI release rights and cache contents.

Make it recurring

Put the twelve questions in a calendar item each quarter and after any CI migration or staff change. Record who answered and the date. A pipeline audited once and never again drifts.

Try it yourself

The demo shows continuous monitoring turning a one-time check into an ongoing one. Click through it and look at how a change triggers a new finding.

Click through it at your own pace, or open it full screen.

Where Safeguard fits

Safeguard helps with questions 8, 9 and 12: SBOM and dependency scanning, reachability analysis, policy gates and compliance evidence automation. Try the free scan.

Quick check

How often should I run this audit?

Quarterly, and after major pipeline or staffing changes.

Which question matters most?

Question 3. If untrusted builds can reach signing or store credentials, the rest matters less.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.