BalloonDog

🐧

Intro to Programming Languages

15 / 234 9574 / 33082


Commands

Time of First Successful Submission: 2026-03-31 20:45:26

Command Arguments

Time of First Successful Submission: 2026-03-31 20:45:55

Command History

Time of First Successful Submission: 2026-03-31 20:46:20

The Root Path

Time of First Successful Submission: 2026-03-31 20:47:13

Absolute Paths

Time of First Successful Submission: 2026-03-31 20:47:45

Changing position

Time of First Successful Submission: 2026-03-31 20:48:29

Changing to an Absolute Path

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

Relative Paths

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

Cat

Time of First Successful Submission: 2026-03-31 20:53:12

Ls

Time of First Successful Submission: 2026-03-31 20:57:40

Ls All

Time of First Successful Submission: 2026-03-31 21:00:13

Find

Time of First Successful Submission: 2026-03-31 21:07:01

Piping Echo

Time of First Successful Submission: 2026-04-01 03:39:07

Piping Stdout

Time of First Successful Submission: 2026-04-01 03:39:41

Piping Stdin

Time of First Successful Submission: 2026-04-01 03:42:44


Intro to Cybersecurity

1 / 183 20431 / 20510


XOR

Time of First Successful Submission: 2026-04-07 16:57:28


Program Security

1 / 162 9748 / 9766


Terrible Token (Easy)

Time of First Successful Submission: 2026-04-17 08:08:07


Start Here

10 / 12 20354 / 44760


Using the Terminal

Time of First Successful Submission: 2026-03-31 20:07:41

Using the VSCode Workspace

Time of First Successful Submission: 2026-03-31 20:28:33

Using the GUI Desktop

Time of First Successful Submission: 2026-03-31 20:29:17

Pasting into the Desktop

Time of First Successful Submission: 2026-03-31 20:30:17

Restarting Challenges

Time of First Successful Submission: 2026-03-31 20:31:30

Challenge Programs

Time of First Successful Submission: 2026-03-31 20:32:07

The Flag File

Time of First Successful Submission: 2026-03-31 20:32:40

Using Privileged Mode

Time of First Successful Submission: 2026-03-31 20:35:09

Persistent Home Directories - One

Time of First Successful Submission: 2026-03-31 20:38:59

Persistent Home Directories - Two

Time of First Successful Submission: 2026-03-31 20:39:34


Linux Luminarium

128 / 128 2711 / 33513


Intro to Commands

Time of First Successful Submission: 2026-03-31 20:45:26

Intro to Arguments

Time of First Successful Submission: 2026-03-31 20:45:55

Command History

Time of First Successful Submission: 2026-03-31 20:46:20

The Root

Time of First Successful Submission: 2026-03-31 20:47:13

Program and absolute paths

Time of First Successful Submission: 2026-03-31 20:47:45

Position thy self

Time of First Successful Submission: 2026-03-31 20:48:29

Position elsewhere

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

implicit relative paths, from /

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

explicit relative paths, from /

Time of First Successful Submission: 2026-03-31 20:50:15

implicit relative path

Time of First Successful Submission: 2026-03-31 20:50:40

home sweet home

Time of First Successful Submission: 2026-03-31 20:51:24

cat: not the pet, but the command!

Time of First Successful Submission: 2026-03-31 20:53:12

catting absolute paths

Time of First Successful Submission: 2026-03-31 20:53:41

more catting practice

Time of First Successful Submission: 2026-03-31 20:55:50

grepping for a needle in a haystack

Time of First Successful Submission: 2026-03-31 20:56:27

comparing files

Time of First Successful Submission: 2026-03-31 20:57:14

listing files

Time of First Successful Submission: 2026-03-31 20:57:40

touching files

Time of First Successful Submission: 2026-03-31 20:58:10

removing files

Time of First Successful Submission: 2026-03-31 20:58:39

moving files

Time of First Successful Submission: 2026-03-31 20:59:13

copying files

Time of First Successful Submission: 2026-03-31 20:59:42

hidden files

Time of First Successful Submission: 2026-03-31 21:00:13

