scary ghost

🐧

Intro to Programming Languages

15 / 234 9024 / 30970


Commands

Time of First Successful Submission: 2026-02-14 15:41:19

Command Arguments

Time of First Successful Submission: 2026-02-14 15:55:13

Command History

Time of First Successful Submission: 2026-02-15 00:46:33

The Root Path

Time of First Successful Submission: 2026-02-15 01:02:54

Absolute Paths

Time of First Successful Submission: 2026-02-15 01:03:30

Changing position

Time of First Successful Submission: 2026-02-15 01:25:20

Changing to an Absolute Path

Time of First Successful Submission: 2026-02-15 01:49:46

Relative Paths

Time of First Successful Submission: 2026-02-15 02:32:42

Cat

Time of First Successful Submission: 2026-02-15 03:23:11

Ls

Time of First Successful Submission: 2026-02-15 04:20:51

Ls All

Time of First Successful Submission: 2026-02-15 04:50:44

Find

Time of First Successful Submission: 2026-02-15 05:15:18

Piping Echo

Time of First Successful Submission: 2026-03-08 02:01:01

Piping Stdout

Time of First Successful Submission: 2026-03-08 02:03:25

Piping Stdin

Time of First Successful Submission: 2026-03-08 02:54:28


Start Here

12 / 12 1258 / 41985


Using the Terminal

Time of First Successful Submission: 2026-02-14 02:17:59

Using the VSCode Workspace

Time of First Successful Submission: 2026-02-14 02:19:47

Using the GUI Desktop

Time of First Successful Submission: 2026-02-14 02:28:23

Pasting into the Desktop

Time of First Successful Submission: 2026-02-14 02:32:43

Restarting Challenges

Time of First Successful Submission: 2026-02-14 03:43:06

Challenge Programs

Time of First Successful Submission: 2026-02-14 04:46:47

The Flag File

Time of First Successful Submission: 2026-02-14 04:49:35

Using Privileged Mode

Time of First Successful Submission: 2026-02-14 15:12:56

Persistent Home Directories - One

Time of First Successful Submission: 2026-02-15 02:56:29

Persistent Home Directories - Two

Time of First Successful Submission: 2026-02-15 02:57:26


Linux Luminarium

126 / 128 3493 / 31362


Intro to Commands

Time of First Successful Submission: 2026-02-14 15:41:19

Intro to Arguments

Time of First Successful Submission: 2026-02-14 15:55:13

Command History

Time of First Successful Submission: 2026-02-15 00:46:33

The Root

Time of First Successful Submission: 2026-02-15 01:02:54

Program and absolute paths

Time of First Successful Submission: 2026-02-15 01:03:30

Position thy self

Time of First Successful Submission: 2026-02-15 01:25:20

Position elsewhere

Time of First Successful Submission: 2026-02-15 01:49:46

implicit relative paths, from /

Time of First Successful Submission: 2026-02-15 02:32:42

explicit relative paths, from /

Time of First Successful Submission: 2026-02-15 02:34:44

implicit relative path

Time of First Successful Submission: 2026-02-15 02:39:56

home sweet home

Time of First Successful Submission: 2026-02-15 02:51:13

cat: not the pet, but the command!

Time of First Successful Submission: 2026-02-15 03:23:11

catting absolute paths

Time of First Successful Submission: 2026-02-15 03:24:15

more catting practice

Time of First Successful Submission: 2026-02-15 04:03:07

grepping for a needle in a haystack

Time of First Successful Submission: 2026-02-15 04:07:37

comparing files

Time of First Successful Submission: 2026-02-15 04:09:09

listing files

Time of First Successful Submission: 2026-02-15 04:20:51

touching files

Time of First Successful Submission: 2026-02-15 04:22:25

removing files

Time of First Successful Submission: 2026-02-15 04:26:22

moving files

Time of First Successful Submission: 2026-02-15 04:42:29

copying files

Time of First Successful Submission: 2026-02-15 04:43:40

hidden files

Time of First Successful Submission: 2026-02-15 04:50:44

An Epic Filesystem Quest

Time of First Successful Submission: 2026-02-15 05:04:15

making directories

Time of First Successful Submission: 2026-02-15 05:06:39

