tutorial · bandit

Bandit Level 28 → 29

Recover a removed secret by inspecting Git history.

By

banditgithistory
Marks this level complete in your browser.

Goal

Clone the bandit28-git repository and use its commit history to find the password.

Why this matters

Deleting a secret from the latest file does not remove it from earlier Git objects.

Progressive hints

  1. Hint 1

    Read the current README first.

  2. Hint 2

    Inspect the compact commit log.

  3. Hint 3

    Compare or show earlier versions of the changed file.

Method

Run only the lines that match the evidence you observe.

git clone <official-bandit28-repository-url>
cd repo && git log --oneline --decorate
git log -p -- README

Expected non-secret observation

An earlier diff shows the credential before it was replaced or redacted.

Explanation

Commits preserve snapshots and parent relationships; ordinary edits remain recoverable from history.

Troubleshooting

  • Run Git commands inside the cloned repository.
  • Limit the patch log to README if the history is noisy.

Safety and cleanup

  • Use only the OverTheWire game host and your own local practice directory.
  • Do not paste a level password into this site, screenshots, notes, or submissions. Baitaphish never asks for credentials.
  • Treat commands as learning prompts: inspect paths and flags before running them.

Completion and next step

Use the recovered credential only in the official Level 29 login. Then mark this transition complete and continue.