Challenge 72 β˜†

Welcome to challenge Challenge 72.

Challenge 72: Find the Secret in the AI Coding-Agent Transcript

AI coding agents like Codex, Claude Code, and Cursor read files, run commands, and produce detailed session transcripts. When a developer asks an agent to debug a deployment issue, the agent may read configuration files containing secrets and echo those values into its session output.

This application ships a Codex session transcript where a developer asked the agent to investigate a failing staging deployment. The transcript captures the agent reading a .env.staging file and outputting its contents β€” including the deploy token β€” as part of normal debugging workflow.

Download the transcript from /challenges/challenge-72/codex-session-transcript.md and find the staging deploy token that was exposed during the session.

Note

The token appears naturally in the transcript output β€” the agent did not intend to leak it, it simply read a file as part of its debugging process.

πŸ’‘ Tip: Secrets are often strings, numbers, or encoded values. Copy and paste exactly what you find.

Open /challenges/challenge-72/codex-session-transcript.md and search for the line containing DEPLOY_TOKEN=. The value after the equals sign is the answer.

The same file is in the source tree at src/main/resources/challenges/challenge-72/codex-session-transcript.md.

Why AI coding-agent transcripts are a secret-leakage risk

AI coding agents read your files, execute your commands, and produce session logs. When a developer asks an agent to debug an issue, the agent may read configuration files, environment variables, or secrets managers β€” and output those values in its transcript. This is exactly what happened in this challenge: the agent read a .env.staging file and echoed the deploy token into its session output.

The transcript becomes a persistent artifact that can be:

  • Committed to version control if the developer saves it

  • Shared with teammates for context or handoff

  • Uploaded to support channels when reporting bugs

  • Stored in agent history files on the developer’s machine

  • Indexed by IDE plugins or local search tools

Three failures compound in this scenario:

  • The secret exists in a plaintext configuration file, making it trivially readable by any tool or agent.

  • The agent’s debugging process naturally surfaces the secret in its output, creating a secondary copy of the credential.

  • The transcript is likely to be saved, shared, or committed without review, since it "looks like" debug output rather than sensitive data.

What to do instead:

- Never store secrets in plaintext configuration files. Use a secret manager or environment variables injected at runtime.
- Configure agents to redact sensitive values before outputting them. Many agent tools support output filtering or sandboxing.
- Review agent transcripts before saving or sharing them, just as you would review a pull request.
- Treat any transcript that read from a secrets source as potentially compromised, and rotate the exposed credentials.
- Use short-lived, scoped tokens for staging deployments so that exposure has limited blast radius.
Note

AI coding agents are powerful tools, but they operate on the same files and environment you do. If a human developer would copy-paste a secret into a chat log, an agent will do the same β€” except the agent produces a structured transcript that is even easier to search and share.


πŸ€– Codex session transcript

This application ships a Codex session transcript where a developer asked the agent to investigate a failing staging deployment. The transcript captures the agent reading configuration files and outputting their contents β€” including a deploy token.

Fetch the transcript:

curl -sO http://www.wrongsecrets.com/challenges/challenge-72/codex-session-transcript.md

…or read it right here:

Open in new tab

πŸ’‘ The agent read a staging config file and echoed its contents β€” including a deploy token. Find that token in the transcript output.