finding files

Time of First Successful Submission: 2026-02-15 05:15:18

linking files

Time of First Successful Submission: 2026-02-15 05:25:16

Learning From Documentation

Time of First Successful Submission: 2026-02-15 05:53:48

Learning Complex Usage

Time of First Successful Submission: 2026-02-15 05:57:09

Reading Manuals

Time of First Successful Submission: 2026-02-15 06:10:42

Searching Manuals

Time of First Successful Submission: 2026-02-15 06:16:25

Searching For Manuals

Time of First Successful Submission: 2026-02-15 06:25:39

Helpful Programs

Time of First Successful Submission: 2026-02-15 06:31:24

Help for Builtins

Time of First Successful Submission: 2026-02-15 06:36:51

Matching with *

Time of First Successful Submission: 2026-02-15 19:45:45

Matching with ?

Time of First Successful Submission: 2026-02-15 20:10:03

Matching with []

Time of First Successful Submission: 2026-02-15 20:33:28

Matching paths with []

Time of First Successful Submission: 2026-03-01 19:36:20

Multiple globs

Time of First Successful Submission: 2026-03-01 19:40:23

Mixing globs

Time of First Successful Submission: 2026-03-01 20:31:49

Exclusionary globbing

Time of First Successful Submission: 2026-03-07 21:23:26

Tab completion

Time of First Successful Submission: 2026-03-08 01:47:00

Multiple options for tab completion

Time of First Successful Submission: 2026-03-08 01:48:48

Tab completion on commands

Time of First Successful Submission: 2026-03-08 01:49:27

Redirecting output

Time of First Successful Submission: 2026-03-08 02:01:01

Redirecting more output

Time of First Successful Submission: 2026-03-08 02:03:25

Appending output

Time of First Successful Submission: 2026-03-08 02:05:42

Redirecting errors

Time of First Successful Submission: 2026-03-08 02:49:05

Redirecting input

Time of First Successful Submission: 2026-03-08 02:54:28

Grepping stored results

Time of First Successful Submission: 2026-03-08 02:56:02

Grepping live output

Time of First Successful Submission: 2026-03-08 02:56:54

Grepping errors

Time of First Successful Submission: 2026-03-08 02:57:57

Filtering with grep -v

Time of First Successful Submission: 2026-03-08 02:58:58

Filtering with sed

Time of First Successful Submission: 2026-03-08 03:00:12

Duplicating piped data with tee

Time of First Successful Submission: 2026-03-08 03:02:32

Process substitution for input

Time of First Successful Submission: 2026-03-08 03:04:44

Writing to multiple programs

Time of First Successful Submission: 2026-03-08 03:26:42

Split-piping stderr and stdout

Time of First Successful Submission: 2026-03-08 03:34:20

Named pipes

Time of First Successful Submission: 2026-03-08 03:41:21

Printing Variables

Time of First Successful Submission: 2026-03-08 03:43:36

Setting Variables

Time of First Successful Submission: 2026-03-08 03:49:27

Multi-word Variables

Time of First Successful Submission: 2026-03-08 03:51:17

Exporting Variables

Time of First Successful Submission: 2026-03-08 03:52:46

Printing Exported Variables

Time of First Successful Submission: 2026-03-08 03:53:55

Storing Command Output

Time of First Successful Submission: 2026-03-08 03:55:49

Reading Input

Time of First Successful Submission: 2026-03-08 04:00:10

Reading Files

Time of First Successful Submission: 2026-03-08 04:01:56

Translating characters

Time of First Successful Submission: 2026-03-08 04:06:00

Deleting characters

Time of First Successful Submission: 2026-03-08 04:11:20

Deleting newlines

Time of First Successful Submission: 2026-03-08 04:13:17

Extracting the first lines with head

Time of First Successful Submission: 2026-03-08 04:14:02

Extracting specific sections of text

Time of First Successful Submission: 2026-03-08 04:15:30

Sorting data

Time of First Successful Submission: 2026-03-08 04:16:23

Listing Processes

Time of First Successful Submission: 2026-03-08 04:29:49

Killing Processes

Time of First Successful Submission: 2026-03-08 04:32:20

Interrupting Processes