An Epic Filesystem Quest

Time of First Successful Submission: 2026-03-31 21:03:15

making directories

Time of First Successful Submission: 2026-03-31 21:04:11

finding files

Time of First Successful Submission: 2026-03-31 21:07:01

linking files

Time of First Successful Submission: 2026-03-31 21:13:29

Learning From Documentation

Time of First Successful Submission: 2026-03-31 21:14:13

Learning Complex Usage

Time of First Successful Submission: 2026-03-31 21:15:04

Reading Manuals

Time of First Successful Submission: 2026-03-31 21:17:57

Searching Manuals

Time of First Successful Submission: 2026-03-31 21:22:41

Searching For Manuals

Time of First Successful Submission: 2026-03-31 21:24:42

Helpful Programs

Time of First Successful Submission: 2026-03-31 21:25:24

Help for Builtins

Time of First Successful Submission: 2026-03-31 21:27:21

Matching with *

Time of First Successful Submission: 2026-03-31 21:28:12

Matching with ?

Time of First Successful Submission: 2026-03-31 21:28:46

Matching with []

Time of First Successful Submission: 2026-03-31 21:30:06

Matching paths with []

Time of First Successful Submission: 2026-03-31 21:31:19

Multiple globs

Time of First Successful Submission: 2026-03-31 21:32:04

Mixing globs

Time of First Successful Submission: 2026-03-31 21:58:25

Exclusionary globbing

Time of First Successful Submission: 2026-03-31 22:00:17

Tab completion

Time of First Successful Submission: 2026-03-31 22:01:04

Multiple options for tab completion

Time of First Successful Submission: 2026-03-31 22:31:41

Tab completion on commands

Time of First Successful Submission: 2026-03-31 22:35:14

Redirecting output

Time of First Successful Submission: 2026-04-01 03:39:07

Redirecting more output

Time of First Successful Submission: 2026-04-01 03:39:41

Appending output

Time of First Successful Submission: 2026-04-01 03:40:39

Redirecting errors

Time of First Successful Submission: 2026-04-01 03:41:59

Redirecting input

Time of First Successful Submission: 2026-04-01 03:42:44

Grepping stored results

Time of First Successful Submission: 2026-04-01 03:43:55

Grepping live output

Time of First Successful Submission: 2026-04-01 03:44:49

Grepping errors

Time of First Successful Submission: 2026-04-01 03:45:48

Filtering with grep -v

Time of First Successful Submission: 2026-04-01 03:47:36

Filtering with sed

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

Duplicating piped data with tee

Time of First Successful Submission: 2026-04-01 19:34:05

Process substitution for input

Time of First Successful Submission: 2026-04-01 20:23:33

Writing to multiple programs

Time of First Successful Submission: 2026-04-02 00:17:19

Split-piping stderr and stdout

Time of First Successful Submission: 2026-04-02 05:07:39

Named pipes

Time of First Successful Submission: 2026-04-02 05:54:28

Printing Variables

Time of First Successful Submission: 2026-04-02 05:55:36

Setting Variables

Time of First Successful Submission: 2026-04-02 05:56:28

Multi-word Variables

Time of First Successful Submission: 2026-04-02 06:00:00

Exporting Variables

Time of First Successful Submission: 2026-04-02 05:59:22

Printing Exported Variables

Time of First Successful Submission: 2026-04-02 06:01:02

Storing Command Output

Time of First Successful Submission: 2026-04-02 06:01:53

Reading Input

Time of First Successful Submission: 2026-04-02 06:02:49

Reading Files

Time of First Successful Submission: 2026-04-02 06:03:47

Translating characters

Time of First Successful Submission: 2026-04-02 06:36:38

Deleting characters

Time of First Successful Submission: 2026-04-02 06:37:14

Deleting newlines

Time of First Successful Submission: 2026-04-02 06:37:52

Extracting the first lines with head

Time of First Successful Submission: 2026-04-02 06:38:39

Extracting specific sections of text

Time of First Successful Submission: 2026-04-02 06:41:49

Sorting data

Time of First Successful Submission: 2026-04-02 06:42:52

