This challenge teaches the absolute basics of netcat (nc): connecting to a remote host and port, reading what the service sends back, and responding correctly to get the flag — the very first building block of any network/pwn-oriented CTF.
- Platform: picoGym
- Category: Misc
- Points: 50 pts
- Difficulty: Beginner
- Tools: netcatnc
Challenge description
The challenge simply provides a connection command to a remote service:
"Can you connect to this service and figure out what it wants?"
nc saturn.picoctf.net 54321
No binary to download, no file to analyze — everything happens live over the network, via a raw TCP connection. It's the perfect opportunity to learn the single most fundamental tool of any network-oriented CTF: netcat.
Step 1 — Connect with netcat
netcat (often shortened to nc) opens a raw TCP or UDP connection to any host and port, and lets you interact directly with the service by typing text on the keyboard. We simply run:
$ nc saturn.picoctf.net 54321
As soon as the connection is established, the remote service usually sends a welcome message (the "banner") that appears immediately in the terminal.
Step 2 — Read the service's instructions
Once connected, the service explains what it expects in return. On this challenge, the banner looks like this:
Welcome to netcat101!
If you can read this, you already know how to connect.
Type FLAG_PLEASE and press enter to get your flag.
>
The message is explicit: just type the requested command, exactly as shown, to receive the flag in return.
Step 3 — Respond correctly
We type the exact string requested by the service, then confirm with Enter:
> FLAG_PLEASE
Netcat directly forwards every line typed on the keyboard to the remote service over the open TCP connection — no need to format anything, whatever is typed (followed by Enter) is sent as-is over the network.
Step 4 — Grab the flag
The service immediately responds with the flag in plaintext:
picoCTF{***}
Here's the complete session, from start to finish:
$ nc saturn.picoctf.net 54321
Welcome to netcat101!
If you can read this, you already know how to connect.
Type FLAG_PLEASE and press enter to get your flag.
> FLAG_PLEASE
picoCTF{***}
🚩 picoCTF{ flag intentionally hidden }
The flag is deliberately hidden — follow the method, you've earned it. 💪
Key takeaways
A short challenge, but one that lays an absolutely essential foundation:
-
netcatis often nicknamed the "Swiss Army knife of networking" — it lets you manually connect to any TCP/UDP service - Knowing how to read a banner and respond to it by hand is essential before scripting anything with tools like
pwntools - The vast majority of pwn and network CTF challenges start with a simple
nc host portcommand — mastering this basic step saves precious time on everything that follows
Originally published on CTFdojo — join the CTFdojo Discord to discuss writeups and get notified about new ones.
Top comments (0)