Time of First Successful Submission: 2026-03-08 04:33:04

Killing Misbehaving Processes

Time of First Successful Submission: 2026-03-08 04:36:21

Suspending Processes

Time of First Successful Submission: 2026-03-08 04:37:40

Resuming Processes

Time of First Successful Submission: 2026-03-08 04:38:29

Backgrounding Processes

Time of First Successful Submission: 2026-03-08 04:40:03

Foregrounding Processes

Time of First Successful Submission: 2026-03-08 04:40:56

Starting Backgrounded Processes

Time of First Successful Submission: 2026-03-08 04:41:35

Process Exit Codes

Time of First Successful Submission: 2026-03-08 04:43:40

Becoming root with su

Time of First Successful Submission: 2026-03-08 04:50:00

Other users with su

Time of First Successful Submission: 2026-03-08 04:51:36

Cracking passwords

Time of First Successful Submission: 2026-03-08 05:04:51

Using sudo

Time of First Successful Submission: 2026-03-08 05:08:14

Changing File Ownership

Time of First Successful Submission: 2026-03-08 15:52:09

Groups and Files

Time of First Successful Submission: 2026-03-08 15:55:52

Fun With Groups Names

Time of First Successful Submission: 2026-03-08 16:01:50

Changing Permissions

Time of First Successful Submission: 2026-03-08 16:06:58

Executable Files

Time of First Successful Submission: 2026-03-08 16:40:35

Permission Tweaking Practice

Time of First Successful Submission: 2026-03-08 16:59:43

Permissions Setting Practice

Time of First Successful Submission: 2026-03-08 17:05:58

The SUID Bit

Time of First Successful Submission: 2026-03-08 17:07:23

Chaining with Semicolons

Time of First Successful Submission: 2026-03-08 17:58:02

Building on Success

Time of First Successful Submission: 2026-03-08 17:59:39

Handling Failure

Time of First Successful Submission: 2026-03-08 18:00:40

Your First Shell Script

Time of First Successful Submission: 2026-03-08 18:04:39

Redirecting Script Output

Time of First Successful Submission: 2026-03-14 15:29:13

Executable Shell Scripts

Time of First Successful Submission: 2026-03-14 15:29:59

Understanding Shebangs

Time of First Successful Submission: 2026-03-14 15:31:49

Scripting with Arguments

Time of First Successful Submission: 2026-03-14 15:32:53

Scripting with Conditionals

Time of First Successful Submission: 2026-03-14 15:36:25

Scripting with Default Cases

Time of First Successful Submission: 2026-03-14 15:37:12

Scripting with Multiple Conditions

Time of First Successful Submission: 2026-03-14 15:38:44

Reading Shell Scripts

Time of First Successful Submission: 2026-03-14 15:40:40

Launching Screen

Time of First Successful Submission: 2026-03-14 16:16:23

Detaching and Attaching

Time of First Successful Submission: 2026-03-14 16:19:19

Finding Sessions

Time of First Successful Submission: 2026-03-14 16:21:39

Switching Windows

Time of First Successful Submission: 2026-03-14 16:56:48

Detaching and Attaching (tmux)

Time of First Successful Submission: 2026-03-14 16:59:44

Switching Windows (tmux)

Time of First Successful Submission: 2026-03-14 17:41:35

The PATH Variable

Time of First Successful Submission: 2026-03-14 18:10:43

Setting PATH

Time of First Successful Submission: 2026-03-14 18:24:55

Finding Commands

Time of First Successful Submission: 2026-03-14 18:26:47

Adding Commands

Time of First Successful Submission: 2026-03-14 18:44:22

Hijacking Commands

Time of First Successful Submission: 2026-03-14 18:45:25

Bashrc Backdoor

Time of First Successful Submission: 2026-03-14 18:53:19

Sniffing Input

Time of First Successful Submission: 2026-03-14 19:41:44

Overshared Directories

Time of First Successful Submission: 2026-03-14 19:45:42

Tricky Linking

Time of First Successful Submission: 2026-03-14 19:47:23

Sniffing Process Arguments

Time of First Successful Submission: 2026-03-14 19:48:47

Snooping on Configurations

