runme.py

Published: April 2, 2026

Description

Run this Python script to get the flag.

Download runme.py from the challenge page.

Solution

  1. Step 1Run the script
    Execute runme.py with the Python 3 interpreter. The script prints the flag directly to stdout -- no additional input is needed.
    python3 runme.py
    Learn more

    Python is an interpreted language -- scripts are not compiled to native machine code in advance but are read and executed line by line by the Python interpreter. Running a script requires explicitly invoking the interpreter: python3 runme.py tells the shell to start the Python 3 interpreter and pass it the file as input.

    The distinction between python3 and python matters: on many modern Linux and macOS systems, the python command points to Python 2 (now end-of-life), while python3 explicitly invokes Python 3. Always use python3 unless you know the script requires Python 2.

    On Unix-like systems, a script can be made directly executable by:

    • Adding a shebang line at the top: #!/usr/bin/env python3
    • Granting execute permission: chmod +x runme.py
    • Running it directly: ./runme.py

    The shebang (#!) tells the kernel which interpreter to use for the file. CTF scripts often lack this, requiring you to invoke the interpreter manually -- which is always safe and explicit.

Flag

picoCTF{...}

The simplest possible challenge -- Python scripts must be explicitly executed with the interpreter; they do not run on their own by double-clicking in most CTF environments.

More General Skills