Hidden files
Your home folder looks almost empty, but it isn't. Learn to reveal what ls keeps hidden and find the key to the hiding place.
Lab 3 of 9 in the Linux Fundamentals path. If you get stuck you have 3 hints, from the vaguest to the most precise: they cost 0, 40 and 100 XP.
What you learn
Objectives complete themselves while you work in the terminal; each one is worth experience points:
- Reveal hidden files (ls -a or ll) (60 XP)
- Read a hidden configuration file (.bashrc) (60 XP)
- Enter the hiding place and read lista.txt (50 XP)
- Open the hidden file .chiave_runner (50 XP)
Topics: linux, dotfile.
Commands you will use
The terminal is simulated and understands about forty Linux commands. In this lab you will mostly need these:
ls: lists the files in a folder; with -l it shows permissions and owners, with -a hidden files too. It is the first command on any machine.cat: prints the contents of a file: the most direct way to read configurations, notes and logs.cd: changes folder, with an absolute path (starting from /) or a relative one (with . and ..).
The simulated environment
You work in a simulated Linux shell, in the home folder of the user runner: invented files and folders, no network target.
The defensive lesson
Once the lab is solved, the write-up explains what went wrong and how to protect yourself:
A hidden file is not a protected file: the dot in front of the name only keeps ls tidy. Anyone exploring a machine looks at hidden files first (.bash_history, .ssh, .env, .config), because keys, tokens and passwords end up there. Defense: do not leave secrets in configuration files readable by everyone, use strict permissions (chmod 600) and never publish a .env.
Before and after this lab
To unlock it you must have solved:
- Where am I? Absolute and relative paths (Linux Fundamentals, easy)
After this lab you can move on to:
- Reading in pieces (Linux Fundamentals, easy)
- Mapping a host (Recon & Scanning, easy)
The Linux Fundamentals path
Linux Fundamentals is the starting point. Almost every server, network device and security tool runs on Linux, and anyone who defends a system (or tests it with permission) spends much of their time in a terminal. Here you learn to move around the filesystem, find hidden files, read huge logs piece by piece, search for words with grep, chain commands with pipes and understand permissions, environment variables and history: the basics you will use in every other path.