Listing Processes

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

Killing Processes

Time of First Successful Submission: 2026-04-02 09:05:08

Interrupting Processes

Time of First Successful Submission: 2026-04-02 09:05:43

Killing Misbehaving Processes

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

Suspending Processes

Time of First Successful Submission: 2026-04-02 09:13:52

Resuming Processes

Time of First Successful Submission: 2026-04-02 09:14:31

Backgrounding Processes

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

Foregrounding Processes

Time of First Successful Submission: 2026-04-02 09:16:33

Starting Backgrounded Processes

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

Process Exit Codes

Time of First Successful Submission: 2026-04-02 09:18:47

Becoming root with su

Time of First Successful Submission: 2026-04-02 18:21:47

Other users with su

Time of First Successful Submission: 2026-04-02 18:22:30

Cracking passwords

Time of First Successful Submission: 2026-04-02 18:30:46

Using sudo

Time of First Successful Submission: 2026-04-02 18:37:36

Changing File Ownership

Time of First Successful Submission: 2026-04-02 20:08:17

Groups and Files

Time of First Successful Submission: 2026-04-02 20:11:18

Fun With Groups Names

Time of First Successful Submission: 2026-04-02 20:12:24

Changing Permissions

Time of First Successful Submission: 2026-04-02 20:17:13

Executable Files

Time of First Successful Submission: 2026-04-02 20:17:52

Permission Tweaking Practice

Time of First Successful Submission: 2026-04-02 23:46:19

Permissions Setting Practice

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

The SUID Bit

Time of First Successful Submission: 2026-04-03 01:14:48

Chaining with Semicolons

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

Building on Success

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

Handling Failure

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

Your First Shell Script

Time of First Successful Submission: 2026-04-03 01:18:23

Redirecting Script Output

Time of First Successful Submission: 2026-04-07 14:13:18

Executable Shell Scripts

Time of First Successful Submission: 2026-04-05 20:31:19

Understanding Shebangs

Time of First Successful Submission: 2026-04-05 20:34:05

Scripting with Arguments

Time of First Successful Submission: 2026-04-05 20:35:42

Scripting with Conditionals

Time of First Successful Submission: 2026-04-05 20:37:34

Scripting with Default Cases

Time of First Successful Submission: 2026-04-05 20:38:51

Scripting with Multiple Conditions

Time of First Successful Submission: 2026-04-05 20:41:31

Reading Shell Scripts

Time of First Successful Submission: 2026-04-05 20:43:56

Launching Screen

Time of First Successful Submission: 2026-04-05 20:44:49

Detaching and Attaching

Time of First Successful Submission: 2026-04-05 20:45:48

Finding Sessions

Time of First Successful Submission: 2026-04-07 06:52:27

Switching Windows

Time of First Successful Submission: 2026-04-07 06:53:29

Detaching and Attaching (tmux)

Time of First Successful Submission: 2026-04-07 06:54:45

Switching Windows (tmux)

Time of First Successful Submission: 2026-04-07 06:56:47

The PATH Variable

Time of First Successful Submission: 2026-04-07 05:39:30

Setting PATH

Time of First Successful Submission: 2026-04-07 05:40:34

Finding Commands

Time of First Successful Submission: 2026-04-07 05:41:33

Adding Commands

Time of First Successful Submission: 2026-04-07 05:47:57

Hijacking Commands

Time of First Successful Submission: 2026-04-07 05:54:55

Bashrc Backdoor

Time of First Successful Submission: 2026-04-07 05:57:32

Sniffing Input

Time of First Successful Submission: 2026-04-07 06:03:41

Overshared Directories

Time of First Successful Submission: 2026-04-07 06:09:42

Tricky Linking

Time of First Successful Submission: 2026-04-07 06:17:23

Sniffing Process Arguments

Time of First Successful Submission: 2026-04-07 06:22:00

Snooping on Configurations

Time of First Successful Submission: 2026-04-07 06:26:11

The Fork Bomb

Time of First Successful Submission: 2026-04-07 06:36:36

Disk-Space Doomsday