Time of First Successful Submission: 2026-03-14 19:50:33

The Fork Bomb

Time of First Successful Submission: 2026-03-14 23:22:53

Disk-Space Doomsday

Time of First Successful Submission: 2026-03-14 21:45:58

rm -rf /

Time of First Successful Submission: 2026-03-14 22:01:08

Life after rm -rf /

Time of First Successful Submission: 2026-03-14 22:20:53

Finding meaning after rm -rf /

Time of First Successful Submission: 2026-03-14 22:29:44


Computing 101

30 / 94 11923 / 21064


Your First Register

Time of First Successful Submission: 2026-03-15 00:15:48

Your First Syscall

Time of First Successful Submission: 2026-03-15 00:22:52

Exit Codes

Time of First Successful Submission: 2026-03-15 00:24:26

Building Executables

Time of First Successful Submission: 2026-03-15 00:26:31

Moving Between Registers

Time of First Successful Submission: 2026-03-15 00:34:27

Loading From Memory

Time of First Successful Submission: 2026-03-15 00:40:43

More Loading Practice

Time of First Successful Submission: 2026-03-15 00:41:45

Dereferencing Pointers

Time of First Successful Submission: 2026-03-15 00:42:35

Dereferencing Yourself

Time of First Successful Submission: 2026-03-15 00:43:22

Dereferencing with Offsets

Time of First Successful Submission: 2026-03-15 00:44:11

Stored Addresses

Time of First Successful Submission: 2026-03-15 00:45:09

Double Dereference

Time of First Successful Submission: 2026-03-15 00:45:58

The Stack

Time of First Successful Submission: 2026-03-15 01:21:20

Stack Offsets

Time of First Successful Submission: 2026-03-15 01:22:11

Program Arguments on the Stack

Time of First Successful Submission: 2026-03-15 01:24:12

Popping From the Stack

Time of First Successful Submission: 2026-03-15 01:28:27

Disassembling Programs

Time of First Successful Submission: 2026-03-15 03:04:01

Tracing Syscalls

Time of First Successful Submission: 2026-03-15 03:05:30

Starting GDB

Time of First Successful Submission: 2026-03-15 03:06:59

Quitting GDB

Time of First Successful Submission: 2026-03-15 03:07:29

Starting Programs in GDB

Time of First Successful Submission: 2026-03-15 03:10:49

Disassembling in GDB

Time of First Successful Submission: 2026-03-15 03:12:23

Stepping Through Instructions

Time of First Successful Submission: 2026-03-15 03:15:37

Reading Register Values

Time of First Successful Submission: 2026-03-15 03:22:01

Popping Stack Values

Time of First Successful Submission: 2026-03-15 03:26:43

Examining Memory

Time of First Successful Submission: 2026-03-15 03:28:13

Examining Stack Pointers

Time of First Successful Submission: 2026-03-15 03:29:44

Cooperative Debugging

Time of First Successful Submission: 2026-03-15 03:30:50

Writing Output

Time of First Successful Submission: 2026-03-15 03:43:20

Chaining Syscalls

Time of First Successful Submission: 2026-03-15 03:45:09


GCA CTF

12 / 104 1480 / 42262


Using the Terminal

Time of First Successful Submission: 2026-02-14 02:17:59

Using the VSCode Workspace

Time of First Successful Submission: 2026-02-14 02:19:47

Using the GUI Desktop

Time of First Successful Submission: 2026-02-14 02:28:23

Pasting into the Desktop

Time of First Successful Submission: 2026-02-14 02:32:43

Connecting over SSH

Time of First Successful Submission: 2026-02-14 02:34:59

Restarting Challenges

Time of First Successful Submission: 2026-02-14 03:43:06

Getting Help

Time of First Successful Submission: 2026-02-14 04:14:36

Challenge Programs

Time of First Successful Submission: 2026-02-14 04:46:47

The Flag File

Time of First Successful Submission: 2026-02-14 04:49:35

Using Privileged Mode

Time of First Successful Submission: 2026-02-14 15:12:56

Persistent Home Directories - One

Time of First Successful Submission: 2026-02-15 02:56:29

Persistent Home Directories - Two

Time of First Successful Submission: 2026-02-15 02:57:26