Ghost
00 First Contact
[ Level 0 → 1 ] First Contact
─────────────────────────────────────────────
The previous analyst left in a hurry.
His terminal is still open. His files — still here.
Find what he left behind.
Goal: Retrieve the password for ghost1
Connect: ssh ghost1@204.168.229.209 -p 2222
If you're stuck — read up on the topic, then come back:
https://man7.org/linux/man-pages/man1/ls.1.html
https://man7.org/linux/man-pages/man1/cat.1.html
https://man7.org/linux/man-pages/man1/cd.1.html
README
ANALYST WORKSTATION — KAEL
Last active: 2026-03-28 02:47 UTC
Status: Abandoned
If you're reading this, you found my terminal.
I left in a hurry. Didn't have time to clean up.
Nothing in this shell is hidden. It's just here.
If you can't see it, you're not looking hard enough.
Don't leave traces.
— KAEL
在当前用户目录中进行探测,发现文件 夹~/workspace
notes.txt
OPERATIONAL NOTES — KAEL
========================
Target: internal network segment 10.4.x.x
Method: passive recon, no active scanning
Status: ongoing
Credentials filed separately in archive/.
Do not store passwords in plaintext notes.
并看到
ghost0@breachlab:~/workspace/archive$ ls -laih
total 24K
1426005 drwxr-x--- 1 ghost0 ghost0 4.0K Apr 20 11:50 .
1426004 drwxr-x--- 1 ghost0 ghost0 4.0K Apr 20 11:50 ..
1426007 -rw-r----- 1 ghost0 ghost0 15 Apr 20 11:50 credentials
ghost0@breachlab:~/workspace/archive$ cat credentials
**hidden**
01 Name Game
[ Level 1 → 2 ] Name Game
─────────────────────────────────────────────
KAEL was paranoid. He named his files
in ways that make the shell fight you.
Read the MANIFEST. Then figure out how.
Goal: Retrieve the password for ghost2
Connect: ssh ghost2@204.168.229.209 -p 2222
If you're stuck — read up on the topic, then come back:
https://man7.org/linux/man-pages/man1/cat.1.html
https://www.gnu.org/software/bash/manual/bash.html#Quoting
https://ss64.com/bash/syntax-quoting.html
注意到当前目录确实存在有很多畸形文件名的文件
ghost1@breachlab:~$ ls -laih
total 72K
1426028 -rw-r----- 1 ghost1 ghost1 13 Apr 20 11:50 -
1426031 -rw-r----- 1 ghost1 ghost1 13 Apr 20 11:50 --help
1430189 drwx------ 1 ghost1 ghost1 4.0K Apr 20 13:19 .
1430187 drwxr-xr-x 1 root root 4.0K Apr 20 11:50 ..
1426030 -rw-r----- 1 ghost1 ghost1 13 Apr 20 11:50 ...
1425709 -rw-r--r-- 1 ghost1 ghost1 220 Jan 6 2022 .bash_logout
1425710 -rw-r--r-- 1 ghost1 ghost1 3.7K Jan 6 2022 .bashrc
1417505 drwx------ 2 ghost1 ghost1 4.0K Apr 20 13:19 .cache
1425704 -rw-r--r-- 1 ghost1 ghost1 807 Jan 6 2022 .profile
1426032 -rw-r----- 1 ghost1 ghost1 228 Apr 17 09:30 MANIFEST
1426029 -rw-r----- 1 ghost1 ghost1 15 Apr 20 11:50 'file name'
尝试读取这些文件的内容
ghost1@breachlab:~$ cat ./-
a1e7c9d4f2b8
ghost1@breachlab:~$ cat ./--help
9c02b47fa6d1
ghost1@breachlab:~$ cat ./...
e3fa20b81f4c
ghost1@breachlab:~$ cat MANIFEST
NOTES — KAEL
────────────
I named my files to watch careless analysts
give up before they even read them.
Most people who poke around this directory
will quit before they open the first one.
— KAEL
ghost1@breachlab:~$ cat file\ name
**hidden**