Time of First Successful Submission: 2026-04-07 06:38:19

rm -rf /

Time of First Successful Submission: 2026-04-07 06:39:47

Life after rm -rf /

Time of First Successful Submission: 2026-04-07 06:46:11

Finding meaning after rm -rf /

Time of First Successful Submission: 2026-04-07 06:47:23


Computing 101

33 / 94 11250 / 22127


Your First Register

Time of First Successful Submission: 2026-04-05 21:42:30

Your First Syscall

Time of First Successful Submission: 2026-04-05 21:45:34

Exit Codes

Time of First Successful Submission: 2026-04-05 21:47:25

Building Executables

Time of First Successful Submission: 2026-04-05 21:52:53

Moving Between Registers

Time of First Successful Submission: 2026-04-05 21:56:23

Loading From Memory

Time of First Successful Submission: 2026-04-05 22:01:14

More Loading Practice

Time of First Successful Submission: 2026-04-07 05:23:01

Dereferencing Pointers

Time of First Successful Submission: 2026-04-07 05:25:13

Dereferencing Yourself

Time of First Successful Submission: 2026-04-07 05:26:55

Dereferencing with Offsets

Time of First Successful Submission: 2026-04-07 05:29:12

Stored Addresses

Time of First Successful Submission: 2026-04-07 05:30:33

Double Dereference

Time of First Successful Submission: 2026-04-07 05:37:59

The Stack

Time of First Successful Submission: 2026-04-07 14:20:22

Stack Offsets

Time of First Successful Submission: 2026-04-07 14:21:05

Program Arguments on the Stack

Time of First Successful Submission: 2026-04-07 14:22:40

Popping From the Stack

Time of First Successful Submission: 2026-04-07 14:24:53

Disassembling Programs

Time of First Successful Submission: 2026-04-07 14:29:02

Tracing Syscalls

Time of First Successful Submission: 2026-04-07 14:31:16

Starting GDB

Time of First Successful Submission: 2026-04-07 14:32:55

Quitting GDB

Time of First Successful Submission: 2026-04-07 14:33:32

Starting Programs in GDB

Time of First Successful Submission: 2026-04-07 14:35:08

Disassembling in GDB

Time of First Successful Submission: 2026-04-07 14:35:56

Stepping Through Instructions

Time of First Successful Submission: 2026-04-07 14:36:50

Reading Register Values

Time of First Successful Submission: 2026-04-07 14:37:38

Popping Stack Values

Time of First Successful Submission: 2026-04-07 14:38:52

Examining Memory

Time of First Successful Submission: 2026-04-07 14:40:18

Examining Stack Pointers

Time of First Successful Submission: 2026-04-07 14:46:30

Cooperative Debugging

Time of First Successful Submission: 2026-04-07 22:32:53

Writing Output

Time of First Successful Submission: 2026-04-07 15:56:31

Chaining Syscalls

Time of First Successful Submission: 2026-04-07 15:57:26

Writing Strings

Time of First Successful Submission: 2026-04-07 15:58:10

Reading Data

Time of First Successful Submission: 2026-04-07 16:11:40

Opening Files

Time of First Successful Submission: 2026-04-07 16:16:11


GCA CTF

10 / 104 20483 / 45041


Using the Terminal

Time of First Successful Submission: 2026-03-31 20:07:41

Using the VSCode Workspace

Time of First Successful Submission: 2026-03-31 20:28:33

Using the GUI Desktop

Time of First Successful Submission: 2026-03-31 20:29:17

Pasting into the Desktop

Time of First Successful Submission: 2026-03-31 20:30:17

Restarting Challenges

Time of First Successful Submission: 2026-03-31 20:31:30

Challenge Programs

Time of First Successful Submission: 2026-03-31 20:32:07

The Flag File

Time of First Successful Submission: 2026-03-31 20:32:40

Using Privileged Mode

Time of First Successful Submission: 2026-03-31 20:35:09

Persistent Home Directories - One

Time of First Successful Submission: 2026-03-31 20:38:59

Persistent Home Directories - Two

Time of First Successful Submission: 2026-03-31 20:39:34